commit a049e80ec2ff19177932038796595fd097dc6ad8
parent 7331a2f87d1916c5cea5e9f4437a48fade7ae17a
Author: rmalicdem <rmalicdem@mozilla.com>
Date: Thu, 20 Nov 2025 02:47:19 +0000
Bug 1969082 - Align toolbar customization options visibility with simple/expanded toolbar r=android-reviewers,Roger
Differential Revision: https://phabricator.services.mozilla.com/D273087
Diffstat:
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt
@@ -4,6 +4,7 @@
package org.mozilla.fenix.settings
+import android.content.res.Configuration
import android.os.Build
import android.os.Build.VERSION.SDK_INT
import android.os.Bundle
@@ -65,7 +66,7 @@ class CustomizationFragment : PreferenceFragmentCompat() {
updateToolbarCategoryBasedOnTabStrip(tabletAndTabStripEnabled)
setupTabStripCategory()
setupToolbarLayout()
- updateToolbarShortcutBasedOnLayout()
+ updateToolbarShortcut()
// if tab strip is enabled, swipe toolbar to switch tabs should not be enabled so the
// preference is not shown
@@ -92,7 +93,7 @@ class CustomizationFragment : PreferenceFragmentCompat() {
}
}
- private fun updateToolbarShortcutBasedOnLayout() {
+ private fun updateToolbarShortcut() {
val simpleCategory = requirePreference<PreferenceCategory>(
R.string.pref_key_customization_category_toolbar_simple_shortcut,
)
@@ -100,22 +101,21 @@ class CustomizationFragment : PreferenceFragmentCompat() {
R.string.pref_key_customization_category_toolbar_expanded_shortcut,
)
val settings = requireContext().settings()
+ val isExpandedToolbarEnabled = settings.shouldUseExpandedToolbar && isTallWindow() && !isWideWindow()
simpleCategory.isVisible =
settings.shouldShowToolbarCustomization &&
Config.channel.isNightlyOrDebug &&
settings.shouldUseComposableToolbar &&
settings.toolbarRedesignEnabled &&
- isTallWindow() &&
- !settings.shouldUseExpandedToolbar
+ !isExpandedToolbarEnabled
expandedCategory.isVisible =
settings.shouldShowToolbarCustomization &&
Config.channel.isNightlyOrDebug &&
settings.shouldUseComposableToolbar &&
settings.toolbarRedesignEnabled &&
- isTallWindow() &&
- settings.shouldUseExpandedToolbar
+ isExpandedToolbarEnabled
}
private fun setupRadioGroups() {
@@ -229,7 +229,7 @@ class CustomizationFragment : PreferenceFragmentCompat() {
val layoutToggle = requirePreference<ToggleRadioButtonPreference>(R.string.pref_key_toolbar_expanded)
layoutToggle.setOnToggleChanged {
- updateToolbarShortcutBasedOnLayout()
+ updateToolbarShortcut()
}
updateToolbarLayoutIcons()
}
@@ -279,6 +279,12 @@ class CustomizationFragment : PreferenceFragmentCompat() {
return super.onPreferenceTreeClick(preference)
}
+ override fun onConfigurationChanged(newConfig: Configuration) {
+ super.onConfigurationChanged(newConfig)
+ setupToolbarLayout()
+ updateToolbarShortcut()
+ }
+
companion object {
// Used to send telemetry data about toolbar position changes
enum class Position { TOP, BOTTOM }