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

Commit 6f9f91b6 authored by Menghan Li's avatar Menghan Li Committed by Android (Google) Code Review
Browse files

Merge "Fix Auto click (dwell timing) the checked option isn't the same as the...

Merge "Fix Auto click (dwell timing) the checked option isn't the same as the option before upgrading the OS" into rvc-dev
parents b6bf10eb 771163f0
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -153,7 +153,7 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
    @Override
    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
        if (KEY_DELAY_MODE.equals(key)) {
            int delayMillis = getSharedPreferenceForDelayValue();
            final int delayMillis = getSharedPreferenceForDelayValue();
            updateCustomDelayValue(delayMillis);
        }
    }
@@ -172,10 +172,11 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
    }

    private int getSharedPreferenceForDelayValue() {
        int delayMillis = mSharedPreferences.getInt(KEY_CUSTOM_DELAY_VALUE,
        final int delayMillis = Settings.Secure.getInt(mContentResolver,
                Settings.Secure.ACCESSIBILITY_AUTOCLICK_DELAY,
                AccessibilityManager.AUTOCLICK_DELAY_DEFAULT);

        return delayMillis;
        return mSharedPreferences.getInt(KEY_CUSTOM_DELAY_VALUE, delayMillis);
    }

    private void putSecureInt(String name, int value) {
@@ -190,14 +191,14 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
    }

    private void minusDelayByImageView() {
        int delayMillis = getSharedPreferenceForDelayValue();
        final int delayMillis = getSharedPreferenceForDelayValue();
        if (delayMillis > MIN_AUTOCLICK_DELAY_MS) {
            updateCustomDelayValue(delayMillis - AUTOCLICK_DELAY_STEP);
        }
    }

    private void plusDelayByImageView() {
        int delayMillis = getSharedPreferenceForDelayValue();
        final int delayMillis = getSharedPreferenceForDelayValue();
        if (delayMillis < MAX_AUTOCLICK_DELAY_MS) {
            updateCustomDelayValue(delayMillis + AUTOCLICK_DELAY_STEP);
        }
+14 −15
Original line number Diff line number Diff line
@@ -116,7 +116,7 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle

    @Override
    public void onRadioButtonClicked(RadioButtonPreference preference) {
        int value = mAccessibilityAutoclickKeyToValueMap.get(mPreferenceKey);
        final int value = mAccessibilityAutoclickKeyToValueMap.get(mPreferenceKey);
        handleRadioButtonPreferenceChange(value);
        if (mOnChangeListener != null) {
            mOnChangeListener.onCheckedChanged(mDelayModePref);
@@ -137,11 +137,15 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
    public void updateState(Preference preference) {
        super.updateState(preference);

        mCurrentUiAutoClickMode = getSharedPreferenceForAutoClickMode();
        final boolean enabled = Settings.Secure.getInt(mContext.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED, 0) == 1;

        mCurrentUiAutoClickMode =
                enabled ? getSharedPreferenceForAutoClickMode() : AUTOCLICK_OFF_MODE;

        // Reset RadioButton.
        mDelayModePref.setChecked(false);
        int mode = mAccessibilityAutoclickKeyToValueMap.get(mDelayModePref.getKey());
        final int mode = mAccessibilityAutoclickKeyToValueMap.get(mDelayModePref.getKey());
        updatePreferenceCheckedState(mode);
        updatePreferenceVisibleState(mode);
    }
@@ -155,10 +159,10 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
    }

    private void setAutoclickModeToKeyMap() {
        String[] autoclickKeys = mResources.getStringArray(
        final String[] autoclickKeys = mResources.getStringArray(
                R.array.accessibility_autoclick_control_selector_keys);

        int[] autoclickValues = mResources.getIntArray(
        final int[] autoclickValues = mResources.getIntArray(
                R.array.accessibility_autoclick_selector_values);

        final int autoclickValueCount = autoclickValues.length;
@@ -168,26 +172,21 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
    }

    private void handleRadioButtonPreferenceChange(int preference) {
        if (preference == AUTOCLICK_OFF_MODE) {
            putSecureInt(Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED, /*value= */ 0);
        } else {
            putSecureInt(Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED, /*value= */ 1);
        }
        putSecureInt(Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED,
                (preference != AUTOCLICK_OFF_MODE) ? /* enabled */ 1 : /* disabled */ 0);

        mSharedPreferences.edit().putInt(KEY_DELAY_MODE, preference).apply();

        if (preference == AUTOCLICK_CUSTOM_MODE) {
            return;
        }

        if (preference != AUTOCLICK_CUSTOM_MODE) {
            putSecureInt(CONTROL_AUTOCLICK_DELAY_SECURE, preference);
        }
    }

    private void putSecureInt(String name, int value) {
        Settings.Secure.putInt(mContentResolver, name, value);
    }

    private int getSharedPreferenceForAutoClickMode() {
        return mSharedPreferences.getInt(KEY_DELAY_MODE, AUTOCLICK_OFF_MODE);
        return mSharedPreferences.getInt(KEY_DELAY_MODE, AUTOCLICK_CUSTOM_MODE);
    }
}