Use Region#op instead of #quickReject for intersection check
quickReject only checks the minimum bounding box of the regions, which
may give us false negative as suggested in Region's javadoc.
This leads a bug where a window is still added to the exposed list even
if it is fully covered by other windows.
This is an updated version of the reverted CL [1] behind a
computeWindowChangesOnA11y flag. Previously [1] was reverted due to CTS
failure, but now that with [2] the CTS won't fail.
[1] I7fc226e2288c2433e427d1e8ef173a3a21a20edc
[2] Id4b24284db40feaa744c9a5598d0067566fa3963
Bug: 240885392
Bug: 254581919
Test: android.autofillservice.cts.servicebehavior.SettingsIntentTest
Test: android.autofillservice.cts.inline.InlineTooltipTest
Test: CtsAccessibilityServiceTestCases CtsAccessibilityTestCases AccessibilityWindowManagerWithAccessibilityWindowTest
Change-Id: Ie2d1714c91a0f1d8f73f837505365899c314c038
2 files changed