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

Commit 997c952f authored by Svetoslav Ganov's avatar Svetoslav Ganov Committed by Android Git Automerger
Browse files

am f608140b: am ed82973e: Merge "Interaction model of KeyboarView should be...

am f608140b: am ed82973e: Merge "Interaction model of KeyboarView should be same as latimIME" into jb-dev

* commit 'f608140b':
  Interaction model of KeyboarView should be same as latimIME
parents eed38b6d f608140b
Loading
Loading
Loading
Loading
+20 −15
Original line number Diff line number Diff line
@@ -855,15 +855,23 @@ public class KeyboardView extends View implements View.OnClickListener {
                Key oldKey = keys[oldKeyIndex];
                oldKey.onReleased(mCurrentKeyIndex == NOT_A_KEY);
                invalidateKey(oldKeyIndex);
                final int keyCode = oldKey.codes[0];
                sendAccessibilityEventForUnicodeCharacter(AccessibilityEvent.TYPE_VIEW_HOVER_EXIT,
                        oldKey.codes[0]);
                        keyCode);
                // TODO: We need to implement AccessibilityNodeProvider for this view.
                sendAccessibilityEventForUnicodeCharacter(
                        AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED, keyCode);
            }
            if (mCurrentKeyIndex != NOT_A_KEY && keys.length > mCurrentKeyIndex) {
                Key newKey = keys[mCurrentKeyIndex];
                newKey.onPressed();
                invalidateKey(mCurrentKeyIndex);
                final int keyCode = newKey.codes[0];
                sendAccessibilityEventForUnicodeCharacter(AccessibilityEvent.TYPE_VIEW_HOVER_ENTER,
                        newKey.codes[0]);
                        keyCode);
                // TODO: We need to implement AccessibilityNodeProvider for this view.
                sendAccessibilityEventForUnicodeCharacter(
                        AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED, keyCode);
            }
        }
        // If key changed and preview is on ...
@@ -1154,20 +1162,17 @@ public class KeyboardView extends View implements View.OnClickListener {
        if (mAccessibilityManager.isTouchExplorationEnabled() && event.getPointerCount() == 1) {
            final int action = event.getAction();
            switch (action) {
                case MotionEvent.ACTION_HOVER_ENTER:
                case MotionEvent.ACTION_HOVER_MOVE:
                    final int touchX = (int) event.getX() - mPaddingLeft;
                    int touchY = (int) event.getY() - mPaddingTop;
                    if (touchY >= -mVerticalCorrection) {
                        touchY += mVerticalCorrection;
                    }
                    final int keyIndex = getKeyIndices(touchX, touchY, null);
                    showPreview(keyIndex);
                    break;
                case MotionEvent.ACTION_HOVER_EXIT:
                    showPreview(NOT_A_KEY);
                    break;
            }
                case MotionEvent.ACTION_HOVER_ENTER: {
                    event.setAction(MotionEvent.ACTION_DOWN);
                } break;
                case MotionEvent.ACTION_HOVER_MOVE: {
                    event.setAction(MotionEvent.ACTION_MOVE);
                } break;
                case MotionEvent.ACTION_HOVER_EXIT: {
                    event.setAction(MotionEvent.ACTION_UP);
                } break;
            }
            return onTouchEvent(event);
        }
        return true;
    }