a11y: Plumb autoclick cursor area size settings to PrefController

Screen recording: http://go/scrcast/NTk0ODczOTE4MDAzNjA5Nnw0ZGNhMzVmYS0wYg

Bug: b/383901288
Test: ToggleAutoclickCursorAreaSizeControllerTest
Change-Id: I745ef71d035d379e06a747f085ef9b0fef60d968
Flag: com.android.server.accessibility.enable_autoclick_indicator
This commit is contained in:
Wenyu Zhang
2025-01-07 23:37:39 +00:00
parent 9ed3b4fb77
commit 6052ab619f
2 changed files with 43 additions and 10 deletions

View File

@@ -29,11 +29,15 @@ import android.content.SharedPreferences;
import android.platform.test.annotations.DisableFlags;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.provider.Settings;
import android.view.accessibility.AccessibilityManager;
import androidx.test.core.app.ApplicationProvider;
import com.android.settings.core.BasePreferenceController;
import com.google.common.collect.ImmutableList;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -100,4 +104,23 @@ public class ToggleAutoclickCursorAreaSizeControllerTest {
verify(prefs).unregisterOnSharedPreferenceChangeListener(controller);
}
@Test
public void getProgress_matchesSetting() {
assertThat(mController.getSliderPosition()).isEqualTo(readSetting());
}
@Test
public void setProgress_updatesSetting() {
for (int size : ImmutableList.of(20, 40, 60, 80, 100)) {
mController.setSliderPosition(size);
assertThat(readSetting()).isEqualTo(size);
}
}
private int readSetting() {
return Settings.Secure.getInt(mContext.getContentResolver(),
Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE,
AccessibilityManager.AUTOCLICK_CURSOR_AREA_SIZE_DEFAULT);
}
}