summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Daniel Norman <danielnorman@google.com> 2023-03-22 02:07:46 +0000
committer Daniel Norman <danielnorman@google.com> 2023-03-22 17:34:45 +0000
commit1f042f4047c374727b22992a44a5c45164d24f21 (patch)
treed06c6dd8907e78ca56d02864fbe422278c280f71
parent204f951464cbc94791e20e4c96a12dc0b8d116c3 (diff)
Revert "Add new APIs to provide a hint to the AccessibilityServi..."
Revert submission 21320459-chunkulin-a11yNode-setTouchPassthrough Reason for revert: TB is unsure on specific UX for using this, so removing as a FW API for Android U with plans to reland & prototype in AndroidX for now Bug: 274703184 Reverted changes: /q/submissionid:21320459-chunkulin-a11yNode-setTouchPassthrough Change-Id: Iedb2945b64e6cb84e83f8f9e3111517d6c55bf67
-rw-r--r--core/api/current.txt2
-rw-r--r--core/java/android/view/accessibility/AccessibilityNodeInfo.java51
-rw-r--r--core/tests/coretests/src/android/view/accessibility/AccessibilityNodeInfoTest.java2
3 files changed, 2 insertions, 53 deletions
diff --git a/core/api/current.txt b/core/api/current.txt
index 70dcd542d715..7f85eabeab3f 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -54327,7 +54327,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();
@@ -54411,7 +54410,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);
diff --git a/core/java/android/view/accessibility/AccessibilityNodeInfo.java b/core/java/android/view/accessibility/AccessibilityNodeInfo.java
index 9d82b7900689..28e275999efb 100644
--- a/core/java/android/view/accessibility/AccessibilityNodeInfo.java
+++ b/core/java/android/view/accessibility/AccessibilityNodeInfo.java
@@ -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.
@@ -2599,53 +2597,6 @@ public class AccessibilityNodeInfo implements Parcelable {
}
/**
- * 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.
*
* @return True if the node is editable, false otherwise.
diff --git a/core/tests/coretests/src/android/view/accessibility/AccessibilityNodeInfoTest.java b/core/tests/coretests/src/android/view/accessibility/AccessibilityNodeInfoTest.java
index 3d4918b1bd42..6d635af20645 100644
--- a/core/tests/coretests/src/android/view/accessibility/AccessibilityNodeInfoTest.java
+++ b/core/tests/coretests/src/android/view/accessibility/AccessibilityNodeInfoTest.java
@@ -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() {