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

Commit 347d803d authored by Hongming Jin's avatar Hongming Jin
Browse files

Convert AccessibilityAction into a parcelable.

Bug: 136286274
Test: atest AccessiblitityActionTest
Change-Id: I74e2c76eede0a370cefe5250f6d7fd61017e4c3b
parent 66b1e081
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -52646,10 +52646,12 @@ package android.view.accessibility {
    field public static final int MOVEMENT_GRANULARITY_WORD = 2; // 0x2
    field public static final int MOVEMENT_GRANULARITY_WORD = 2; // 0x2
  }
  }
  public static final class AccessibilityNodeInfo.AccessibilityAction {
  public static final class AccessibilityNodeInfo.AccessibilityAction implements android.os.Parcelable {
    ctor public AccessibilityNodeInfo.AccessibilityAction(int, @Nullable CharSequence);
    ctor public AccessibilityNodeInfo.AccessibilityAction(int, @Nullable CharSequence);
    method public int describeContents();
    method public int getId();
    method public int getId();
    method public CharSequence getLabel();
    method public CharSequence getLabel();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_ACCESSIBILITY_FOCUS;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_ACCESSIBILITY_FOCUS;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_ACCESSIBILITY_FOCUS;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_ACCESSIBILITY_FOCUS;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_FOCUS;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_FOCUS;
@@ -52687,6 +52689,7 @@ package android.view.accessibility {
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_TEXT;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_TEXT;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_ON_SCREEN;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_ON_SCREEN;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TOOLTIP;
    field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TOOLTIP;
    field @NonNull public static final android.os.Parcelable.Creator<android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction> CREATOR;
  }
  }
  public static final class AccessibilityNodeInfo.CollectionInfo {
  public static final class AccessibilityNodeInfo.CollectionInfo {
+1 −0
Original line number Original line Diff line number Diff line
@@ -17,3 +17,4 @@
package android.view.accessibility;
package android.view.accessibility;


parcelable AccessibilityNodeInfo;
parcelable AccessibilityNodeInfo;
parcelable AccessibilityNodeInfo.AccessibilityAction;
+36 −5
Original line number Original line Diff line number Diff line
@@ -3570,8 +3570,7 @@ public class AccessibilityNodeInfo implements Parcelable {
                for (int i = 0; i < actionCount; i++) {
                for (int i = 0; i < actionCount; i++) {
                    AccessibilityAction action = mActions.get(i);
                    AccessibilityAction action = mActions.get(i);
                    if (!isDefaultStandardAction(action)) {
                    if (!isDefaultStandardAction(action)) {
                        parcel.writeInt(action.getId());
                        action.writeToParcel(parcel, flags);
                        parcel.writeCharSequence(action.getLabel());
                    }
                    }
                }
                }
            } else {
            } else {
@@ -3777,8 +3776,8 @@ public class AccessibilityNodeInfo implements Parcelable {
            addStandardActions(standardActions);
            addStandardActions(standardActions);
            final int nonStandardActionCount = parcel.readInt();
            final int nonStandardActionCount = parcel.readInt();
            for (int i = 0; i < nonStandardActionCount; i++) {
            for (int i = 0; i < nonStandardActionCount; i++) {
                final AccessibilityAction action = new AccessibilityAction(
                final AccessibilityAction action =
                        parcel.readInt(), parcel.readCharSequence());
                        AccessibilityAction.CREATOR.createFromParcel(parcel);
                addActionUnchecked(action);
                addActionUnchecked(action);
            }
            }
        }
        }
@@ -4177,7 +4176,7 @@ public class AccessibilityNodeInfo implements Parcelable {
     * can discover the set of supported actions.
     * can discover the set of supported actions.
     * </p>
     * </p>
     */
     */
    public static final class AccessibilityAction {
    public static final class AccessibilityAction implements Parcelable {


        /** @hide */
        /** @hide */
        public static final ArraySet<AccessibilityAction> sStandardActions = new ArraySet<>();
        public static final ArraySet<AccessibilityAction> sStandardActions = new ArraySet<>();
@@ -4654,6 +4653,38 @@ public class AccessibilityNodeInfo implements Parcelable {
        public String toString() {
        public String toString() {
            return "AccessibilityAction: " + getActionSymbolicName(mActionId) + " - " + mLabel;
            return "AccessibilityAction: " + getActionSymbolicName(mActionId) + " - " + mLabel;
        }
        }

        /**
         * {@inheritDoc}
         */
        @Override
        public int describeContents() {
            return 0;
        }

        /**
         * Write data into a parcel.
         */
        public void writeToParcel(@NonNull Parcel out, int flags) {
            out.writeInt(mActionId);
            out.writeCharSequence(mLabel);
        }

        public static final @NonNull Parcelable.Creator<AccessibilityAction> CREATOR =
                new Parcelable.Creator<AccessibilityAction>() {
                    public AccessibilityAction createFromParcel(Parcel in) {
                        return new AccessibilityAction(in);
                    }

                    public AccessibilityAction[] newArray(int size) {
                        return new AccessibilityAction[size];
                    }
                };

        private AccessibilityAction(Parcel in) {
            mActionId = in.readInt();
            mLabel = in.readCharSequence();
        }
    }
    }


    /**
    /**