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:
@@ -23,10 +23,10 @@ import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.TogglePreferenceController;
|
||||
|
||||
/** Controller that accesses and switches the preference status of following typing feature */
|
||||
public class MagnificationFollowTypingPreferenceController extends TogglePreferenceController {
|
||||
public class MagnificationFollowTypingPreferenceController extends
|
||||
MagnificationFeaturePreferenceController {
|
||||
|
||||
private static final String TAG =
|
||||
MagnificationFollowTypingPreferenceController.class.getSimpleName();
|
||||
@@ -38,7 +38,7 @@ public class MagnificationFollowTypingPreferenceController extends TogglePrefere
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
return AVAILABLE;
|
||||
return isInSetupWizard() ? CONDITIONALLY_UNAVAILABLE : AVAILABLE;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -72,10 +72,6 @@ public class ToggleScreenMagnificationPreferenceFragmentForSetupWizard
|
||||
if (mSettingsPreference != null) {
|
||||
mSettingsPreference.setVisible(false);
|
||||
}
|
||||
// Setting of following typing
|
||||
if (mFollowingTypingSwitchPreference != null) {
|
||||
mFollowingTypingSwitchPreference.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user