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

Commit c8b7555f authored by Doris Ling's avatar Doris Ling
Browse files

Add condition check for double tap gesture settings.

Only shows the double tap gesture preference if the config is enabled.

Test: manual - launch gesture settings on different devices and check
for double tap preference. Auto test pending.
Bug: 31930457

Change-Id: Id972f60035d0c74f0832395f0229691cd3296d60
parent e87f2bba
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -58,4 +58,7 @@
    <!-- If the Storage Manager settings are enabled. -->
    <bool name="config_storage_manager_settings_enabled">false</bool>

    <!-- When true show double-tap gesture setting. -->
    <bool name="config_gesture_double_tap_settings_enabled">false</bool>

</resources>
+14 −3
Original line number Diff line number Diff line
@@ -81,13 +81,17 @@ public class GestureSettings extends SettingsPreferenceFragment implements
        }

        // Ambient Display
        if (isDozeAvailable(context)) {
        boolean dozeEnabled = isDozeAvailable(context);
        if (dozeEnabled) {
            int pickup = Secure.getInt(getContentResolver(), Secure.DOZE_PULSE_ON_PICK_UP, 1);
            addPreference(PREF_KEY_PICK_UP, pickup != 0, PREF_ID_PICK_UP);
        } else {
            removePreference(PREF_KEY_PICK_UP);
        }
        if (dozeEnabled && isDoubleTapAvailable(context)) {
            int doubleTap = Secure.getInt(getContentResolver(), Secure.DOZE_PULSE_ON_DOUBLE_TAP, 1);
            addPreference(PREF_KEY_DOUBLE_TAP_SCREEN, doubleTap != 0, PREF_ID_DOUBLE_TAP_SCREEN);
        } else {
            removePreference(PREF_KEY_PICK_UP);
            removePreference(PREF_KEY_DOUBLE_TAP_SCREEN);
        }

@@ -215,6 +219,11 @@ public class GestureSettings extends SettingsPreferenceFragment implements
        return false;
    }

    private static boolean isDoubleTapAvailable(Context context) {
        return context.getResources().getBoolean(
                R.bool.config_gesture_double_tap_settings_enabled);
    }

    private void addPreference(String key, boolean enabled, int id) {
        GesturePreference preference = (GesturePreference) findPreference(key);
        preference.setChecked(enabled);
@@ -247,6 +256,8 @@ public class GestureSettings extends SettingsPreferenceFragment implements
                if (!isDozeAvailable(context)) {
                    result.add(PREF_KEY_PICK_UP);
                    result.add(PREF_KEY_DOUBLE_TAP_SCREEN);
                } else if (!isDoubleTapAvailable(context)) {
                    result.add(PREF_KEY_DOUBLE_TAP_SCREEN);
                }
                if (!isSystemUINavigationAvailable(context)) {
                    result.add(PREF_KEY_SWIPE_DOWN_FINGERPRINT);