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

Commit 8a0bc4af authored by Daniel Norman's avatar Daniel Norman Committed by Android (Google) Code Review
Browse files

Merge "Revert "Replace ShortcutType with UserShortcutType to reduce dup..."" into main

parents d873062c d5667a51
Loading
Loading
Loading
Loading
+43 −3
Original line number Diff line number Diff line
@@ -67,7 +67,6 @@ import android.view.View;
import android.view.accessibility.AccessibilityEvent.EventType;

import com.android.internal.R;
import com.android.internal.accessibility.common.ShortcutConstants;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.util.IntPair;

@@ -157,6 +156,22 @@ public final class AccessibilityManager {
    public static final String ACTION_CHOOSE_ACCESSIBILITY_BUTTON =
            "com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON";

    /**
     * Used as an int value for accessibility chooser activity to represent the accessibility button
     * shortcut type.
     *
     * @hide
     */
    public static final int ACCESSIBILITY_BUTTON = 0;

    /**
     * Used as an int value for accessibility chooser activity to represent hardware key shortcut,
     * such as volume key button.
     *
     * @hide
     */
    public static final int ACCESSIBILITY_SHORTCUT_KEY = 1;

    /** @hide */
    public static final int FLASH_REASON_CALL = 1;

@@ -169,6 +184,32 @@ public final class AccessibilityManager {
    /** @hide */
    public static final int FLASH_REASON_PREVIEW = 4;

    /**
     * Annotations for the shortcut type.
     * <p>Note: Keep in sync with {@link #SHORTCUT_TYPES}.</p>
     * @hide
     */
    @Retention(RetentionPolicy.SOURCE)
    @IntDef(value = {
            // LINT.IfChange(shortcut_type_intdef)
            ACCESSIBILITY_BUTTON,
            ACCESSIBILITY_SHORTCUT_KEY
            // LINT.ThenChange(:shortcut_type_array)
    })
    public @interface ShortcutType {}

    /**
     * Used for iterating through {@link ShortcutType}.
     * <p>Note: Keep in sync with {@link ShortcutType}.</p>
     * @hide
     */
    public static final int[] SHORTCUT_TYPES = {
            // LINT.IfChange(shortcut_type_array)
            ACCESSIBILITY_BUTTON,
            ACCESSIBILITY_SHORTCUT_KEY,
            // LINT.ThenChange(:shortcut_type_intdef)
    };

    /**
     * Annotations for content flag of UI.
     * @hide
@@ -1745,8 +1786,7 @@ public final class AccessibilityManager {
    @TestApi
    @RequiresPermission(Manifest.permission.MANAGE_ACCESSIBILITY)
    @NonNull
    public List<String> getAccessibilityShortcutTargets(
            @ShortcutConstants.UserShortcutType int shortcutType) {
    public List<String> getAccessibilityShortcutTargets(@ShortcutType int shortcutType) {
        final IAccessibilityManager service;
        synchronized (mLock) {
            service = getServiceLocked();
+3 −3
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.internal.accessibility;

import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK;
import static android.view.WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG;
import static android.view.accessibility.AccessibilityManager.ACCESSIBILITY_SHORTCUT_KEY;

import static com.android.internal.accessibility.dialog.AccessibilityTargetHelper.getTargets;
import static com.android.internal.os.RoSystemProperties.SUPPORT_ONE_HANDED_MODE;
@@ -328,8 +329,7 @@ public class AccessibilityShortcutController {
    }

    private AlertDialog createShortcutWarningDialog(int userId) {
        List<AccessibilityTarget> targets = getTargets(mContext,
                ShortcutConstants.UserShortcutType.HARDWARE);
        List<AccessibilityTarget> targets = getTargets(mContext, ACCESSIBILITY_SHORTCUT_KEY);
        if (targets.size() == 0) {
            return null;
        }
@@ -541,7 +541,7 @@ public class AccessibilityShortcutController {
    private ComponentName getShortcutTargetComponentName() {
        final List<String> shortcutTargets = mFrameworkObjectProvider
                .getAccessibilityManagerInstance(mContext)
                .getAccessibilityShortcutTargets(ShortcutConstants.UserShortcutType.HARDWARE);
                .getAccessibilityShortcutTargets(ACCESSIBILITY_SHORTCUT_KEY);
        if (shortcutTargets.size() != 1) {
            return null;
        }
+10 −21
Original line number Diff line number Diff line
@@ -44,27 +44,19 @@ public final class ShortcutConstants {
     * choose accessibility shortcut as preferred shortcut.
     * {@code TRIPLETAP} for displaying specifying magnification to be toggled via quickly
     * tapping screen 3 times as preferred shortcut.
     * {@code TWO_FINGERS_TRIPLE_TAP} for displaying specifying magnification to be toggled via
     * quickly tapping screen 3 times with two fingers as preferred shortcut.
     */
    @Retention(RetentionPolicy.SOURCE)
    @IntDef(
            flag = true,
            value = {
    @IntDef({
            UserShortcutType.DEFAULT,
            UserShortcutType.SOFTWARE,
            UserShortcutType.HARDWARE,
            UserShortcutType.TRIPLETAP,
                    UserShortcutType.TWO_FINGERS_TRIPLE_TAP,
    })
    public @interface UserShortcutType {
        int DEFAULT = 0;
        // LINT.IfChange(shortcut_type_intdef)
        int SOFTWARE = 1;
        int HARDWARE = 1 << 1;
        int TRIPLETAP = 1 << 2;
        int TWO_FINGERS_TRIPLE_TAP = 1 << 3;
        // LINT.ThenChange(:shortcut_type_array)
        int SOFTWARE = 1; // 1 << 0
        int HARDWARE = 2; // 1 << 1
        int TRIPLETAP = 4; // 1 << 2
    }

    /**
@@ -72,12 +64,9 @@ public final class ShortcutConstants {
     * non-default IntDef types.
     */
    public static final int[] USER_SHORTCUT_TYPES = {
            // LINT.IfChange(shortcut_type_array)
            UserShortcutType.SOFTWARE,
            UserShortcutType.HARDWARE,
            UserShortcutType.TRIPLETAP,
            UserShortcutType.TWO_FINGERS_TRIPLE_TAP,
            // LINT.ThenChange(:shortcut_type_intdef)
            UserShortcutType.TRIPLETAP
    };


+4 −4
Original line number Diff line number Diff line
@@ -17,13 +17,14 @@
package com.android.internal.accessibility.dialog;

import static com.android.internal.accessibility.util.ShortcutUtils.convertToKey;
import static com.android.internal.accessibility.util.ShortcutUtils.convertToUserType;
import static com.android.internal.accessibility.util.ShortcutUtils.isShortcutContained;

import android.accessibilityservice.AccessibilityShortcutInfo;
import android.annotation.NonNull;
import android.content.Context;
import android.view.accessibility.AccessibilityManager.ShortcutType;

import com.android.internal.accessibility.common.ShortcutConstants;
import com.android.internal.accessibility.common.ShortcutConstants.AccessibilityFragmentType;
import com.android.internal.accessibility.common.ShortcutConstants.ShortcutMenuMode;

@@ -32,8 +33,7 @@ import com.android.internal.accessibility.common.ShortcutConstants.ShortcutMenuM
 */
class AccessibilityActivityTarget extends AccessibilityTarget {

    AccessibilityActivityTarget(Context context,
            @ShortcutConstants.UserShortcutType int shortcutType,
    AccessibilityActivityTarget(Context context, @ShortcutType int shortcutType,
            @NonNull AccessibilityShortcutInfo shortcutInfo) {
        super(context,
                shortcutType,
@@ -44,7 +44,7 @@ class AccessibilityActivityTarget extends AccessibilityTarget {
                shortcutInfo.getActivityInfo().applicationInfo.uid,
                shortcutInfo.getActivityInfo().loadLabel(context.getPackageManager()),
                shortcutInfo.getActivityInfo().loadIcon(context.getPackageManager()),
                convertToKey(shortcutType));
                convertToKey(convertToUserType(shortcutType)));
    }

    @Override
+2 −2
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.internal.accessibility.dialog;

import static android.view.WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL;
import static android.view.accessibility.AccessibilityManager.ACCESSIBILITY_BUTTON;

import static com.android.internal.accessibility.AccessibilityShortcutController.MAGNIFICATION_COMPONENT_NAME;
import static com.android.internal.accessibility.AccessibilityShortcutController.MAGNIFICATION_CONTROLLER_NAME;
@@ -35,7 +36,6 @@ import android.widget.GridView;
import android.widget.TextView;

import com.android.internal.R;
import com.android.internal.accessibility.common.ShortcutConstants;
import com.android.internal.widget.ResolverDrawerLayout;

import java.util.ArrayList;
@@ -85,7 +85,7 @@ public class AccessibilityButtonChooserActivity extends Activity {
            prompt.setVisibility(View.VISIBLE);
        }

        mTargets.addAll(getTargets(this, ShortcutConstants.UserShortcutType.SOFTWARE));
        mTargets.addAll(getTargets(this, ACCESSIBILITY_BUTTON));

        final GridView gridview = findViewById(R.id.accessibility_button_chooser_grid);
        gridview.setAdapter(new ButtonTargetAdapter(mTargets));
Loading