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

Commit cc822a76 authored by Svetoslav Ganov's avatar Svetoslav Ganov Committed by Android (Google) Code Review
Browse files

Merge "Touch exploration gesture end not delivered to clients." into jb-dev

parents b6585d19 cd94caf2
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -384,9 +384,11 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
    }

    public boolean sendAccessibilityEvent(AccessibilityEvent event) {
        final int eventType = event.getEventType();

        // The event for gesture start should be strictly before the
        // first hover enter event for the gesture.
        if (event.getEventType() == AccessibilityEvent.TYPE_VIEW_HOVER_ENTER
        if (eventType == AccessibilityEvent.TYPE_VIEW_HOVER_ENTER
                && mTouchExplorationGestureStarted) {
            mTouchExplorationGestureStarted = false;
            AccessibilityEvent gestureStartEvent = AccessibilityEvent.obtain(
@@ -400,11 +402,14 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
                notifyAccessibilityServicesDelayedLocked(event, false);
                notifyAccessibilityServicesDelayedLocked(event, true);
            }

            event.recycle();
            mHandledFeedbackTypes = 0;
        }

        // The event for gesture end should be strictly after the
        // last hover exit event for the gesture.
        if (event.getEventType() == AccessibilityEvent.TYPE_VIEW_HOVER_EXIT
        if (eventType == AccessibilityEvent.TYPE_VIEW_HOVER_EXIT
                && mTouchExplorationGestureEnded) {
            mTouchExplorationGestureEnded = false;
            AccessibilityEvent gestureEndEvent = AccessibilityEvent.obtain(
@@ -412,9 +417,6 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
            sendAccessibilityEvent(gestureEndEvent);
        }

        event.recycle();
        mHandledFeedbackTypes = 0;

        return (OWN_PROCESS_ID != Binder.getCallingPid());
    }