Merge "Fix Auto click (dwell timing) the checked option isn't the same as the option before upgrading the OS" into rvc-dev
This commit is contained in:
@@ -153,7 +153,7 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
|
|||||||
@Override
|
@Override
|
||||||
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
|
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
|
||||||
if (KEY_DELAY_MODE.equals(key)) {
|
if (KEY_DELAY_MODE.equals(key)) {
|
||||||
int delayMillis = getSharedPreferenceForDelayValue();
|
final int delayMillis = getSharedPreferenceForDelayValue();
|
||||||
updateCustomDelayValue(delayMillis);
|
updateCustomDelayValue(delayMillis);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -172,10 +172,11 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
|
|||||||
}
|
}
|
||||||
|
|
||||||
private int getSharedPreferenceForDelayValue() {
|
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);
|
AccessibilityManager.AUTOCLICK_DELAY_DEFAULT);
|
||||||
|
|
||||||
return delayMillis;
|
return mSharedPreferences.getInt(KEY_CUSTOM_DELAY_VALUE, delayMillis);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void putSecureInt(String name, int value) {
|
private void putSecureInt(String name, int value) {
|
||||||
@@ -190,14 +191,14 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void minusDelayByImageView() {
|
private void minusDelayByImageView() {
|
||||||
int delayMillis = getSharedPreferenceForDelayValue();
|
final int delayMillis = getSharedPreferenceForDelayValue();
|
||||||
if (delayMillis > MIN_AUTOCLICK_DELAY_MS) {
|
if (delayMillis > MIN_AUTOCLICK_DELAY_MS) {
|
||||||
updateCustomDelayValue(delayMillis - AUTOCLICK_DELAY_STEP);
|
updateCustomDelayValue(delayMillis - AUTOCLICK_DELAY_STEP);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void plusDelayByImageView() {
|
private void plusDelayByImageView() {
|
||||||
int delayMillis = getSharedPreferenceForDelayValue();
|
final int delayMillis = getSharedPreferenceForDelayValue();
|
||||||
if (delayMillis < MAX_AUTOCLICK_DELAY_MS) {
|
if (delayMillis < MAX_AUTOCLICK_DELAY_MS) {
|
||||||
updateCustomDelayValue(delayMillis + AUTOCLICK_DELAY_STEP);
|
updateCustomDelayValue(delayMillis + AUTOCLICK_DELAY_STEP);
|
||||||
}
|
}
|
||||||
|
@@ -116,7 +116,7 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||||
int value = mAccessibilityAutoclickKeyToValueMap.get(mPreferenceKey);
|
final int value = mAccessibilityAutoclickKeyToValueMap.get(mPreferenceKey);
|
||||||
handleRadioButtonPreferenceChange(value);
|
handleRadioButtonPreferenceChange(value);
|
||||||
if (mOnChangeListener != null) {
|
if (mOnChangeListener != null) {
|
||||||
mOnChangeListener.onCheckedChanged(mDelayModePref);
|
mOnChangeListener.onCheckedChanged(mDelayModePref);
|
||||||
@@ -137,11 +137,15 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
|||||||
public void updateState(Preference preference) {
|
public void updateState(Preference preference) {
|
||||||
super.updateState(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.
|
// Reset RadioButton.
|
||||||
mDelayModePref.setChecked(false);
|
mDelayModePref.setChecked(false);
|
||||||
int mode = mAccessibilityAutoclickKeyToValueMap.get(mDelayModePref.getKey());
|
final int mode = mAccessibilityAutoclickKeyToValueMap.get(mDelayModePref.getKey());
|
||||||
updatePreferenceCheckedState(mode);
|
updatePreferenceCheckedState(mode);
|
||||||
updatePreferenceVisibleState(mode);
|
updatePreferenceVisibleState(mode);
|
||||||
}
|
}
|
||||||
@@ -155,10 +159,10 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setAutoclickModeToKeyMap() {
|
private void setAutoclickModeToKeyMap() {
|
||||||
String[] autoclickKeys = mResources.getStringArray(
|
final String[] autoclickKeys = mResources.getStringArray(
|
||||||
R.array.accessibility_autoclick_control_selector_keys);
|
R.array.accessibility_autoclick_control_selector_keys);
|
||||||
|
|
||||||
int[] autoclickValues = mResources.getIntArray(
|
final int[] autoclickValues = mResources.getIntArray(
|
||||||
R.array.accessibility_autoclick_selector_values);
|
R.array.accessibility_autoclick_selector_values);
|
||||||
|
|
||||||
final int autoclickValueCount = autoclickValues.length;
|
final int autoclickValueCount = autoclickValues.length;
|
||||||
@@ -168,19 +172,14 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void handleRadioButtonPreferenceChange(int preference) {
|
private void handleRadioButtonPreferenceChange(int preference) {
|
||||||
if (preference == AUTOCLICK_OFF_MODE) {
|
putSecureInt(Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED,
|
||||||
putSecureInt(Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED, /*value= */ 0);
|
(preference != AUTOCLICK_OFF_MODE) ? /* enabled */ 1 : /* disabled */ 0);
|
||||||
} else {
|
|
||||||
putSecureInt(Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED, /*value= */ 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
mSharedPreferences.edit().putInt(KEY_DELAY_MODE, preference).apply();
|
mSharedPreferences.edit().putInt(KEY_DELAY_MODE, preference).apply();
|
||||||
|
|
||||||
if (preference == AUTOCLICK_CUSTOM_MODE) {
|
if (preference != AUTOCLICK_CUSTOM_MODE) {
|
||||||
return;
|
putSecureInt(CONTROL_AUTOCLICK_DELAY_SECURE, preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
putSecureInt(CONTROL_AUTOCLICK_DELAY_SECURE, preference);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void putSecureInt(String name, int value) {
|
private void putSecureInt(String name, int value) {
|
||||||
@@ -188,6 +187,6 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
|||||||
}
|
}
|
||||||
|
|
||||||
private int getSharedPreferenceForAutoClickMode() {
|
private int getSharedPreferenceForAutoClickMode() {
|
||||||
return mSharedPreferences.getInt(KEY_DELAY_MODE, AUTOCLICK_OFF_MODE);
|
return mSharedPreferences.getInt(KEY_DELAY_MODE, AUTOCLICK_CUSTOM_MODE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user