am 72fd6186: am 2a576d9e: Merge "Invalidate old accessibility bounds on CONTENT_CHANGE" into mnc-dev
* commit '72fd61864a1766a741a619d958873d697415ecb4': Invalidate old accessibility bounds on CONTENT_CHANGE
This commit is contained in:
@@ -966,6 +966,12 @@ public final class ViewRootImpl implements ViewParent,
|
||||
}
|
||||
}
|
||||
|
||||
invalidateRectOnScreen(dirty);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private void invalidateRectOnScreen(Rect dirty) {
|
||||
final Rect localDirty = mDirty;
|
||||
if (!localDirty.isEmpty() && !localDirty.contains(dirty)) {
|
||||
mAttachInfo.mSetIgnoreDirtyState = true;
|
||||
@@ -985,8 +991,6 @@ public final class ViewRootImpl implements ViewParent,
|
||||
if (!mWillDrawSoon && (intersected || mIsAnimating)) {
|
||||
scheduleTraversals();
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
void setWindowStopped(boolean stopped) {
|
||||
@@ -6398,7 +6402,14 @@ public final class ViewRootImpl implements ViewParent,
|
||||
}
|
||||
|
||||
// Refresh the node for the focused virtual view.
|
||||
final Rect oldBounds = mTempRect;
|
||||
mAccessibilityFocusedVirtualView.getBoundsInScreen(oldBounds);
|
||||
mAccessibilityFocusedVirtualView = provider.createAccessibilityNodeInfo(focusedChildId);
|
||||
final Rect newBounds = mAccessibilityFocusedVirtualView.getBoundsInScreen();
|
||||
if (!oldBounds.equals(newBounds)) {
|
||||
oldBounds.union(newBounds);
|
||||
invalidateRectOnScreen(oldBounds);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1494,6 +1494,15 @@ public class AccessibilityNodeInfo implements Parcelable {
|
||||
mBoundsInScreen.right, mBoundsInScreen.bottom);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the actual rect containing the node bounds in screen coordinates.
|
||||
*
|
||||
* @hide Not safe to expose outside the framework.
|
||||
*/
|
||||
public Rect getBoundsInScreen() {
|
||||
return mBoundsInScreen;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the node bounds in screen coordinates.
|
||||
* <p>
|
||||
|
||||
Reference in New Issue
Block a user