diff --git a/app/src/main/java/org/thoughtcrime/securesms/keyboard/KeyboardPagerFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/keyboard/KeyboardPagerFragment.kt index 126caf0387..3a03181a59 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/keyboard/KeyboardPagerFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/keyboard/KeyboardPagerFragment.kt @@ -1,5 +1,6 @@ package org.thoughtcrime.securesms.keyboard +import android.os.Build import android.os.Bundle import android.view.LayoutInflater import android.view.View @@ -11,9 +12,11 @@ import org.thoughtcrime.securesms.components.emoji.MediaKeyboard import org.thoughtcrime.securesms.keyboard.emoji.EmojiKeyboardPageFragment import org.thoughtcrime.securesms.keyboard.gif.GifKeyboardPageFragment import org.thoughtcrime.securesms.keyboard.sticker.StickerKeyboardPageFragment +import org.thoughtcrime.securesms.util.ThemeUtil import org.thoughtcrime.securesms.util.ThemedFragment.themeResId import org.thoughtcrime.securesms.util.ThemedFragment.themedInflate import org.thoughtcrime.securesms.util.ThemedFragment.withTheme +import org.thoughtcrime.securesms.util.WindowUtil import org.thoughtcrime.securesms.util.fragments.findListener import org.thoughtcrime.securesms.util.visible import kotlin.reflect.KClass @@ -49,6 +52,20 @@ class KeyboardPagerFragment : Fragment() { emojiButton.setOnClickListener { viewModel.switchToPage(KeyboardPage.EMOJI) } stickerButton.setOnClickListener { viewModel.switchToPage(KeyboardPage.STICKER) } gifButton.setOnClickListener { viewModel.switchToPage(KeyboardPage.GIF) } + + onHiddenChanged(false) + } + + override fun onHiddenChanged(hidden: Boolean) { + if (Build.VERSION.SDK_INT < 21) { + return + } + + if (hidden) { + WindowUtil.setNavigationBarColor(requireActivity().window, ThemeUtil.getThemedColor(requireContext(), android.R.attr.navigationBarColor)) + } else { + WindowUtil.setNavigationBarColor(requireActivity().window, ThemeUtil.getThemedColor(requireContext(), R.attr.mediaKeyboardBottomBarBackgroundColor)) + } } @Suppress("DEPRECATION") @@ -103,12 +120,16 @@ class KeyboardPagerFragment : Fragment() { fun show() { if (isAdded && view != null) { + onHiddenChanged(false) + viewModel.page().value?.let(this::onPageSelected) } } fun hide() { if (isAdded && view != null) { + onHiddenChanged(true) + val transaction = childFragmentManager.beginTransaction() fragments.values.forEach { transaction.remove(it) } transaction.commitAllowingStateLoss() diff --git a/app/src/main/res/color/keyboard_pager_fragment_icon_tint.xml b/app/src/main/res/color/keyboard_pager_fragment_icon_tint.xml new file mode 100644 index 0000000000..cdf81fc963 --- /dev/null +++ b/app/src/main/res/color/keyboard_pager_fragment_icon_tint.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_emoji.xml b/app/src/main/res/drawable/ic_emoji.xml index 726a0969ee..74fd7be632 100644 --- a/app/src/main/res/drawable/ic_emoji.xml +++ b/app/src/main/res/drawable/ic_emoji.xml @@ -4,6 +4,6 @@ android:viewportWidth="24" android:viewportHeight="24"> diff --git a/app/src/main/res/drawable/ic_gif_24.xml b/app/src/main/res/drawable/ic_gif_24.xml index c3d59ca09d..d8b18a98b2 100644 --- a/app/src/main/res/drawable/ic_gif_24.xml +++ b/app/src/main/res/drawable/ic_gif_24.xml @@ -4,6 +4,6 @@ android:viewportWidth="24" android:viewportHeight="24"> diff --git a/app/src/main/res/drawable/ic_sticker_24.xml b/app/src/main/res/drawable/ic_sticker_24.xml index 101f5a1503..2871d7d6a1 100644 --- a/app/src/main/res/drawable/ic_sticker_24.xml +++ b/app/src/main/res/drawable/ic_sticker_24.xml @@ -4,6 +4,6 @@ android:viewportWidth="24" android:viewportHeight="24"> diff --git a/app/src/main/res/drawable/keyboard_bottom_bar_background.xml b/app/src/main/res/drawable/keyboard_bottom_bar_background.xml deleted file mode 100644 index b54cc2d406..0000000000 --- a/app/src/main/res/drawable/keyboard_bottom_bar_background.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/keyboard_pager_fragment_category_selected.xml b/app/src/main/res/drawable/keyboard_pager_fragment_category_selected.xml index bee692d1b5..e249081765 100644 --- a/app/src/main/res/drawable/keyboard_pager_fragment_category_selected.xml +++ b/app/src/main/res/drawable/keyboard_pager_fragment_category_selected.xml @@ -4,7 +4,7 @@ - + diff --git a/app/src/main/res/drawable/keyboard_pager_fragment_selected.xml b/app/src/main/res/drawable/keyboard_pager_fragment_selected.xml index 04915f0126..8601808680 100644 --- a/app/src/main/res/drawable/keyboard_pager_fragment_selected.xml +++ b/app/src/main/res/drawable/keyboard_pager_fragment_selected.xml @@ -2,7 +2,7 @@ - + diff --git a/app/src/main/res/layout/emoji_grid_header.xml b/app/src/main/res/layout/emoji_grid_header.xml index 464cccb738..6b9dccef98 100644 --- a/app/src/main/res/layout/emoji_grid_header.xml +++ b/app/src/main/res/layout/emoji_grid_header.xml @@ -8,6 +8,6 @@ android:gravity="center_vertical" android:minHeight="36dp" android:singleLine="true" - android:textAppearance="@style/TextAppearance.Signal.Body2.Bold" - android:textColor="@color/signal_text_hint" + android:textAppearance="@style/Signal.Text.LabelLarge" + android:textColor="@color/signal_colorOnSurfaceVariant" tools:text="@string/ReactWithAnyEmojiBottomSheetDialogFragment__activities" /> diff --git a/app/src/main/res/layout/gif_keyboard_page_fragment.xml b/app/src/main/res/layout/gif_keyboard_page_fragment.xml index 39abaee665..647074627e 100644 --- a/app/src/main/res/layout/gif_keyboard_page_fragment.xml +++ b/app/src/main/res/layout/gif_keyboard_page_fragment.xml @@ -4,12 +4,12 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:background="@color/signal_background_secondary"> + tools:background="?mediaKeyboardBackgroundColor"> diff --git a/app/src/main/res/layout/keyboard_pager_emoji_page_fragment.xml b/app/src/main/res/layout/keyboard_pager_emoji_page_fragment.xml index 0aaba9926c..d48e7513a3 100644 --- a/app/src/main/res/layout/keyboard_pager_emoji_page_fragment.xml +++ b/app/src/main/res/layout/keyboard_pager_emoji_page_fragment.xml @@ -45,7 +45,7 @@ android:layout_width="match_parent" android:layout_height="@dimen/keyboard_toolbar_height" android:layout_gravity="bottom" - android:background="?mediaKeyboardBackgroundColor" + android:background="?mediaKeyboardBottomBarBackgroundColor" android:gravity="center_vertical" android:orientation="horizontal" app:layout_behavior="@string/hide_bottom_view_on_scroll_behavior"> @@ -83,20 +83,4 @@ app:tint="@color/icon_tab_selector" /> - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/keyboard_pager_sticker_page_fragment.xml b/app/src/main/res/layout/keyboard_pager_sticker_page_fragment.xml index 09818f2061..e2dd641939 100644 --- a/app/src/main/res/layout/keyboard_pager_sticker_page_fragment.xml +++ b/app/src/main/res/layout/keyboard_pager_sticker_page_fragment.xml @@ -4,13 +4,13 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:background="@color/signal_background_secondary"> + tools:background="?mediaKeyboardBackgroundColor"> @@ -44,7 +44,7 @@ android:layout_width="match_parent" android:layout_height="@dimen/keyboard_toolbar_height" android:layout_gravity="bottom" - android:background="@color/signal_background_secondary" + android:background="?mediaKeyboardBottomBarBackgroundColor" android:gravity="center_vertical" android:orientation="horizontal" app:layout_behavior="@string/hide_bottom_view_on_scroll_behavior"> @@ -58,6 +58,7 @@ android:padding="11dp" android:scaleType="fitCenter" app:srcCompat="@drawable/ic_search_24" + app:backgroundTint="?mediaKeyboardBackgroundColor" app:tint="@color/icon_tab_selector" /> - - - - diff --git a/app/src/main/res/layout/sticker_grid_header.xml b/app/src/main/res/layout/sticker_grid_header.xml index 92668e4626..35f83831de 100644 --- a/app/src/main/res/layout/sticker_grid_header.xml +++ b/app/src/main/res/layout/sticker_grid_header.xml @@ -8,6 +8,6 @@ android:gravity="center_vertical" android:minHeight="36dp" android:singleLine="true" - android:textAppearance="@style/TextAppearance.Signal.Body2.Bold" - android:textColor="@color/signal_text_hint" + android:textAppearance="@style/Signal.Text.LabelLarge" + android:textColor="@color/signal_colorOnSurfaceVariant" tools:text="@string/ReactWithAnyEmojiBottomSheetDialogFragment__activities" /> diff --git a/app/src/main/res/values-night/dark_colors.xml b/app/src/main/res/values-night/dark_colors.xml index 26e3146a0f..be60149ad6 100644 --- a/app/src/main/res/values-night/dark_colors.xml +++ b/app/src/main/res/values-night/dark_colors.xml @@ -30,8 +30,8 @@ @color/core_grey_25 @color/signal_icon_tint_primary - @color/core_white - @color/core_grey_25 + @color/signal_colorOnSurface + @color/signal_colorOnSurfaceVariant @color/core_ultramarine_light @color/transparent_black_15 diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 626462f725..0bb46aee09 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -19,6 +19,7 @@ + diff --git a/app/src/main/res/values/light_colors.xml b/app/src/main/res/values/light_colors.xml index 04083d6dfe..79f5b94472 100644 --- a/app/src/main/res/values/light_colors.xml +++ b/app/src/main/res/values/light_colors.xml @@ -32,7 +32,7 @@ @color/core_black @color/signal_colorOnSurface - @color/core_grey_45 + @color/signal_colorOnSurfaceVariant @color/core_ultramarine @color/transparent_black_15 diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 2c4f3116f1..d24246524e 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -176,7 +176,8 @@ @style/Theme.Signal.Light.BottomSheetDialog @drawable/contact_selection_checkbox - @color/signal_background_secondary + @color/signal_colorSurface2 + @color/signal_colorSurface5 @style/TextSecure.LightActionBar @style/TextSecure.LightActionBar.TabBar @@ -281,7 +282,8 @@ @style/TextSecure.DarkActionBar.Settings @drawable/contact_selection_checkbox - @color/signal_background_secondary + @color/signal_colorSurface2 + @color/signal_colorSurface5 @color/signal_icon_tint_primary @@ -575,7 +577,8 @@