aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2011-09-06 15:25:58 +0900
committerTadashi G. Takaoka <takaoka@google.com>2011-09-06 15:57:15 +0900
commit8ac6d505b7ceab020a4085b3dfbea5b47362b030 (patch)
tree9a34ffd3a8bf1b22a512fa4a8a152fea40f392d4 /java/src
parentea0c567f86bd19015d53fc038c4579df776cfec3 (diff)
downloadlatinime-8ac6d505b7ceab020a4085b3dfbea5b47362b030.tar.gz
latinime-8ac6d505b7ceab020a4085b3dfbea5b47362b030.tar.xz
latinime-8ac6d505b7ceab020a4085b3dfbea5b47362b030.zip
More processTouchEvent from LatinKeyboardView to PointerTracker
Bug: 5241105 Change-Id: I8a5d15f43e2c9f294e78127eda68b0f85da5ad15
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java24
-rw-r--r--java/src/com/android/inputmethod/keyboard/PointerTracker.java21
-rw-r--r--java/src/com/android/inputmethod/latin/SuggestionsView.java28
3 files changed, 32 insertions, 41 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java b/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java
index d9089e199..f09542c54 100644
--- a/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java
@@ -552,7 +552,7 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
mOldKeyIndex = tracker.getKeyIndexOn(lastX, lastY);
tracker.onUpEvent(lastX, lastY, eventTime);
} else if (pointerCount == 1 && oldPointerCount == 1) {
- processMotionEvent(tracker, action, x, y, eventTime, this);
+ tracker.processMotionEvent(action, x, y, eventTime, this);
} else {
Log.w(TAG, "Unknown touch panel behavior: pointer count is " + pointerCount
+ " (old " + oldPointerCount + ")");
@@ -575,32 +575,12 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
tracker.onMoveEvent(px, py, eventTime);
}
} else {
- processMotionEvent(getPointerTracker(id), action, x, y, eventTime, this);
+ getPointerTracker(id).processMotionEvent(action, x, y, eventTime, this);
}
return true;
}
- private static void processMotionEvent(PointerTracker tracker, int action, int x, int y,
- long eventTime, PointerTracker.KeyEventHandler handler) {
- switch (action) {
- case MotionEvent.ACTION_DOWN:
- case MotionEvent.ACTION_POINTER_DOWN:
- tracker.onDownEvent(x, y, eventTime, handler);
- break;
- case MotionEvent.ACTION_UP:
- case MotionEvent.ACTION_POINTER_UP:
- tracker.onUpEvent(x, y, eventTime);
- break;
- case MotionEvent.ACTION_MOVE:
- tracker.onMoveEvent(x, y, eventTime);
- break;
- case MotionEvent.ACTION_CANCEL:
- tracker.onCancelEvent(x, y, eventTime);
- break;
- }
- }
-
@Override
public void closing() {
super.closing();
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
index 0314867b3..38c419dc6 100644
--- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java
+++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
@@ -19,6 +19,7 @@ package com.android.inputmethod.keyboard;
import android.content.Context;
import android.content.res.Resources;
import android.util.Log;
+import android.view.MotionEvent;
import android.widget.TextView;
import com.android.inputmethod.keyboard.internal.PointerTrackerQueue;
@@ -398,6 +399,26 @@ public class PointerTracker {
return onMoveKeyInternal(x, y);
}
+ public void processMotionEvent(int action, int x, int y, long eventTime,
+ KeyEventHandler handler) {
+ switch (action) {
+ case MotionEvent.ACTION_DOWN:
+ case MotionEvent.ACTION_POINTER_DOWN:
+ onDownEvent(x, y, eventTime, handler);
+ break;
+ case MotionEvent.ACTION_UP:
+ case MotionEvent.ACTION_POINTER_UP:
+ onUpEvent(x, y, eventTime);
+ break;
+ case MotionEvent.ACTION_MOVE:
+ onMoveEvent(x, y, eventTime);
+ break;
+ case MotionEvent.ACTION_CANCEL:
+ onCancelEvent(x, y, eventTime);
+ break;
+ }
+ }
+
public void onDownEvent(int x, int y, long eventTime, KeyEventHandler handler) {
if (DEBUG_EVENT)
printTouchEvent("onDownEvent:", x, y, eventTime);
diff --git a/java/src/com/android/inputmethod/latin/SuggestionsView.java b/java/src/com/android/inputmethod/latin/SuggestionsView.java
index e99c6d474..4fcc2af85 100644
--- a/java/src/com/android/inputmethod/latin/SuggestionsView.java
+++ b/java/src/com/android/inputmethod/latin/SuggestionsView.java
@@ -762,29 +762,19 @@ public class SuggestionsView extends RelativeLayout implements OnClickListener,
if (!mMoreSuggestionsWindow.isShowing()) {
return super.dispatchTouchEvent(me);
}
+
+ final MoreKeysPanel moreKeysPanel = mMoreSuggestionsView;
final int action = me.getAction();
final long eventTime = me.getEventTime();
final int index = me.getActionIndex();
final int id = me.getPointerId(index);
- final PointerTracker tracker = PointerTracker.getPointerTracker(id, mMoreSuggestionsView);
- final int x = mMoreSuggestionsView.translateX((int)me.getX(index));
- final int y = mMoreSuggestionsView.translateY((int)me.getY(index));
- switch (action) {
- case MotionEvent.ACTION_DOWN:
- case MotionEvent.ACTION_POINTER_DOWN:
- tracker.onDownEvent(x, y, eventTime, mMoreSuggestionsView);
- break;
- case MotionEvent.ACTION_UP:
- case MotionEvent.ACTION_POINTER_UP:
- tracker.onUpEvent(x, y, eventTime);
- break;
- case MotionEvent.ACTION_MOVE:
- tracker.onMoveEvent(x, y, eventTime);
- break;
- case MotionEvent.ACTION_CANCEL:
- tracker.onCancelEvent(x, y, eventTime);
- break;
- }
+ final PointerTracker tracker = PointerTracker.getPointerTracker(id, moreKeysPanel);
+ final int x = (int)me.getX(index);
+ final int y = (int)me.getY(index);
+ final int translatedX = moreKeysPanel.translateX(x);
+ final int translatedY = moreKeysPanel.translateY(y);
+
+ tracker.processMotionEvent(action, translatedX, translatedY, eventTime, moreKeysPanel);
return true;
}