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:
@@ -17,6 +17,8 @@
|
||||
package com.android.settings.accessibility;
|
||||
|
||||
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
|
||||
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
|
||||
import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_UNAVAILABLE;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
@@ -61,6 +63,17 @@ public class MagnificationFollowTypingPreferenceControllerTest {
|
||||
reset(mSwitchPreference);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailableStatus_notInSetupWizard_returnAvailable() {
|
||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailableStatus_inSetupWizard_returnConditionallyUnavailable() {
|
||||
mController.setInSetupWizard(true);
|
||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void performClick_switchDefaultStateForFollowTyping_shouldReturnFalse() {
|
||||
mSwitchPreference.performClick();
|
||||
|
@@ -32,7 +32,6 @@ import androidx.lifecycle.LifecycleOwner;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceManager;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
import androidx.preference.SwitchPreferenceCompat;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -97,7 +96,6 @@ public class ToggleScreenMagnificationPreferenceFragmentForSetupWizardTest {
|
||||
verify(mFooterBarMixin).setPrimaryButton(any());
|
||||
assertThat(mFragment.mTopIntroPreference.isVisible()).isFalse();
|
||||
assertThat(mFragment.mSettingsPreference.isVisible()).isFalse();
|
||||
assertThat(mFragment.mFollowingTypingSwitchPreference.isVisible()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -124,7 +122,6 @@ public class ToggleScreenMagnificationPreferenceFragmentForSetupWizardTest {
|
||||
mPreferenceManager.setPreferences(mPreferenceManager.createPreferenceScreen(context));
|
||||
mTopIntroPreference = new TopIntroPreference(context);
|
||||
mSettingsPreference = new Preference(context);
|
||||
mFollowingTypingSwitchPreference = new SwitchPreferenceCompat(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user