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

Commit 17993ed4 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Fix null KeyDetector reference"

parents 32a7e079 ef8a0368
Loading
Loading
Loading
Loading
+6 −10
Original line number Diff line number Diff line
@@ -18,7 +18,9 @@ package com.android.inputmethod.keyboard;

import com.android.inputmethod.latin.Constants;


/**
 * This class handles key detection.
 */
public class KeyDetector {
    private final int mKeyHysteresisDistanceSquared;
    private final int mKeyHysteresisDistanceForSlidingModifierSquared;
@@ -27,18 +29,12 @@ public class KeyDetector {
    private int mCorrectionX;
    private int mCorrectionY;

    /**
     * This class handles key detection.
     *
     * @param keyHysteresisDistance if the pointer movement distance is smaller than this, the
     * movement will not be handled as meaningful movement. The unit is pixel.
     */
    public KeyDetector(float keyHysteresisDistance) {
        this(keyHysteresisDistance, keyHysteresisDistance);
    public KeyDetector() {
        this(0.0f /* keyHysteresisDistance */, 0.0f /* keyHysteresisDistanceForSlidingModifier */);
    }

    /**
     * This class handles key detection.
     * Key detection object constructor with key hysteresis distances.
     *
     * @param keyHysteresisDistance if the pointer movement distance is smaller than this, the
     * movement will not be handled as meaningful movement. The unit is pixel.
+1 −1
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ public final class MoreKeysDetector extends KeyDetector {
    private final int mSlideAllowanceSquareTop;

    public MoreKeysDetector(float slideAllowance) {
        super(/* keyHysteresisDistance */0);
        super();
        mSlideAllowanceSquare = (int)(slideAllowance * slideAllowance);
        // Top slide allowance is slightly longer (sqrt(2) times) than other edges.
        mSlideAllowanceSquareTop = mSlideAllowanceSquare * 2;
+1 −4
Original line number Diff line number Diff line
@@ -155,7 +155,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element,

    // The {@link KeyDetector} is set whenever the down event is processed. Also this is updated
    // when new {@link Keyboard} is set by {@link #setKeyDetector(KeyDetector)}.
    private KeyDetector mKeyDetector;
    private KeyDetector mKeyDetector = new KeyDetector();
    private Keyboard mKeyboard;
    private int mPhantomSuddenMoveThreshold;
    private final BogusMoveEventDetector mBogusMoveEventDetector = new BogusMoveEventDetector();
@@ -1124,9 +1124,6 @@ public final class PointerTracker implements PointerTrackerQueue.Element,

    private boolean isMajorEnoughMoveToBeOnNewKey(final int x, final int y, final long eventTime,
            final Key newKey) {
        if (mKeyDetector == null) {
            throw new NullPointerException("keyboard and/or key detector not set");
        }
        final Key curKey = mCurrentKey;
        if (newKey == curKey) {
            return false;
+1 −1
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ public final class EmojiPageKeyboardView extends KeyboardView implements
    };

    private OnKeyEventListener mListener = EMPTY_LISTENER;
    private final KeyDetector mKeyDetector = new KeyDetector(0.0f /*keyHysteresisDistance */);
    private final KeyDetector mKeyDetector = new KeyDetector();
    private final GestureDetector mGestureDetector;

    public EmojiPageKeyboardView(final Context context, final AttributeSet attrs) {