summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2010-07-30 15:18:56 -0700
committerTadashi G. Takaoka <takaoka@google.com>2010-07-30 16:08:47 -0700
commit0972d071cd1b5eba60a6c20551f4500b638a1bf1 (patch)
tree473585972f1af6c6fb61f85af952aeac0a7cd646
parent42272759e4c3c406977187fd2b4df8739edccde8 (diff)
downloadframeworks_base-0972d071cd1b5eba60a6c20551f4500b638a1bf1.zip
frameworks_base-0972d071cd1b5eba60a6c20551f4500b638a1bf1.tar.gz
frameworks_base-0972d071cd1b5eba60a6c20551f4500b638a1bf1.tar.bz2
Fix KeyboardView's verticalCorrection handling
Do not correct the touch point if it is within the range of verticalCorrection from the top of KeyboardView, so that the touch point will not have negative y-axis value. Bug: 2659128 Change-Id: I91a3e65fc5dee1383dbbfb45690e307fc0adc1d1
-rw-r--r--core/java/android/inputmethodservice/KeyboardView.java4
-rwxr-xr-xcore/res/res/xml/password_kbd_numeric.xml27
-rwxr-xr-xcore/res/res/xml/password_kbd_symbols.xml2
-rwxr-xr-xcore/res/res/xml/password_kbd_symbols_shift.xml2
4 files changed, 22 insertions, 13 deletions
diff --git a/core/java/android/inputmethodservice/KeyboardView.java b/core/java/android/inputmethodservice/KeyboardView.java
index 4b48409..ab5c78a 100644
--- a/core/java/android/inputmethodservice/KeyboardView.java
+++ b/core/java/android/inputmethodservice/KeyboardView.java
@@ -1128,7 +1128,9 @@ public class KeyboardView extends View implements View.OnClickListener {
private boolean onModifiedTouchEvent(MotionEvent me, boolean possiblePoly) {
int touchX = (int) me.getX() - mPaddingLeft;
- int touchY = (int) me.getY() + mVerticalCorrection - mPaddingTop;
+ int touchY = (int) me.getY() - mPaddingTop;
+ if (touchY >= -mVerticalCorrection)
+ touchY += mVerticalCorrection;
final int action = me.getAction();
final long eventTime = me.getEventTime();
mOldEventTime = eventTime;
diff --git a/core/res/res/xml/password_kbd_numeric.xml b/core/res/res/xml/password_kbd_numeric.xml
index e3f1612..bdd8afb 100755
--- a/core/res/res/xml/password_kbd_numeric.xml
+++ b/core/res/res/xml/password_kbd_numeric.xml
@@ -24,30 +24,37 @@
android:keyHeight="@dimen/password_keyboard_key_height"
>
- <Row>
- <Key android:codes="49" android:keyIcon="@drawable/sym_keyboard_num1" android:keyEdgeFlags="left"/>
+ <Row android:rowEdgeFlags="top">
+ <Key android:codes="49" android:keyIcon="@drawable/sym_keyboard_num1"
+ android:keyEdgeFlags="left"/>
<Key android:codes="50" android:keyIcon="@drawable/sym_keyboard_num2"/>
- <Key android:codes="51" android:keyIcon="@drawable/sym_keyboard_num3"/>
+ <Key android:codes="51" android:keyIcon="@drawable/sym_keyboard_num3"
+ android:keyEdgeFlags="right"/>
</Row>
<Row>
- <Key android:codes="52" android:keyIcon="@drawable/sym_keyboard_num4" android:keyEdgeFlags="left"/>
+ <Key android:codes="52" android:keyIcon="@drawable/sym_keyboard_num4"
+ android:keyEdgeFlags="left"/>
<Key android:codes="53" android:keyIcon="@drawable/sym_keyboard_num5"/>
- <Key android:codes="54" android:keyIcon="@drawable/sym_keyboard_num6"/>
+ <Key android:codes="54" android:keyIcon="@drawable/sym_keyboard_num6"
+ android:keyEdgeFlags="right"/>
</Row>
<Row>
- <Key android:codes="55" android:keyIcon="@drawable/sym_keyboard_num7" android:keyEdgeFlags="left"/>
+ <Key android:codes="55" android:keyIcon="@drawable/sym_keyboard_num7"
+ android:keyEdgeFlags="left"/>
<Key android:codes="56" android:keyIcon="@drawable/sym_keyboard_num8"/>
- <Key android:codes="57" android:keyIcon="@drawable/sym_keyboard_num9"/>
+ <Key android:codes="57" android:keyIcon="@drawable/sym_keyboard_num9"
+ android:keyEdgeFlags="right"/>
</Row>
<Row android:rowEdgeFlags="bottom">
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_ok"/>
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_ok"
+ android:keyEdgeFlags="left"/>
<Key android:codes="48" android:keyIcon="@drawable/sym_keyboard_num0_no_plus"/>
<Key android:codes="-5" android:keyIcon="@drawable/sym_keyboard_delete"
- android:iconPreview="@drawable/sym_keyboard_feedback_delete"
- android:isRepeatable="true" android:keyEdgeFlags="right"/>
+ android:iconPreview="@drawable/sym_keyboard_feedback_delete"
+ android:isRepeatable="true" android:keyEdgeFlags="right"/>
</Row>
</Keyboard>
diff --git a/core/res/res/xml/password_kbd_symbols.xml b/core/res/res/xml/password_kbd_symbols.xml
index 14a7ec8..9901526 100755
--- a/core/res/res/xml/password_kbd_symbols.xml
+++ b/core/res/res/xml/password_kbd_symbols.xml
@@ -25,7 +25,7 @@
android:keyHeight="@dimen/password_keyboard_key_height"
>
- <Row>
+ <Row android:rowEdgeFlags="top">
<Key android:keyLabel="1" android:keyEdgeFlags="left"/>
<Key android:keyLabel="2"/>
<Key android:keyLabel="3"/>
diff --git a/core/res/res/xml/password_kbd_symbols_shift.xml b/core/res/res/xml/password_kbd_symbols_shift.xml
index 4b84f4b..5b73914 100755
--- a/core/res/res/xml/password_kbd_symbols_shift.xml
+++ b/core/res/res/xml/password_kbd_symbols_shift.xml
@@ -25,7 +25,7 @@
android:keyHeight="@dimen/password_keyboard_key_height"
>
- <Row>
+ <Row android:rowEdgeFlags="top">
<Key android:keyLabel="~" android:keyEdgeFlags="left"/>
<Key android:keyLabel="`"/>
<Key android:keyLabel="|"/>