Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 28e10455 authored by Riley Jones's avatar Riley Jones
Browse files

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
parent c43be041
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -5176,6 +5176,8 @@
    <string name="accessibility_button_low_label">Transparent</string>
    <!-- Label on the right side of transparency adjustment slider [CHAR LIMIT=30] -->
    <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] -->
    <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] -->
+9 −2
Original line number Diff line number Diff line
@@ -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);
    }

+6 −2
Original line number Diff line number Diff line
@@ -50,9 +50,13 @@ public class AccessibilityButtonGesturePreferenceController extends BasePreferen

    @Override
    public int getAvailabilityStatus() {
        if (android.provider.Flags.a11yStandaloneGestureEnabled()) {
            return CONDITIONALLY_UNAVAILABLE;
        } else {
            return AccessibilityUtil.isGestureNavigateEnabled(mContext)
                    ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
        }
    }

    @Override
    public boolean onPreferenceChange(Preference preference, Object newValue) {
+14 −0
Original line number Diff line number Diff line
@@ -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() {
+14 −0
Original line number Diff line number Diff line
@@ -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