Merge "Fix PerfUnitTest Regression"

This commit is contained in:
Ryan Lin
2022-08-02 12:23:58 +00:00
committed by Android (Google) Code Review
2 changed files with 11 additions and 7 deletions

View File

@@ -848,6 +848,8 @@ public final class ViewRootImpl implements ViewParent,
private int mLastTransformHint = Integer.MIN_VALUE;
private AccessibilityWindowAttributes mAccessibilityWindowAttributes;
/**
* A temporary object used so relayoutWindow can return the latest SyncSeqId
* system. The SyncSeqId system was designed to work without synchronous relayout
@@ -1412,8 +1414,12 @@ public final class ViewRootImpl implements ViewParent,
if (registered) {
final AccessibilityWindowAttributes attributes = new AccessibilityWindowAttributes(
mWindowAttributes);
mAccessibilityManager.setAccessibilityWindowAttributes(getDisplayId(),
mAttachInfo.mAccessibilityWindowId, attributes);
if (!attributes.equals(mAccessibilityWindowAttributes)) {
mAccessibilityWindowAttributes = attributes;
mAccessibilityManager.setAccessibilityWindowAttributes(getDisplayId(),
mAttachInfo.mAccessibilityWindowId, attributes);
}
}
}
@@ -10365,6 +10371,7 @@ public final class ViewRootImpl implements ViewParent,
!= AccessibilityWindowInfo.UNDEFINED_WINDOW_ID;
if (registered) {
mAttachInfo.mAccessibilityWindowId = AccessibilityWindowInfo.UNDEFINED_WINDOW_ID;
mAccessibilityWindowAttributes = null;
mAccessibilityManager.removeAccessibilityInteractionConnection(mWindow);
}
}

View File

@@ -146,11 +146,8 @@ public class AccessibilityWindowManager {
if (getWindowTokenForUserAndWindowIdLocked(resolvedUserId, windowId) == null) {
return;
}
final AccessibilityWindowAttributes currentAttrs = mWindowAttributes.get(windowId);
if (currentAttrs == null || !currentAttrs.equals(attributes)) {
mWindowAttributes.put(windowId, attributes);
shouldComputeWindows = findWindowInfoByIdLocked(windowId) != null;
}
mWindowAttributes.put(windowId, attributes);
shouldComputeWindows = findWindowInfoByIdLocked(windowId) != null;
}
if (shouldComputeWindows) {
mWindowManagerInternal.computeWindowsForAccessibility(displayId);