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

Commit d6d96c74 authored by jasonwshsu's avatar jasonwshsu
Browse files

Add accessibility floating menu settings key

* ACCESSIBILITY_FLOATING_MENU_SIZE: control different size
* ACCESSIBILITY_FLOATING_MENU_ICON_TYPE: control icon type
* ACCESSIBILITY_FLOATING_MENU_OPACITY: control the opacity value for fade out effect

Bug: 173940865
Test: atest SettingsProviderTest
Change-Id: I0399366b6ea05268e3d3ad1f24962fffde8d686a
parent 0883dadd
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -9193,6 +9193,39 @@ public final class Settings {
         */
        public static final int ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU = 0x1;
        /**
         * The size of the accessibility floating menu.
         * <ul>
         *     <li> 0 = small size
         *     <li> 1 = large size
         * </ul>
         *
         * @hide
         */
        public static final String ACCESSIBILITY_FLOATING_MENU_SIZE =
                "accessibility_floating_menu_size";
        /**
         * The icon type of the accessibility floating menu.
         * <ul>
         *     <li> 0 = full circle type
         *     <li> 1 = half circle type
         * </ul>
         *
         * @hide
         */
        public static final String ACCESSIBILITY_FLOATING_MENU_ICON_TYPE =
                "accessibility_floating_menu_icon_type";
        /**
         * The opacity value for the accessibility floating menu fade out effect, from 0.0
         * (transparent) to 1.0 (opaque).
         *
         * @hide
         */
        public static final String ACCESSIBILITY_FLOATING_MENU_OPACITY =
                "accessibility_floating_menu_opacity";
        /**
         * Whether the Adaptive connectivity option is enabled.
         *
+3 −0
Original line number Diff line number Diff line
@@ -81,6 +81,9 @@ message SecureSettingsProto {
        optional SettingProto accessibility_magnification_capability = 36 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Settings for accessibility button mode (navigation bar or floating action menu).
        optional SettingProto accessibility_button_mode = 37 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto accessibility_floating_menu_size = 38 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto accessibility_floating_menu_icon_type = 39 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto accessibility_floating_menu_opacity = 40 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Accessibility accessibility = 2;

+4 −1
Original line number Diff line number Diff line
@@ -181,6 +181,9 @@ public class SecureSettings {
        Settings.Secure.ADAPTIVE_CONNECTIVITY_ENABLED,
        Settings.Secure.ASSIST_HANDLES_LEARNING_TIME_ELAPSED_MILLIS,
        Settings.Secure.ASSIST_HANDLES_LEARNING_EVENT_COUNT,
        Settings.Secure.ACCESSIBILITY_BUTTON_MODE
        Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
        Settings.Secure.ACCESSIBILITY_FLOATING_MENU_SIZE,
        Settings.Secure.ACCESSIBILITY_FLOATING_MENU_ICON_TYPE,
        Settings.Secure.ACCESSIBILITY_FLOATING_MENU_OPACITY
    };
}
+6 −0
Original line number Diff line number Diff line
@@ -273,5 +273,11 @@ public class SecureSettingsValidators {
                new InclusiveIntegerRangeValidator(
                        Secure.ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR,
                        Secure.ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU));
        VALIDATORS.put(Secure.ACCESSIBILITY_FLOATING_MENU_SIZE,
                new DiscreteValueValidator(new String[] {"0", "1"}));
        VALIDATORS.put(Secure.ACCESSIBILITY_FLOATING_MENU_ICON_TYPE,
                new DiscreteValueValidator(new String[] {"0", "1"}));
        VALIDATORS.put(Secure.ACCESSIBILITY_FLOATING_MENU_OPACITY,
                new InclusiveFloatRangeValidator(0.0f, 1.0f));
    }
}
+9 −0
Original line number Diff line number Diff line
@@ -1813,6 +1813,15 @@ class SettingsProtoDumpUtil {
        dumpSetting(s, p,
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
                SecureSettingsProto.Accessibility.ACCESSIBILITY_BUTTON_MODE);
        dumpSetting(s, p,
                Settings.Secure.ACCESSIBILITY_FLOATING_MENU_SIZE,
                SecureSettingsProto.Accessibility.ACCESSIBILITY_FLOATING_MENU_SIZE);
        dumpSetting(s, p,
                Settings.Secure.ACCESSIBILITY_FLOATING_MENU_ICON_TYPE,
                SecureSettingsProto.Accessibility.ACCESSIBILITY_FLOATING_MENU_ICON_TYPE);
        dumpSetting(s, p,
                Settings.Secure.ACCESSIBILITY_FLOATING_MENU_OPACITY,
                SecureSettingsProto.Accessibility.ACCESSIBILITY_FLOATING_MENU_OPACITY);
        p.end(accessibilityToken);

        final long adaptiveSleepToken = p.start(SecureSettingsProto.ADAPTIVE_SLEEP);