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

Commit 5c095e59 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Cancel all ongoing event when onFinishInputView

Bug: 9334755
Change-Id: If0c2ac49a50f4a529aefeca603569f9413367469
parent 0e08d70f
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -1206,15 +1206,18 @@ public final class MainKeyboardView extends KeyboardView implements PointerTrack
                eventTag + eventTime + "," + id + "," + x + "," + y + "," + size + "," + pressure);
    }

    public void cancelAllMessages() {
    public void cancelAllOngoingEvents() {
        mKeyTimerHandler.cancelAllMessages();
        mDrawingHandler.cancelAllMessages();
        dismissAllKeyPreviews();
        dismissGestureFloatingPreviewText();
        dismissSlidingKeyInputPreview();
        PointerTracker.dismissAllMoreKeysPanels();
        PointerTracker.cancelAllPointerTrackers();
    }

    public void closing() {
        dismissAllKeyPreviews();
        cancelAllMessages();
        PointerTracker.dismissAllMoreKeysPanels();
        cancelAllOngoingEvents();
        mMoreKeysKeyboardCache.clear();
    }

+6 −2
Original line number Diff line number Diff line
@@ -413,6 +413,10 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
        return sPointerTrackerQueue.isAnyInSlidingKeyInput();
    }

    public static void cancelAllPointerTrackers() {
        sPointerTrackerQueue.cancelAllPointerTrackers();
    }

    public static void setKeyboardActionListener(final KeyboardActionListener listener) {
        final int trackersSize = sTrackers.size();
        for (int i = 0; i < trackersSize; ++i) {
@@ -833,7 +837,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
    }

    private void cancelBatchInput() {
        sPointerTrackerQueue.cancelAllPointerTracker();
        cancelAllPointerTrackers();
        mIsDetectingGesture = false;
        if (!sInGesture) {
            return;
@@ -1273,7 +1277,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
        }

        cancelBatchInput();
        sPointerTrackerQueue.cancelAllPointerTracker();
        cancelAllPointerTrackers();
        sPointerTrackerQueue.releaseAllPointers(eventTime);
        onCancelEventInternal();
    }
+1 −1
Original line number Diff line number Diff line
@@ -207,7 +207,7 @@ public final class PointerTrackerQueue {
        }
    }

    public void cancelAllPointerTracker() {
    public void cancelAllPointerTrackers() {
        synchronized (mExpandableArrayOfActivePointers) {
            if (DEBUG) {
                Log.d(TAG, "cancelAllPointerTracker: " + this);
+1 −1
Original line number Diff line number Diff line
@@ -886,7 +886,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
        mKeyboardSwitcher.onFinishInputView();
        final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
        if (mainKeyboardView != null) {
            mainKeyboardView.cancelAllMessages();
            mainKeyboardView.cancelAllOngoingEvents();
        }
        // Remove pending messages related to update suggestions
        mHandler.cancelUpdateSuggestionStrip();