From b4ed79dc3894ff4e749779aa1d28fd6c99420e6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Brey?= Date: Fri, 22 Jul 2022 15:47:26 +0200 Subject: [PATCH] Theme EntryMenuController MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Brey --- .../bottomsheet/EntryMenuController.kt | 23 +++++++++++-------- .../nextcloud/talk/ui/theme/ViewThemeUtils.kt | 8 +++++++ .../main/res/layout/controller_entry_menu.xml | 2 +- 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.kt b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.kt index 801ea39ac..b592b2a54 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.kt @@ -25,7 +25,7 @@ package com.nextcloud.talk.controllers.bottomsheet import android.content.ComponentName import android.content.Intent -import android.graphics.PorterDuff +import android.content.res.ColorStateList import android.os.Bundle import android.os.Parcelable import android.text.Editable @@ -34,6 +34,7 @@ import android.text.TextUtils import android.text.TextWatcher import android.view.View import android.view.inputmethod.EditorInfo +import androidx.core.content.res.ResourcesCompat import autodagger.AutoInjector import com.bluelinelabs.conductor.RouterTransaction import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler @@ -45,6 +46,7 @@ import com.nextcloud.talk.controllers.base.NewBaseController import com.nextcloud.talk.controllers.util.viewBinding import com.nextcloud.talk.databinding.ControllerEntryMenuBinding import com.nextcloud.talk.models.json.conversations.Conversation +import com.nextcloud.talk.ui.theme.ViewThemeUtils import com.nextcloud.talk.users.UserManager import com.nextcloud.talk.utils.ShareUtils import com.nextcloud.talk.utils.UriUtils @@ -71,6 +73,9 @@ class EntryMenuController(args: Bundle) : @Inject lateinit var userManager: UserManager + @Inject + lateinit var viewThemeUtils: ViewThemeUtils + private val operation: ConversationOperationEnum private var conversation: Conversation? = null private var shareIntent: Intent? = null @@ -125,17 +130,11 @@ class EntryMenuController(args: Bundle) : rootView = view, editText = binding.textEdit, onEmojiPopupShownListener = { - if (resources != null) { - binding.smileyButton.setColorFilter( - resources!!.getColor(R.color.colorPrimary), - PorterDuff.Mode.SRC_IN - ) - } + viewThemeUtils.colorImageView(binding.smileyButton) }, onEmojiPopupDismissListener = { - binding.smileyButton.setColorFilter( - resources!!.getColor(R.color.emoji_icons), - PorterDuff.Mode.SRC_IN + binding.smileyButton.imageTintList = ColorStateList.valueOf( + ResourcesCompat.getColor(resources!!, R.color.medium_emphasis_text, context.theme) ) }, onEmojiClickListener = { @@ -171,6 +170,10 @@ class EntryMenuController(args: Bundle) : binding.textInputLayout.endIconMode = TextInputLayout.END_ICON_NONE } + viewThemeUtils.colorTextInputLayout(binding.textInputLayout) + binding.textEdit.setTextColor(viewThemeUtils.theme.colorText) + viewThemeUtils.colorMaterialButtonText(binding.okButton) + binding.textInputLayout.hint = labelText binding.textInputLayout.requestFocus() diff --git a/app/src/main/java/com/nextcloud/talk/ui/theme/ViewThemeUtils.kt b/app/src/main/java/com/nextcloud/talk/ui/theme/ViewThemeUtils.kt index eaf5496ab..916b1b981 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/theme/ViewThemeUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/theme/ViewThemeUtils.kt @@ -37,6 +37,7 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import com.google.android.material.button.MaterialButton import com.google.android.material.card.MaterialCardView import com.google.android.material.floatingactionbutton.FloatingActionButton +import com.google.android.material.textfield.TextInputLayout import com.nextcloud.talk.R import com.yarolegovich.mp.MaterialPreferenceCategory import com.yarolegovich.mp.MaterialSwitchPreference @@ -189,4 +190,11 @@ class ViewThemeUtils @Inject constructor(val theme: ServerTheme) { swipeRefreshLayout.setProgressBackgroundColorSchemeResource(R.color.refresh_spinner_background) } } + + fun colorTextInputLayout(textInputLayout: TextInputLayout) { + withElementColor(textInputLayout) { color -> + textInputLayout.hintTextColor = ColorStateList.valueOf(color) + textInputLayout.boxStrokeColor = color + } + } } diff --git a/app/src/main/res/layout/controller_entry_menu.xml b/app/src/main/res/layout/controller_entry_menu.xml index 8bf6fc674..2f50f3d68 100644 --- a/app/src/main/res/layout/controller_entry_menu.xml +++ b/app/src/main/res/layout/controller_entry_menu.xml @@ -78,7 +78,7 @@ android:contentDescription="@string/nc_add_emojis" android:src="@drawable/ic_insert_emoticon_black_24dp" android:visibility="gone" - app:tint="@color/emoji_icons" + app:tint="@color/medium_emphasis_text" tools:visibility="visible" />