Remove mentions of "gesture" on the Accessibility Button settings page

Configures page to hide/replace elements that would mention gesture.
Also, provides context when necessary if a setting is disabled by the current button mode.

Demonstration video:
https://x20web.corp.google.com/users/jo/jonesriley/splitShortcut/a11yShortcutSettingsCleanup.mp4

Test: manual, navigate to the Accessibility Button "more options" page in gesture navigation mode. Verify there are no references to gesture.
Bug: 349178639
Flag: android.provider.a11y_standalone_gesture_enabled
Change-Id: I067738d23e74c00bab4010d187820d09013809ad
This commit is contained in:
Riley Jones
2024-09-06 18:19:10 +00:00
parent c43be041f5
commit 28e10455a1
5 changed files with 45 additions and 4 deletions

View File

@@ -5176,6 +5176,8 @@
<string name="accessibility_button_low_label">Transparent</string> <string name="accessibility_button_low_label">Transparent</string>
<!-- Label on the right side of transparency adjustment slider [CHAR LIMIT=30] --> <!-- Label on the right side of transparency adjustment slider [CHAR LIMIT=30] -->
<string name="accessibility_button_high_label">Non-transparent</string> <string name="accessibility_button_high_label">Non-transparent</string>
<!-- Summary for settings that are disabled in the current button mode [CHAR LIMIT=30] -->
<string name="accessibility_button_disabled_button_mode_summary">Unavailable while using navigation bar button mode.</string>
<!-- Title for the accessibility preference to high contrast text. [CHAR LIMIT=35] --> <!-- Title for the accessibility preference to high contrast text. [CHAR LIMIT=35] -->
<string name="accessibility_toggle_high_text_contrast_preference_title">High contrast text</string> <string name="accessibility_toggle_high_text_contrast_preference_title">High contrast text</string>
<!-- Summary for the accessibility preference to high contrast text. [CHAR LIMIT=NONE] --> <!-- Summary for the accessibility preference to high contrast text. [CHAR LIMIT=NONE] -->

View File

@@ -33,8 +33,15 @@ public class AccessibilityButtonFragment extends DashboardFragment {
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(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); getActivity().setTitle(titleResource);
} }

View File

@@ -50,8 +50,12 @@ public class AccessibilityButtonGesturePreferenceController extends BasePreferen
@Override @Override
public int getAvailabilityStatus() { public int getAvailabilityStatus() {
return AccessibilityUtil.isGestureNavigateEnabled(mContext) if (android.provider.Flags.a11yStandaloneGestureEnabled()) {
? AVAILABLE : CONDITIONALLY_UNAVAILABLE; return CONDITIONALLY_UNAVAILABLE;
} else {
return AccessibilityUtil.isGestureNavigateEnabled(mContext)
? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
}
} }
@Override @Override

View File

@@ -28,6 +28,7 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen;
import androidx.preference.TwoStatePreference; import androidx.preference.TwoStatePreference;
import com.android.settings.R;
import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause; import com.android.settingslib.core.lifecycle.events.OnPause;
@@ -64,6 +65,18 @@ public class FloatingMenuFadePreferenceController extends BasePreferenceControll
? AVAILABLE : DISABLED_DEPENDENT_SETTING; ? 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 @Override
public void displayPreference(PreferenceScreen screen) { public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen); super.displayPreference(screen);
@@ -101,6 +114,7 @@ public class FloatingMenuFadePreferenceController extends BasePreferenceControll
private void updateAvailabilityStatus() { private void updateAvailabilityStatus() {
mPreference.setEnabled(AccessibilityUtil.isFloatingMenuEnabled(mContext)); mPreference.setEnabled(AccessibilityUtil.isFloatingMenuEnabled(mContext));
refreshSummary(mPreference);
} }
private int getFloatingMenuFadeValue() { private int getFloatingMenuFadeValue() {

View File

@@ -29,6 +29,7 @@ import androidx.preference.ListPreference;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause; import com.android.settingslib.core.lifecycle.events.OnPause;
@@ -79,6 +80,18 @@ public class FloatingMenuSizePreferenceController extends BasePreferenceControll
? AVAILABLE : DISABLED_DEPENDENT_SETTING; ? 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 @Override
public void displayPreference(PreferenceScreen screen) { public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen); super.displayPreference(screen);
@@ -119,6 +132,7 @@ public class FloatingMenuSizePreferenceController extends BasePreferenceControll
private void updateAvailabilityStatus() { private void updateAvailabilityStatus() {
mPreference.setEnabled(AccessibilityUtil.isFloatingMenuEnabled(mContext)); mPreference.setEnabled(AccessibilityUtil.isFloatingMenuEnabled(mContext));
refreshSummary(mPreference);
} }
@Size @Size