refactor(magnification suw): hide follow typing toggle in setup wizard

Originally we cache mFollowingTypingSwitchPreference in fragment so in
ToggleScreenMagnificationPreferenceFragmentForSetupWizard we can set the
preference visible to false to hide it. After creating MagnificationFeaturePreferenceController,
the MagnificationFollowTypingPreferenceController can extend it and
check isInSetupWizard internally then dicide whether to hide. Therefore,
we don't need to cache mFollowingTypingSwitchPreference in fragment
and let the fragment control the preference visibility anymore.

Bug: 340721852
Flag: NONE
Test: manually
      atest MagnificationFollowTypingPreferenceControllerTest
      atest ToggleScreenMagnificationPreferenceFragmentForSetupWizardTest
      atest ToggleScreenMagnificationPreferenceFragmentTest
Change-Id: I44f7f0589b2df3d83a27139323fc68a0561f1cfa
This commit is contained in:
Roy Chou
2024-05-20 08:22:17 +00:00
parent 3761f61c7e
commit c9d3b39a62
5 changed files with 22 additions and 17 deletions

View File

@@ -82,8 +82,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
private static final TextUtils.SimpleStringSplitter sStringColonSplitter =
new TextUtils.SimpleStringSplitter(COMPONENT_NAME_SEPARATOR);
protected TwoStatePreference mFollowingTypingSwitchPreference;
// TODO(b/147021230): Move duplicated functions with android/internal/accessibility into util.
private TouchExplorationStateChangeListener mTouchExplorationStateChangeListener;
private CheckBox mSoftwareTypeCheckBox;
@@ -243,17 +241,18 @@ public class ToggleScreenMagnificationPreferenceFragment extends
}
private void addFollowTypingSetting(PreferenceCategory generalCategory) {
mFollowingTypingSwitchPreference = new SwitchPreferenceCompat(getPrefContext());
mFollowingTypingSwitchPreference.setTitle(
var followingTypingSwitchPreference = new SwitchPreferenceCompat(getPrefContext());
followingTypingSwitchPreference.setTitle(
R.string.accessibility_screen_magnification_follow_typing_title);
mFollowingTypingSwitchPreference.setSummary(
followingTypingSwitchPreference.setSummary(
R.string.accessibility_screen_magnification_follow_typing_summary);
mFollowingTypingSwitchPreference.setKey(
followingTypingSwitchPreference.setKey(
MagnificationFollowTypingPreferenceController.PREF_KEY);
generalCategory.addPreference(mFollowingTypingSwitchPreference);
generalCategory.addPreference(followingTypingSwitchPreference);
var followTypingPreferenceController = new MagnificationFollowTypingPreferenceController(
getContext(), MagnificationFollowTypingPreferenceController.PREF_KEY);
followTypingPreferenceController.setInSetupWizard(mInSetupWizard);
followTypingPreferenceController.displayPreference(getPreferenceScreen());
addPreferenceController(followTypingPreferenceController);
}