chore(magnification suw): hide one finger pan toggle in setup wizard

Bug: 340721852
Flag: NONE
Test: manually
      atest MagnificationOneFingerPanningPreferenceControllerTest
Change-Id: Ic9b44d73f75b47e6b97c5f4994b2e0b23bfb623b
This commit is contained in:
Roy Chou
2024-05-20 08:32:04 +00:00
parent c9d3b39a62
commit f094c19d0a
3 changed files with 17 additions and 4 deletions

View File

@@ -35,13 +35,12 @@ import androidx.preference.TwoStatePreference;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode; import com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode;
import com.android.settings.core.TogglePreferenceController;
import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause; import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume; import com.android.settingslib.core.lifecycle.events.OnResume;
public class MagnificationOneFingerPanningPreferenceController public class MagnificationOneFingerPanningPreferenceController extends
extends TogglePreferenceController implements LifecycleObserver, OnResume, OnPause { MagnificationFeaturePreferenceController implements LifecycleObserver, OnResume, OnPause {
static final String PREF_KEY = Settings.Secure.ACCESSIBILITY_SINGLE_FINGER_PANNING_ENABLED; static final String PREF_KEY = Settings.Secure.ACCESSIBILITY_SINGLE_FINGER_PANNING_ENABLED;
private TwoStatePreference mSwitchPreference; private TwoStatePreference mSwitchPreference;
@@ -82,7 +81,7 @@ public class MagnificationOneFingerPanningPreferenceController
@Override @Override
public int getAvailabilityStatus() { public int getAvailabilityStatus() {
return AVAILABLE; return isInSetupWizard() ? CONDITIONALLY_UNAVAILABLE : AVAILABLE;
} }
@Override @Override

View File

@@ -304,6 +304,7 @@ public class ToggleScreenMagnificationPreferenceFragment extends
var oneFingerPanningPreferenceController = var oneFingerPanningPreferenceController =
new MagnificationOneFingerPanningPreferenceController(getContext()); new MagnificationOneFingerPanningPreferenceController(getContext());
oneFingerPanningPreferenceController.setInSetupWizard(mInSetupWizard);
getSettingsLifecycle().addObserver(oneFingerPanningPreferenceController); getSettingsLifecycle().addObserver(oneFingerPanningPreferenceController);
oneFingerPanningPreferenceController.displayPreference(getPreferenceScreen()); oneFingerPanningPreferenceController.displayPreference(getPreferenceScreen());
addPreferenceController(oneFingerPanningPreferenceController); addPreferenceController(oneFingerPanningPreferenceController);

View File

@@ -19,6 +19,8 @@ package com.android.settings.accessibility;
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF; import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
import static com.android.settings.accessibility.AccessibilityUtil.State.ON; import static com.android.settings.accessibility.AccessibilityUtil.State.ON;
import static com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode; import static com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode;
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; import static com.google.common.truth.Truth.assertThat;
@@ -186,6 +188,17 @@ public class MagnificationOneFingerPanningPreferenceControllerTest {
assertThat(mSwitchPreference.isChecked()).isFalse(); assertThat(mSwitchPreference.isChecked()).isFalse();
} }
@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);
}
private String enabledSummary() { private String enabledSummary() {
return mContext.getString( return mContext.getString(
R.string.accessibility_magnification_one_finger_panning_summary_on); R.string.accessibility_magnification_one_finger_panning_summary_on);