am 239a0c0e: Ensure ViewRootImpl.setAccessibilityFocus() doesn\'t crash when reentrant.
* commit '239a0c0e6a6fc36025fdb1c662e1c7acaec144bb': Ensure ViewRootImpl.setAccessibilityFocus() doesn't crash when reentrant.
This commit is contained in:
@@ -2709,7 +2709,6 @@ public final class ViewRootImpl implements ViewParent,
|
||||
|
||||
AccessibilityNodeInfo focusNode = mAccessibilityFocusedVirtualView;
|
||||
View focusHost = mAccessibilityFocusedHost;
|
||||
focusHost.clearAccessibilityFocusNoCallbacks();
|
||||
|
||||
// Wipe the state of the current accessibility focus since
|
||||
// the call into the provider to clear accessibility focus
|
||||
@@ -2719,6 +2718,10 @@ public final class ViewRootImpl implements ViewParent,
|
||||
mAccessibilityFocusedHost = null;
|
||||
mAccessibilityFocusedVirtualView = null;
|
||||
|
||||
// Clear accessibility focus on the host after clearing state since
|
||||
// this method may be reentrant.
|
||||
focusHost.clearAccessibilityFocusNoCallbacks();
|
||||
|
||||
AccessibilityNodeProvider provider = focusHost.getAccessibilityNodeProvider();
|
||||
if (provider != null) {
|
||||
// Invalidate the area of the cleared accessibility focus.
|
||||
|
||||
Reference in New Issue
Block a user