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