Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba08c131 authored by Yongshun Liu's avatar Yongshun Liu
Browse files

a11y: Hide magnification settings during setup wizard

It marks magnification mode and cursor following mode settings
unavailable during setup wizard to be consistent with other
magnification settings.

In addition, this also fixes a linter warning in
`ToggleScreenMagnificationPreferenceFragment`.

Bug: b/401309377
Flag: com.android.settings.accessibility.enable_magnification_cursor_following_dialog
Test: Existing tests
Change-Id: I3c02b2bc50593074a0cb9148c0e42cfde660b980
parent fb2d3b7a
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -39,7 +39,6 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.DialogCreatable;
import com.android.settings.R;
import com.android.settings.accessibility.AccessibilityDialogUtils.DialogEnums;
import com.android.settings.core.BasePreferenceController;

import java.util.ArrayList;
import java.util.List;
@@ -47,8 +46,8 @@ import java.util.List;
/**
 * Controller that shows the magnification cursor following mode and the preference click behavior.
 */
public class MagnificationCursorFollowingModePreferenceController extends
        BasePreferenceController implements DialogCreatable {
public class MagnificationCursorFollowingModePreferenceController
        extends MagnificationBasePreferenceController implements DialogCreatable {
    static final String PREF_KEY =
            Settings.Secure.ACCESSIBILITY_MAGNIFICATION_CURSOR_FOLLOWING_MODE;

@@ -88,7 +87,7 @@ public class MagnificationCursorFollowingModePreferenceController extends

    @Override
    public int getAvailabilityStatus() {
        return AVAILABLE;
        return isInSetupWizard() ? CONDITIONALLY_UNAVAILABLE : AVAILABLE;
    }

    @NonNull
+3 −4
Original line number Diff line number Diff line
@@ -45,7 +45,6 @@ import com.android.settings.DialogCreatable;
import com.android.settings.R;
import com.android.settings.accessibility.AccessibilityDialogUtils.DialogEnums;
import com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.utils.AnnotationSpan;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnCreate;
@@ -55,8 +54,8 @@ import java.util.ArrayList;
import java.util.List;

/** Controller that shows the magnification area mode summary and the preference click behavior. */
public class MagnificationModePreferenceController extends BasePreferenceController implements
        DialogCreatable, LifecycleObserver, OnCreate, OnSaveInstanceState {
public class MagnificationModePreferenceController extends MagnificationBasePreferenceController
        implements DialogCreatable, LifecycleObserver, OnCreate, OnSaveInstanceState {

    static final String PREF_KEY = "screen_magnification_mode";
    static final String EXTRA_MODE = "mode";
@@ -106,7 +105,7 @@ public class MagnificationModePreferenceController extends BasePreferenceControl

    @Override
    public int getAvailabilityStatus() {
        return AVAILABLE;
        return isInSetupWizard() ? CONDITIONALLY_UNAVAILABLE : AVAILABLE;
    }

    @NonNull
+2 −1
Original line number Diff line number Diff line
@@ -83,7 +83,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends

    private static final String TAG =
            ToggleScreenMagnificationPreferenceFragment.class.getSimpleName();
    @VisibleForTesting
    static final String KEY_MAGNIFICATION_SHORTCUT_PREFERENCE = "magnification_shortcut_preference";
    private static final char COMPONENT_NAME_SEPARATOR = ':';
    private static final TextUtils.SimpleStringSplitter sStringColonSplitter =
@@ -299,6 +298,7 @@ public class ToggleScreenMagnificationPreferenceFragment extends
        magnificationModePreferenceController.setDialogHelper(/* dialogHelper= */this);
        mMagnificationModeDialogDelegate = magnificationModePreferenceController;
        getSettingsLifecycle().addObserver(magnificationModePreferenceController);
        magnificationModePreferenceController.setInSetupWizard(mInSetupWizard);
        magnificationModePreferenceController.displayPreference(getPreferenceScreen());
        addPreferenceController(magnificationModePreferenceController);
    }
@@ -324,6 +324,7 @@ public class ToggleScreenMagnificationPreferenceFragment extends
                        MagnificationCursorFollowingModePreferenceController.PREF_KEY);
        controller.setDialogHelper(/* dialogHelper= */this);
        mMagnificationCursorFollowingModeDialogDelegate = controller;
        controller.setInSetupWizard(mInSetupWizard);
        controller.displayPreference(getPreferenceScreen());
        addPreferenceController(controller);
    }