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

Commit 23e7a38c authored by Daniel Norman's avatar Daniel Norman Committed by Automerger Merge Worker
Browse files

Merge "Revert "Add new APIs to provide a hint to the AccessibilityServi...""...

Merge "Revert "Add new APIs to provide a hint to the AccessibilityServi..."" into udc-dev am: 90b21ce6

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22190979



Change-Id: I9323f5d030a2148a13bb74e7441fbe80c901c714
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents b51566e9 90b21ce6
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -54326,7 +54326,6 @@ package android.view.accessibility {
    method public android.view.accessibility.AccessibilityWindowInfo getWindow();
    method public int getWindowId();
    method public boolean hasRequestInitialAccessibilityFocus();
    method public boolean hasRequestTouchPassthrough();
    method public boolean isAccessibilityDataSensitive();
    method public boolean isAccessibilityFocused();
    method public boolean isCheckable();
@@ -54410,7 +54409,6 @@ package android.view.accessibility {
    method public void setQueryFromAppProcessEnabled(@NonNull android.view.View, boolean);
    method public void setRangeInfo(android.view.accessibility.AccessibilityNodeInfo.RangeInfo);
    method public void setRequestInitialAccessibilityFocus(boolean);
    method public void setRequestTouchPassthrough(boolean);
    method public void setScreenReaderFocusable(boolean);
    method public void setScrollable(boolean);
    method public void setSelected(boolean);
+1 −50
Original line number Diff line number Diff line
@@ -832,9 +832,7 @@ public class AccessibilityNodeInfo implements Parcelable {

    private static final int BOOLEAN_PROPERTY_REQUEST_INITIAL_ACCESSIBILITY_FOCUS = 1 << 24;

    private static final int BOOLEAN_PROPERTY_REQUEST_TOUCH_PASSTHROUGH = 1 << 25;

    private static final int BOOLEAN_PROPERTY_ACCESSIBILITY_DATA_SENSITIVE = 1 << 26;
    private static final int BOOLEAN_PROPERTY_ACCESSIBILITY_DATA_SENSITIVE = 1 << 25;

    /**
     * Bits that provide the id of a virtual descendant of a view.
@@ -2598,53 +2596,6 @@ public class AccessibilityNodeInfo implements Parcelable {
        setBooleanProperty(BOOLEAN_PROPERTY_EDITABLE, editable);
    }

    /**
     * Gets whether this node is one of the candidates that wants touch interaction within its
     * screen bounds to bypass the touch exploration and go straight to the underlying view
     * hierarchy.
     *
     * <p>
     * {@link android.accessibilityservice.AccessibilityService} could aggregate the {@link
     * #getBoundsInScreen()} that has request touch passthrough, and/or doing complex calculation
     * with other views that doesn't request touch passthrough, and call {@link
     * AccessibilityService#setTouchExplorationPassthroughRegion(int, Region)} to bypass the touch
     * interactions to the underlying views within the region.
     * </p>
     *
     * @return True if the node wants touch interaction within its screen bounds to bypass touch
     * exploration and go straight to the underlying view hierarchy; false otherwise.
     */
    public boolean hasRequestTouchPassthrough() {
        return getBooleanProperty(BOOLEAN_PROPERTY_REQUEST_TOUCH_PASSTHROUGH);
    }

    /**
     * Sets whether this node wants touch interaction within its screen bounds to bypass touch
     * exploration and go straight to the underlying view hierarchy.
     * <p>
     *   <strong>Note:</strong> This property allows the
     *   {@link android.accessibilityservice.AccessibilityService} to calculate the
     *   aggregated touch passthrough region. App developers need to ensure that the
     *   {@link #getBoundsInScreen()} of
     *   the node align with the region they want touchable, and that child nodes overlapping these
     *   bounds may cause that region to be reduced.
     * </p>
     *
     * <p>
     *   <strong>Note:</strong> Cannot be called from an
     *   {@link android.accessibilityservice.AccessibilityService}.
     *   This class is made immutable before being delivered to an AccessibilityService.
     * </p>
     *
     * @param touchPassthrough True if the node wants touch interaction within its screen bounds
     *                         to bypass touch exploration and go straight to the underlying view
     *                         hierarchy.
     * @throws IllegalStateException If called from an AccessibilityService.
     */
    public void setRequestTouchPassthrough(boolean touchPassthrough) {
        setBooleanProperty(BOOLEAN_PROPERTY_REQUEST_TOUCH_PASSTHROUGH, touchPassthrough);
    }

    /**
     * Gets if the node's accessibility data is considered sensitive.
     *
+1 −1
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ public class AccessibilityNodeInfoTest {

    // The number of flags held in boolean properties. Their values should also be double-checked
    // in the methods above.
    private static final int NUM_BOOLEAN_PROPERTIES = 27;
    private static final int NUM_BOOLEAN_PROPERTIES = 26;

    @Test
    public void testStandardActions_serializationFlagIsValid() {