Adding Settings preference for single finger panning feature

Test: Locally tested on device +
MagnificationOneFingerPanningPreferenceControllerTest
Bug: 282039824

Change-Id: I1d1a649060cba862c8f333e6e76184fade2dcdce
This commit is contained in:
Isaac Chai
2024-02-21 14:54:32 +00:00
parent ea341bdf98
commit 46369353ed
4 changed files with 316 additions and 0 deletions

View File

@@ -200,6 +200,7 @@ public class ToggleScreenMagnificationPreferenceFragment extends
final PreferenceCategory generalCategory = findPreference(KEY_GENERAL_CATEGORY);
generalCategory.addPreference(mSettingsPreference);
addOneFingerPanningSetting(generalCategory);
final MagnificationModePreferenceController magnificationModePreferenceController =
new MagnificationModePreferenceController(getContext(),
MagnificationModePreferenceController.PREF_KEY);
@@ -283,6 +284,24 @@ public class ToggleScreenMagnificationPreferenceFragment extends
addPreferenceController(alwaysOnPreferenceController);
}
private void addOneFingerPanningSetting(PreferenceCategory generalCategory) {
if (!Flags.enableMagnificationOneFingerPanningGesture()) {
return;
}
var oneFingerPanningPreference = new SwitchPreferenceCompat(getPrefContext());
oneFingerPanningPreference.setTitle(
R.string.accessibility_magnification_one_finger_panning_title);
oneFingerPanningPreference.setKey(
MagnificationOneFingerPanningPreferenceController.PREF_KEY);
generalCategory.addPreference(oneFingerPanningPreference);
var oneFingerPanningPreferenceController =
new MagnificationOneFingerPanningPreferenceController(getContext());
oneFingerPanningPreferenceController.displayPreference(getPreferenceScreen());
addPreferenceController(oneFingerPanningPreferenceController);
}
private void addJoystickSetting(PreferenceCategory generalCategory) {
if (!DeviceConfig.getBoolean(
DeviceConfig.NAMESPACE_WINDOW_MANAGER,