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

Commit e0adf5bf authored by Jason Hsu's avatar Jason Hsu Committed by Android (Google) Code Review
Browse files

Merge "Change the name of accessibility service fragment type to more...

Merge "Change the name of accessibility service fragment type to more descriptive names" into rvc-dev
parents 6fcac1d3 43daeb90
Loading
Loading
Loading
Loading
+10 −7
Original line number Diff line number Diff line
@@ -269,7 +269,7 @@ public class AccessibilitySettings extends DashboardFragment {

        final CharSequence serviceState;
        final int fragmentType = AccessibilityUtil.getAccessibilityServiceFragmentType(info);
        if (fragmentType == AccessibilityServiceFragmentType.INVISIBLE) {
        if (fragmentType == AccessibilityServiceFragmentType.INVISIBLE_TOGGLE) {
            final ComponentName componentName = new ComponentName(
                    info.getResolveInfo().serviceInfo.packageName,
                    info.getResolveInfo().serviceInfo.name);
@@ -652,13 +652,16 @@ public class AccessibilitySettings extends DashboardFragment {
        }

        private String getAccessibilityServiceFragmentTypeName(AccessibilityServiceInfo info) {
            switch (AccessibilityUtil.getAccessibilityServiceFragmentType(
                    info)) {
                case AccessibilityServiceFragmentType.LEGACY:
                    return LegacyAccessibilityServicePreferenceFragment.class.getName();
                case AccessibilityServiceFragmentType.INVISIBLE:
            // Shorten the name to avoid exceeding 100 characters in one line.
            final String volumeShortcutToggleAccessibilityServicePreferenceFragment =
                    VolumeShortcutToggleAccessibilityServicePreferenceFragment.class.getName();

            switch (AccessibilityUtil.getAccessibilityServiceFragmentType(info)) {
                case AccessibilityServiceFragmentType.VOLUME_SHORTCUT_TOGGLE:
                    return volumeShortcutToggleAccessibilityServicePreferenceFragment;
                case AccessibilityServiceFragmentType.INVISIBLE_TOGGLE:
                    return InvisibleToggleAccessibilityServicePreferenceFragment.class.getName();
                case AccessibilityServiceFragmentType.INTUITIVE:
                case AccessibilityServiceFragmentType.TOGGLE:
                    return ToggleAccessibilityServicePreferenceFragment.class.getName();
                default:
                    // impossible status
+6 −6
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@

package com.android.settings.accessibility;

import static com.android.settings.accessibility.AccessibilityUtil.AccessibilityServiceFragmentType.LEGACY;
import static com.android.settings.accessibility.AccessibilityUtil.AccessibilityServiceFragmentType.VOLUME_SHORTCUT_TOGGLE;

import android.accessibilityservice.AccessibilityServiceInfo;
import android.app.settings.SettingsEnums;
@@ -102,10 +102,10 @@ public class AccessibilitySettingsForSetupWizard extends SettingsPreferenceFragm
        super.onResume();
        updateAccessibilityServicePreference(mScreenReaderPreference,
                SCREEN_READER_PACKAGE_NAME, SCREEN_READER_SERVICE_NAME,
                LegacyToggleScreenReaderPreferenceFragmentForSetupWizard.class.getName());
                VolumeShortcutToggleScreenReaderPreferenceFragmentForSetupWizard.class.getName());
        updateAccessibilityServicePreference(mSelectToSpeakPreference,
                SELECT_TO_SPEAK_PACKAGE_NAME, SELECT_TO_SPEAK_SERVICE_NAME,
                LegacyToggleSelectToSpeakPreferenceFragmentForSetupWizard.class.getName());
                VolumeShortcutToggleSelectToSpeakPreferenceFragmentForSetupWizard.class.getName());
        configureMagnificationPreferenceIfNeeded(mDisplayMagnificationPreference);
    }

@@ -147,7 +147,7 @@ public class AccessibilitySettingsForSetupWizard extends SettingsPreferenceFragm
    }

    private void updateAccessibilityServicePreference(Preference preference,
            String packageName, String serviceName, String targetLegacyFragment) {
            String packageName, String serviceName, String targetFragment) {
        final AccessibilityServiceInfo info = findService(packageName, serviceName);
        if (info == null) {
            getPreferenceScreen().removePreference(preference);
@@ -159,8 +159,8 @@ public class AccessibilitySettingsForSetupWizard extends SettingsPreferenceFragm
        preference.setTitle(title);
        ComponentName componentName = new ComponentName(serviceInfo.packageName, serviceInfo.name);
        preference.setKey(componentName.flattenToString());
        if (AccessibilityUtil.getAccessibilityServiceFragmentType(info) == LEGACY) {
            preference.setFragment(targetLegacyFragment);
        if (AccessibilityUtil.getAccessibilityServiceFragmentType(info) == VOLUME_SHORTCUT_TOGGLE) {
            preference.setFragment(targetFragment);
        }

        // Update the extras.
+14 −13
Original line number Diff line number Diff line
@@ -46,22 +46,23 @@ final class AccessibilityUtil {
    /**
     * Annotation for different accessibilityService fragment UI type.
     *
     * {@code LEGACY} for displaying appearance aligned with sdk version Q accessibility service
     * page, but only hardware shortcut allowed.
     * {@code INVISIBLE} for displaying appearance without switch bar.
     * {@code INTUITIVE} for displaying appearance with new design.
     * {@code VOLUME_SHORTCUT_TOGGLE} for displaying basic accessibility service fragment but
     * only hardware shortcut allowed.
     * {@code INVISIBLE_TOGGLE} for displaying basic accessibility service fragment without
     * switch bar.
     * {@code TOGGLE} for displaying basic accessibility service fragment.
     */
    @Retention(RetentionPolicy.SOURCE)
    @IntDef({
            AccessibilityServiceFragmentType.LEGACY,
            AccessibilityServiceFragmentType.INVISIBLE,
            AccessibilityServiceFragmentType.INTUITIVE,
            AccessibilityServiceFragmentType.VOLUME_SHORTCUT_TOGGLE,
            AccessibilityServiceFragmentType.INVISIBLE_TOGGLE,
            AccessibilityServiceFragmentType.TOGGLE,
    })

    public @interface AccessibilityServiceFragmentType {
        int LEGACY = 0;
        int INVISIBLE = 1;
        int INTUITIVE = 2;
        int VOLUME_SHORTCUT_TOGGLE = 0;
        int INVISIBLE_TOGGLE = 1;
        int TOGGLE = 2;
    }

    // TODO(b/147021230): Will move common functions and variables to
@@ -162,11 +163,11 @@ final class AccessibilityUtil {
                & AccessibilityServiceInfo.FLAG_REQUEST_ACCESSIBILITY_BUTTON) != 0;

        if (targetSdk <= Build.VERSION_CODES.Q) {
            return AccessibilityServiceFragmentType.LEGACY;
            return AccessibilityServiceFragmentType.VOLUME_SHORTCUT_TOGGLE;
        }
        return requestA11yButton
                ? AccessibilityServiceFragmentType.INVISIBLE
                : AccessibilityServiceFragmentType.INTUITIVE;
                ? AccessibilityServiceFragmentType.INVISIBLE_TOGGLE
                : AccessibilityServiceFragmentType.TOGGLE;
    }

    /**
+1 −1
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ import com.google.common.collect.ImmutableSet;
 *
 * <p>For accessibility services that target SDK <= Q.
 */
public class LegacyAccessibilityServicePreferenceFragment extends
public class VolumeShortcutToggleAccessibilityServicePreferenceFragment extends
        ToggleAccessibilityServicePreferenceFragment {

    @Override
+2 −2
Original line number Diff line number Diff line
@@ -21,8 +21,8 @@ import android.os.Bundle;
import android.view.View;

/** For accessibility services that target SDK <= Q in setup wizard. */
public class LegacyToggleScreenReaderPreferenceFragmentForSetupWizard
        extends LegacyAccessibilityServicePreferenceFragment {
public class VolumeShortcutToggleScreenReaderPreferenceFragmentForSetupWizard
        extends VolumeShortcutToggleAccessibilityServicePreferenceFragment {

    private boolean mToggleSwitchWasInitiallyChecked;

Loading