Merge "Fix finding views by accessibility id." into mnc-dev
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 1e92a06..68588b5 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -18290,7 +18290,11 @@
if (accessibilityId < 0) {
return null;
}
- return findViewByAccessibilityIdTraversal(accessibilityId);
+ View view = findViewByAccessibilityIdTraversal(accessibilityId);
+ if (view != null) {
+ return view.includeForAccessibility() ? view : null;
+ }
+ return null;
}
/**
diff --git a/core/java/android/view/ViewGroup.java b/core/java/android/view/ViewGroup.java
index e015c04..dd32f85 100644
--- a/core/java/android/view/ViewGroup.java
+++ b/core/java/android/view/ViewGroup.java
@@ -1173,6 +1173,11 @@
if (foundView != null) {
return foundView;
}
+
+ if (getAccessibilityNodeProvider() != null) {
+ return null;
+ }
+
final int childrenCount = mChildrenCount;
final View[] children = mChildren;
for (int i = 0; i < childrenCount; i++) {
@@ -1182,6 +1187,7 @@
return foundView;
}
}
+
return null;
}