Merge "Interaction model of KeyboarView should be same as latimIME" into jb-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
ed82973e61
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user