Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c51e7ed0 authored by Alan Viverette's avatar Alan Viverette Committed by Android Git Automerger
Browse files

am 42b25914: Merge "Ignore accessibility overlays during visible window...

am 42b25914: Merge "Ignore accessibility overlays during visible window computation" into lmp-mr1-dev

* commit '42b25914':
  Ignore accessibility overlays during visible window computation
parents a9566f90 42b25914
Loading
Loading
Loading
Loading
+13 −14
Original line number Diff line number Diff line
@@ -984,12 +984,7 @@ final class AccessibilityController {

                final int visibleWindowCount = visibleWindows.size();
                for (int i = visibleWindowCount - 1; i >= 0; i--) {
                    WindowState windowState = visibleWindows.valueAt(i);

                    // Compute the bounds in the screen.
                    Rect boundsInScreen = mTempRect;
                    computeWindowBoundsInScreen(windowState, boundsInScreen);

                    final WindowState windowState = visibleWindows.valueAt(i);
                    final int flags = windowState.mAttrs.flags;

                    // If the window is not touchable - ignore.
@@ -997,6 +992,16 @@ final class AccessibilityController {
                        continue;
                    }

                    // If the window is an accessibility overlay - ignore.
                    if (windowState.mAttrs.type ==
                            WindowManager.LayoutParams.TYPE_ACCESSIBILITY_OVERLAY) {
                        continue;
                    }

                    // Compute the bounds in the screen.
                    final Rect boundsInScreen = mTempRect;
                    computeWindowBoundsInScreen(windowState, boundsInScreen);

                    // If the window is completely covered by other windows - ignore.
                    if (unaccountedSpace.quickReject(boundsInScreen)) {
                        continue;
@@ -1013,14 +1018,8 @@ final class AccessibilityController {
                        }
                    }

                    // Account for the space this window takes if the window
                    // is not an accessibility overlay which does not change
                    // the reported windows.
                    if (windowState.mAttrs.type == WindowManager.LayoutParams
                            .TYPE_ACCESSIBILITY_OVERLAY) {
                    unaccountedSpace.op(boundsInScreen, unaccountedSpace,
                            Region.Op.REVERSE_DIFFERENCE);
                    }

                    // We figured out what is touchable for the entire screen - done.
                    if (unaccountedSpace.isEmpty()) {