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

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

Disable suggestion selection preview popup

Bug: 3048642
Bug: 3004920
Change-Id: Ibfb495a246c9e2da6ebf3c03d10ed8acff00f54b
parent 179ada95
Loading
Loading
Loading
Loading
+56 −49
Original line number Diff line number Diff line
@@ -149,9 +149,22 @@ public class CandidateView extends View {
        mDescent = (int) mPaint.descent();
        mMinTouchableWidth = (int)res.getDimension(R.dimen.candidate_min_touchable_width);
        
        mGestureDetector = new GestureDetector(
                new CandidateStripGestureListener(mMinTouchableWidth));
        setWillNotDraw(false);
        setHorizontalScrollBarEnabled(false);
        setVerticalScrollBarEnabled(false);
        scrollTo(0, getScrollY());
    }

    private class CandidateStripGestureListener extends GestureDetector.SimpleOnGestureListener {
        private final int mTouchSlopSquare;

        public CandidateStripGestureListener(int touchSlop) {
            // Slightly reluctant to scroll to be able to easily choose the suggestion
        final int touchSlopSquare = mMinTouchableWidth * mMinTouchableWidth;
        mGestureDetector = new GestureDetector(new GestureDetector.SimpleOnGestureListener() {
            mTouchSlopSquare = touchSlop * touchSlop;
        }

        @Override
        public void onLongPress(MotionEvent me) {
            if (mSuggestions.size() > 0) {
@@ -175,7 +188,7 @@ public class CandidateView extends View {
                final int deltaX = (int) (e2.getX() - e1.getX());
                final int deltaY = (int) (e2.getY() - e1.getY());
                final int distance = (deltaX * deltaX) + (deltaY * deltaY);
                    if (distance < touchSlopSquare) {
                if (distance < mTouchSlopSquare) {
                    return true;
                }
                mScrolled = true;
@@ -197,11 +210,6 @@ public class CandidateView extends View {
            invalidate();
            return true;
        }
        });
        setWillNotDraw(false);
        setHorizontalScrollBarEnabled(false);
        setVerticalScrollBarEnabled(false);
        scrollTo(0, getScrollY());
    }

    /**
@@ -282,7 +290,6 @@ public class CandidateView extends View {
                    mSelectionHighlight.setBounds(0, bgPadding.top, wordWidth, height);
                    mSelectionHighlight.draw(canvas);
                    canvas.translate(-x, 0);
                    showPreview(i, null);
                }
                mSelectedString = suggestion;
                mSelectedIndex = i;
@@ -443,7 +450,6 @@ public class CandidateView extends View {
            mSelectedIndex = -1;
            removeHighlight();
            requestLayout();
            mHandler.dismissPreview(mDelayAfterPreview);
            break;
        }
        return true;
@@ -501,6 +507,7 @@ public class CandidateView extends View {
        if (word.length() < 2) return;
        if (mService.addWordToDictionary(word.toString())) {
            showPreview(0, getContext().getResources().getString(R.string.added_word, word));
            mHandler.dismissPreview(mDelayAfterPreview);
        }
    }