Don't enable a11y service if scary dialog obscured

We were only checking if the OK button itself was obscured.
Changing to check if any part of the window is obscured.

Bug: 31855267
Test: Created a sample a11y service that displays a UI to cover
part of the window, but not the OK button. It was possible to
enable an a11y service before this change, but now it displays
a warning toast.

Change-Id: I21974535aba734da6ea9d7accf67fb9237fd16fc
This commit is contained in:
Phil Weaver
2017-04-05 09:28:32 -07:00
parent b9f570ff44
commit c8e20afa3c

View File

@@ -53,7 +53,7 @@ public class AccessibilityServiceWarning {
final View.OnTouchListener filterTouchListener = (View v, MotionEvent event) -> { final View.OnTouchListener filterTouchListener = (View v, MotionEvent event) -> {
// Filter obscured touches by consuming them. // Filter obscured touches by consuming them.
if ((event.getFlags() & MotionEvent.FLAG_WINDOW_IS_OBSCURED) != 0) { if ((event.getFlags() & MotionEvent.FLAG_WINDOW_IS_PARTIALLY_OBSCURED) != 0) {
if (event.getAction() == MotionEvent.ACTION_UP) { if (event.getAction() == MotionEvent.ACTION_UP) {
Toast.makeText(v.getContext(), R.string.touch_filtered_warning, Toast.makeText(v.getContext(), R.string.touch_filtered_warning,
Toast.LENGTH_SHORT).show(); Toast.LENGTH_SHORT).show();