Loading services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -29,8 +29,8 @@ import android.view.KeyEvent; import android.view.MotionEvent; import android.view.MotionEvent; import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityEvent; import com.android.server.accessibility.gestures.TouchExplorer; import com.android.server.LocalServices; import com.android.server.LocalServices; import com.android.server.accessibility.gestures.TouchExplorer; import com.android.server.policy.WindowManagerPolicy; import com.android.server.policy.WindowManagerPolicy; import java.util.ArrayList; import java.util.ArrayList; Loading services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java +16 −4 Original line number Original line Diff line number Diff line Loading @@ -2531,18 +2531,17 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub // to create event handler per display. The events should be handled by the // to create event handler per display. The events should be handled by the // display which is overlaid by it. // display which is overlaid by it. final Display display = displays[i]; final Display display = displays[i]; if (display.getType() == Display.TYPE_OVERLAY) { if (isValidDisplay(display)) { continue; } mDisplaysList.add(display); mDisplaysList.add(display); } } } } } } } @Override @Override public void onDisplayAdded(int displayId) { public void onDisplayAdded(int displayId) { final Display display = mDisplayManager.getDisplay(displayId); final Display display = mDisplayManager.getDisplay(displayId); if (display == null || display.getType() == Display.TYPE_OVERLAY) { if (!isValidDisplay(display)) { return; return; } } Loading Loading @@ -2593,6 +2592,19 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub public void onDisplayChanged(int displayId) { public void onDisplayChanged(int displayId) { /* do nothing */ /* do nothing */ } } private boolean isValidDisplay(@Nullable Display display) { if (display == null || display.getType() == Display.TYPE_OVERLAY) { return false; } // Private virtual displays are created by the ap and is not allowed to access by other // aps. We assume we could ignore them. if ((display.getType() == Display.TYPE_VIRTUAL && (display.getFlags() & Display.FLAG_PRIVATE) != 0)) { return false; } return true; } } } /** Represents an {@link AccessibilityManager} */ /** Represents an {@link AccessibilityManager} */ Loading Loading
services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -29,8 +29,8 @@ import android.view.KeyEvent; import android.view.MotionEvent; import android.view.MotionEvent; import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityEvent; import com.android.server.accessibility.gestures.TouchExplorer; import com.android.server.LocalServices; import com.android.server.LocalServices; import com.android.server.accessibility.gestures.TouchExplorer; import com.android.server.policy.WindowManagerPolicy; import com.android.server.policy.WindowManagerPolicy; import java.util.ArrayList; import java.util.ArrayList; Loading
services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java +16 −4 Original line number Original line Diff line number Diff line Loading @@ -2531,18 +2531,17 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub // to create event handler per display. The events should be handled by the // to create event handler per display. The events should be handled by the // display which is overlaid by it. // display which is overlaid by it. final Display display = displays[i]; final Display display = displays[i]; if (display.getType() == Display.TYPE_OVERLAY) { if (isValidDisplay(display)) { continue; } mDisplaysList.add(display); mDisplaysList.add(display); } } } } } } } @Override @Override public void onDisplayAdded(int displayId) { public void onDisplayAdded(int displayId) { final Display display = mDisplayManager.getDisplay(displayId); final Display display = mDisplayManager.getDisplay(displayId); if (display == null || display.getType() == Display.TYPE_OVERLAY) { if (!isValidDisplay(display)) { return; return; } } Loading Loading @@ -2593,6 +2592,19 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub public void onDisplayChanged(int displayId) { public void onDisplayChanged(int displayId) { /* do nothing */ /* do nothing */ } } private boolean isValidDisplay(@Nullable Display display) { if (display == null || display.getType() == Display.TYPE_OVERLAY) { return false; } // Private virtual displays are created by the ap and is not allowed to access by other // aps. We assume we could ignore them. if ((display.getType() == Display.TYPE_VIRTUAL && (display.getFlags() & Display.FLAG_PRIVATE) != 0)) { return false; } return true; } } } /** Represents an {@link AccessibilityManager} */ /** Represents an {@link AccessibilityManager} */ Loading