Loading core/java/android/view/ViewRootImpl.java +23 −15 Original line number Diff line number Diff line Loading @@ -4875,20 +4875,12 @@ public final class ViewRootImpl implements ViewParent, dirty.offset(surfaceInsets.left, surfaceInsets.top); } boolean accessibilityFocusDirty = false; final Drawable drawable = mAttachInfo.mAccessibilityFocusDrawable; if (drawable != null) { final Rect bounds = mAttachInfo.mTmpInvalRect; final boolean hasFocus = getAccessibilityFocusedRect(bounds); if (!hasFocus) { bounds.setEmpty(); } if (!bounds.equals(drawable.getBounds())) { accessibilityFocusDirty = true; boolean accessibilityFocusDirty = isAccessibilityFocusDirty(); // Force recalculation of transparent regions if (accessibilityFocusDirty) { requestLayout(); } } mAttachInfo.mDrawingTime = mChoreographer.getFrameTimeNanos() / TimeUtils.NANOS_PER_MS; Loading Loading @@ -5434,8 +5426,9 @@ public final class ViewRootImpl implements ViewParent, mAccessibilityFocusedVirtualView = node; updateKeepClearForAccessibilityFocusRect(); if (mAttachInfo.mThreadedRenderer != null) { mAttachInfo.mThreadedRenderer.invalidateRoot(); requestInvalidateRootRenderNode(); if (isAccessibilityFocusDirty()) { scheduleTraversals(); } } Loading Loading @@ -9831,6 +9824,21 @@ public final class ViewRootImpl implements ViewParent, return AccessibilityNodeIdManager.getInstance().findView(accessibilityViewId); } private boolean isAccessibilityFocusDirty() { final Drawable drawable = mAttachInfo.mAccessibilityFocusDrawable; if (drawable != null) { final Rect bounds = mAttachInfo.mTmpInvalRect; final boolean hasFocus = getAccessibilityFocusedRect(bounds); if (!hasFocus) { bounds.setEmpty(); } if (!bounds.equals(drawable.getBounds())) { return true; } } return false; } /** * Updates the focused virtual view, when necessary, in response to a * content changed event. Loading Loading
core/java/android/view/ViewRootImpl.java +23 −15 Original line number Diff line number Diff line Loading @@ -4875,20 +4875,12 @@ public final class ViewRootImpl implements ViewParent, dirty.offset(surfaceInsets.left, surfaceInsets.top); } boolean accessibilityFocusDirty = false; final Drawable drawable = mAttachInfo.mAccessibilityFocusDrawable; if (drawable != null) { final Rect bounds = mAttachInfo.mTmpInvalRect; final boolean hasFocus = getAccessibilityFocusedRect(bounds); if (!hasFocus) { bounds.setEmpty(); } if (!bounds.equals(drawable.getBounds())) { accessibilityFocusDirty = true; boolean accessibilityFocusDirty = isAccessibilityFocusDirty(); // Force recalculation of transparent regions if (accessibilityFocusDirty) { requestLayout(); } } mAttachInfo.mDrawingTime = mChoreographer.getFrameTimeNanos() / TimeUtils.NANOS_PER_MS; Loading Loading @@ -5434,8 +5426,9 @@ public final class ViewRootImpl implements ViewParent, mAccessibilityFocusedVirtualView = node; updateKeepClearForAccessibilityFocusRect(); if (mAttachInfo.mThreadedRenderer != null) { mAttachInfo.mThreadedRenderer.invalidateRoot(); requestInvalidateRootRenderNode(); if (isAccessibilityFocusDirty()) { scheduleTraversals(); } } Loading Loading @@ -9831,6 +9824,21 @@ public final class ViewRootImpl implements ViewParent, return AccessibilityNodeIdManager.getInstance().findView(accessibilityViewId); } private boolean isAccessibilityFocusDirty() { final Drawable drawable = mAttachInfo.mAccessibilityFocusDrawable; if (drawable != null) { final Rect bounds = mAttachInfo.mTmpInvalRect; final boolean hasFocus = getAccessibilityFocusedRect(bounds); if (!hasFocus) { bounds.setEmpty(); } if (!bounds.equals(drawable.getBounds())) { return true; } } return false; } /** * Updates the focused virtual view, when necessary, in response to a * content changed event. Loading