diff --git a/res/values/strings.xml b/res/values/strings.xml index 3ec5904c749..fad378a0aac 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -5176,6 +5176,8 @@ Transparent Non-transparent + + Unavailable while using navigation bar button mode. High contrast text diff --git a/src/com/android/settings/accessibility/AccessibilityButtonFragment.java b/src/com/android/settings/accessibility/AccessibilityButtonFragment.java index 2df11a97ac2..60e4bb28fea 100644 --- a/src/com/android/settings/accessibility/AccessibilityButtonFragment.java +++ b/src/com/android/settings/accessibility/AccessibilityButtonFragment.java @@ -33,8 +33,15 @@ public class AccessibilityButtonFragment extends DashboardFragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - final int titleResource = AccessibilityUtil.isGestureNavigateEnabled(getPrefContext()) - ? R.string.accessibility_button_gesture_title : R.string.accessibility_button_title; + + final int titleResource; + if (android.provider.Flags.a11yStandaloneGestureEnabled()) { + titleResource = R.string.accessibility_button_title; + } else { + titleResource = AccessibilityUtil.isGestureNavigateEnabled(getPrefContext()) + ? R.string.accessibility_button_gesture_title + : R.string.accessibility_button_title; + } getActivity().setTitle(titleResource); } diff --git a/src/com/android/settings/accessibility/AccessibilityButtonGesturePreferenceController.java b/src/com/android/settings/accessibility/AccessibilityButtonGesturePreferenceController.java index ded8acab327..6db28a69908 100644 --- a/src/com/android/settings/accessibility/AccessibilityButtonGesturePreferenceController.java +++ b/src/com/android/settings/accessibility/AccessibilityButtonGesturePreferenceController.java @@ -50,8 +50,12 @@ public class AccessibilityButtonGesturePreferenceController extends BasePreferen @Override public int getAvailabilityStatus() { - return AccessibilityUtil.isGestureNavigateEnabled(mContext) - ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; + if (android.provider.Flags.a11yStandaloneGestureEnabled()) { + return CONDITIONALLY_UNAVAILABLE; + } else { + return AccessibilityUtil.isGestureNavigateEnabled(mContext) + ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; + } } @Override diff --git a/src/com/android/settings/accessibility/FloatingMenuFadePreferenceController.java b/src/com/android/settings/accessibility/FloatingMenuFadePreferenceController.java index 3d36aa4721f..70882a48d64 100644 --- a/src/com/android/settings/accessibility/FloatingMenuFadePreferenceController.java +++ b/src/com/android/settings/accessibility/FloatingMenuFadePreferenceController.java @@ -28,6 +28,7 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import androidx.preference.TwoStatePreference; +import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnPause; @@ -64,6 +65,18 @@ public class FloatingMenuFadePreferenceController extends BasePreferenceControll ? AVAILABLE : DISABLED_DEPENDENT_SETTING; } + @Override + public CharSequence getSummary() { + if (mPreference != null) { + return mPreference.isEnabled() + ? "%s" + : mContext.getString( + R.string.accessibility_button_disabled_button_mode_summary); + } else { + return "%s"; + } + } + @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); @@ -101,6 +114,7 @@ public class FloatingMenuFadePreferenceController extends BasePreferenceControll private void updateAvailabilityStatus() { mPreference.setEnabled(AccessibilityUtil.isFloatingMenuEnabled(mContext)); + refreshSummary(mPreference); } private int getFloatingMenuFadeValue() { diff --git a/src/com/android/settings/accessibility/FloatingMenuSizePreferenceController.java b/src/com/android/settings/accessibility/FloatingMenuSizePreferenceController.java index 7d4f495f5a8..2f036da5b51 100644 --- a/src/com/android/settings/accessibility/FloatingMenuSizePreferenceController.java +++ b/src/com/android/settings/accessibility/FloatingMenuSizePreferenceController.java @@ -29,6 +29,7 @@ import androidx.preference.ListPreference; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; +import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnPause; @@ -79,6 +80,18 @@ public class FloatingMenuSizePreferenceController extends BasePreferenceControll ? AVAILABLE : DISABLED_DEPENDENT_SETTING; } + @Override + public CharSequence getSummary() { + if (mPreference != null) { + return mPreference.isEnabled() + ? "%s" + : mContext.getString( + R.string.accessibility_button_disabled_button_mode_summary); + } else { + return "%s"; + } + } + @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); @@ -119,6 +132,7 @@ public class FloatingMenuSizePreferenceController extends BasePreferenceControll private void updateAvailabilityStatus() { mPreference.setEnabled(AccessibilityUtil.isFloatingMenuEnabled(mContext)); + refreshSummary(mPreference); } @Size