Loading core/java/android/view/ViewAncestor.java +8 −5 Original line number Original line Diff line number Diff line Loading @@ -4407,7 +4407,7 @@ public final class ViewAncestor extends Handler implements ViewParent, predicate.init(accessibilityId); predicate.init(accessibilityId); View root = ViewAncestor.this.mView; View root = ViewAncestor.this.mView; View target = root.findViewByPredicate(predicate); View target = root.findViewByPredicate(predicate); if (target != null) { if (target != null && target.isShown()) { info = target.createAccessibilityNodeInfo(); info = target.createAccessibilityNodeInfo(); } } } finally { } finally { Loading Loading @@ -4439,7 +4439,7 @@ public final class ViewAncestor extends Handler implements ViewParent, try { try { View root = ViewAncestor.this.mView; View root = ViewAncestor.this.mView; View target = root.findViewById(viewId); View target = root.findViewById(viewId); if (target != null) { if (target != null && target.isShown()) { info = target.createAccessibilityNodeInfo(); info = target.createAccessibilityNodeInfo(); } } } finally { } finally { Loading Loading @@ -4486,7 +4486,7 @@ public final class ViewAncestor extends Handler implements ViewParent, root = ViewAncestor.this.mView; root = ViewAncestor.this.mView; } } if (root == null) { if (root == null || !root.isShown()) { return; return; } } Loading @@ -4501,8 +4501,10 @@ public final class ViewAncestor extends Handler implements ViewParent, final int viewCount = foundViews.size(); final int viewCount = foundViews.size(); for (int i = 0; i < viewCount; i++) { for (int i = 0; i < viewCount; i++) { View foundView = foundViews.get(i); View foundView = foundViews.get(i); if (foundView.isShown()) { infos.add(foundView.createAccessibilityNodeInfo()); infos.add(foundView.createAccessibilityNodeInfo()); } } } } finally { } finally { try { try { callback.setFindAccessibilityNodeInfosResult(infos, interactionId); callback.setFindAccessibilityNodeInfosResult(infos, interactionId); Loading Loading @@ -4611,7 +4613,8 @@ public final class ViewAncestor extends Handler implements ViewParent, return null; return null; } } mFindByAccessibilityIdPredicate.init(accessibilityId); mFindByAccessibilityIdPredicate.init(accessibilityId); return root.findViewByPredicate(mFindByAccessibilityIdPredicate); View foundView = root.findViewByPredicate(mFindByAccessibilityIdPredicate); return (foundView != null && foundView.isShown()) ? foundView : null; } } private final class FindByAccessibilitytIdPredicate implements Predicate<View> { private final class FindByAccessibilitytIdPredicate implements Predicate<View> { Loading core/java/android/view/ViewGroup.java +3 −2 Original line number Original line Diff line number Diff line Loading @@ -2023,12 +2023,13 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager @Override @Override public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) { public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(info); super.onInitializeAccessibilityNodeInfo(info); for (int i = 0, count = mChildrenCount; i < count; i++) { for (int i = 0, count = mChildrenCount; i < count; i++) { View child = mChildren[i]; View child = mChildren[i]; if ((child.mViewFlags & VISIBILITY_MASK) == VISIBLE) { info.addChild(child); info.addChild(child); } } } } } /** /** * {@inheritDoc} * {@inheritDoc} Loading Loading
core/java/android/view/ViewAncestor.java +8 −5 Original line number Original line Diff line number Diff line Loading @@ -4407,7 +4407,7 @@ public final class ViewAncestor extends Handler implements ViewParent, predicate.init(accessibilityId); predicate.init(accessibilityId); View root = ViewAncestor.this.mView; View root = ViewAncestor.this.mView; View target = root.findViewByPredicate(predicate); View target = root.findViewByPredicate(predicate); if (target != null) { if (target != null && target.isShown()) { info = target.createAccessibilityNodeInfo(); info = target.createAccessibilityNodeInfo(); } } } finally { } finally { Loading Loading @@ -4439,7 +4439,7 @@ public final class ViewAncestor extends Handler implements ViewParent, try { try { View root = ViewAncestor.this.mView; View root = ViewAncestor.this.mView; View target = root.findViewById(viewId); View target = root.findViewById(viewId); if (target != null) { if (target != null && target.isShown()) { info = target.createAccessibilityNodeInfo(); info = target.createAccessibilityNodeInfo(); } } } finally { } finally { Loading Loading @@ -4486,7 +4486,7 @@ public final class ViewAncestor extends Handler implements ViewParent, root = ViewAncestor.this.mView; root = ViewAncestor.this.mView; } } if (root == null) { if (root == null || !root.isShown()) { return; return; } } Loading @@ -4501,8 +4501,10 @@ public final class ViewAncestor extends Handler implements ViewParent, final int viewCount = foundViews.size(); final int viewCount = foundViews.size(); for (int i = 0; i < viewCount; i++) { for (int i = 0; i < viewCount; i++) { View foundView = foundViews.get(i); View foundView = foundViews.get(i); if (foundView.isShown()) { infos.add(foundView.createAccessibilityNodeInfo()); infos.add(foundView.createAccessibilityNodeInfo()); } } } } finally { } finally { try { try { callback.setFindAccessibilityNodeInfosResult(infos, interactionId); callback.setFindAccessibilityNodeInfosResult(infos, interactionId); Loading Loading @@ -4611,7 +4613,8 @@ public final class ViewAncestor extends Handler implements ViewParent, return null; return null; } } mFindByAccessibilityIdPredicate.init(accessibilityId); mFindByAccessibilityIdPredicate.init(accessibilityId); return root.findViewByPredicate(mFindByAccessibilityIdPredicate); View foundView = root.findViewByPredicate(mFindByAccessibilityIdPredicate); return (foundView != null && foundView.isShown()) ? foundView : null; } } private final class FindByAccessibilitytIdPredicate implements Predicate<View> { private final class FindByAccessibilitytIdPredicate implements Predicate<View> { Loading
core/java/android/view/ViewGroup.java +3 −2 Original line number Original line Diff line number Diff line Loading @@ -2023,12 +2023,13 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager @Override @Override public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) { public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(info); super.onInitializeAccessibilityNodeInfo(info); for (int i = 0, count = mChildrenCount; i < count; i++) { for (int i = 0, count = mChildrenCount; i < count; i++) { View child = mChildren[i]; View child = mChildren[i]; if ((child.mViewFlags & VISIBILITY_MASK) == VISIBLE) { info.addChild(child); info.addChild(child); } } } } } /** /** * {@inheritDoc} * {@inheritDoc} Loading