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

Commit 8a26e853 authored by Ken Wakasa's avatar Ken Wakasa
Browse files

Fix an issue of adding extra character.

LatinKeyboardBaseView should have removed "long pressed" pointer tracker from the multi-touch pointer queue.

bug: 3099130
Change-Id: I3d358a373b0de07558a204e9ff5a95e9ece38bcc
parent ace15025
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -214,7 +214,10 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
    private OnKeyboardActionListener mKeyboardActionListener;

    private final ArrayList<PointerTracker> mPointerTrackers = new ArrayList<PointerTracker>();

    // TODO: Let the PointerTracker class manage this pointer queue
    private final PointerQueue mPointerQueue = new PointerQueue();

    private final boolean mHasDistinctMultitouch;
    private int mOldPointerCount = 1;

@@ -1053,8 +1056,10 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
        boolean result = onLongPress(popupKey);
        if (result) {
            dismissKeyPreview();
            tracker.setAlreadyProcessed();
            mMiniKeyboardTrackerId = tracker.mPointerId;
            // Mark this tracker "already processed" and remove it from the pointer queue
            tracker.setAlreadyProcessed();
            mPointerQueue.remove(tracker);
        }
        return result;
    }