Keyboard layout improvements.
Increase key height in portrait.
Increase spacebar width and reduce punctuation width.
Increase vertical target area for spacebar to avoid accidentally
hitting "V" and "B".
Increase height of candidate strip.
diff --git a/res/drawable/keyboard_suggest_strip_divider.png b/res/drawable/keyboard_suggest_strip_divider.png
index e54c5b0..c9413d7 100644
--- a/res/drawable/keyboard_suggest_strip_divider.png
+++ b/res/drawable/keyboard_suggest_strip_divider.png
Binary files differ
diff --git a/res/layout/candidates.xml b/res/layout/candidates.xml
index edd779a..39df81d 100755
--- a/res/layout/candidates.xml
+++ b/res/layout/candidates.xml
@@ -50,7 +50,7 @@
<com.android.inputmethod.latin.CandidateView
android:id="@+id/candidates"
android:layout_width="wrap_content"
- android:layout_height="38dp"
+ android:layout_height="@dimen/candidate_strip_height"
android:layout_weight="1"
/>
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
index c5c828e..9e9e30f 100644
--- a/res/values-land/dimens.xml
+++ b/res/values-land/dimens.xml
@@ -20,4 +20,5 @@
<resources>
<dimen name="key_height">47dip</dimen>
+ <dimen name="candidate_strip_height">38dip</dimen>
</resources>
\ No newline at end of file
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index d757f09..2359341 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -19,6 +19,7 @@
-->
<resources>
- <dimen name="key_height">50dip</dimen>
+ <dimen name="key_height">54dip</dimen>
<dimen name="bubble_pointer_offset">22dip</dimen>
+ <dimen name="candidate_strip_height">42dip</dimen>
</resources>
\ No newline at end of file
diff --git a/res/xml-de/kbd_qwerty.xml b/res/xml-de/kbd_qwerty.xml
index 89e53ef..0c0d20e 100755
--- a/res/xml-de/kbd_qwerty.xml
+++ b/res/xml-de/kbd_qwerty.xml
@@ -69,7 +69,7 @@
</Row>
<Row>
- <Key android:codes="-1" android:keyIcon="@drawable/sym_keyboard_shift"
+ <Key android:codes="-1" android:keyIcon="@drawable/sym_keyboard_shift"
android:keyWidth="15%p" android:isModifier="true"
android:iconPreview="@drawable/sym_keyboard_feedback_shift"
android:isSticky="true" android:keyEdgeFlags="left"/>
@@ -89,30 +89,30 @@
android:popupCharacters="@string/alternates_for_n"
/>
<Key android:codes="109" android:keyLabel="m"/>
- <Key android:codes="-5" android:keyIcon="@drawable/sym_keyboard_delete"
+ <Key android:codes="-5" android:keyIcon="@drawable/sym_keyboard_delete"
android:keyWidth="15%p" android:keyEdgeFlags="right"
android:iconPreview="@drawable/sym_keyboard_feedback_delete"
android:isRepeatable="true"/>
</Row>
<Row android:keyboardMode="@+id/mode_normal" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p" />
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:keyLabel="," android:keyWidth="10%p" />
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="30%p" android:isRepeatable="true"/>
+ android:keyWidth="40%p" android:isRepeatable="true"/>
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ android:keyWidth="10%p"/>
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
<Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
@@ -120,12 +120,12 @@
android:popupKeyboard="@xml/popup_domains"
android:keyWidth="15%p"/>
<Key android:keyLabel="/" android:keyWidth="15%p"/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="15%p" android:isRepeatable="true"/>
- <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
+ <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
@@ -140,28 +140,27 @@
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="15%p" android:isRepeatable="true"/>
- <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
+ <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
<Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p"/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:keyLabel="," android:keyWidth="10%p"/>
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="30%p" android:isRepeatable="true"/>
+ android:keyWidth="40%p" android:isRepeatable="true"/>
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
+ android:keyWidth="10%p"/>
<Key android:keyLabel=":-)" android:keyOutputText=":-) "
android:popupKeyboard="@xml/popup_smileys"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
</Keyboard>
-
\ No newline at end of file
diff --git a/res/xml-fr/kbd_qwerty.xml b/res/xml-fr/kbd_qwerty.xml
index 573f08a..1e72d22 100644
--- a/res/xml-fr/kbd_qwerty.xml
+++ b/res/xml-fr/kbd_qwerty.xml
@@ -102,12 +102,12 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters=""
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p" />
+ <Key android:keyLabel="," android:keyWidth="10%p" />
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="30%p" android:isRepeatable="true"/>
+ android:keyWidth="40%p" android:isRepeatable="true"/>
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
+ android:keyWidth="10%p"/>
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
@@ -142,24 +142,24 @@
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="15%p" android:isRepeatable="true"/>
- <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
+ <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
<Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters=""
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p"/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:keyLabel="," android:keyWidth="10%p"/>
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="30%p" android:isRepeatable="true"/>
- <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
+ android:keyWidth="40%p" android:isRepeatable="true"/>
+ <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
+ android:keyWidth="10%p"/>
<Key android:keyLabel=":-)" android:keyOutputText=":-) "
android:popupKeyboard="@xml/popup_smileys"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
diff --git a/res/xml/kbd_qwerty.xml b/res/xml/kbd_qwerty.xml
index 8d64d3e..41625f2 100755
--- a/res/xml/kbd_qwerty.xml
+++ b/res/xml/kbd_qwerty.xml
@@ -100,8 +100,8 @@
android:popupCharacters="@string/alternates_for_n"
/>
<Key android:codes="109" android:keyLabel="m"/>
- <Key android:codes="-5" android:keyIcon="@drawable/sym_keyboard_delete"
- android:keyWidth="15%p" android:keyEdgeFlags="right"
+ <Key android:codes="-5" android:keyIcon="@drawable/sym_keyboard_delete"
+ android:keyWidth="15%p" android:keyEdgeFlags="right"
android:iconPreview="@drawable/sym_keyboard_feedback_delete"
android:isRepeatable="true"/>
</Row>
@@ -111,19 +111,19 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p" />
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:keyLabel="," android:keyWidth="10%p" />
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="30%p" android:isRepeatable="true"/>
+ android:keyWidth="40%p" android:isRepeatable="true"/>
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ android:keyWidth="10%p"/>
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
<Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
@@ -131,44 +131,44 @@
android:popupKeyboard="@xml/popup_domains"
android:keyWidth="15%p"/>
<Key android:keyLabel="/" android:keyWidth="15%p"/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="15%p" android:isRepeatable="true"/>
- <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
+ <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
<Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p" />
- <Key android:keyLabel="\@" android:keyWidth="15%p"/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:keyLabel="," android:keyWidth="10%p" />
+ <Key android:keyLabel="\@" android:keyWidth="20%p"/>
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="15%p" android:isRepeatable="true"/>
- <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+ <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
+ android:keyWidth="10%p"/>
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
<Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p"/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ <Key android:keyLabel="," android:keyWidth="10%p"/>
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
- android:keyWidth="30%p" android:isRepeatable="true"/>
+ android:keyWidth="40%p" android:isRepeatable="true"/>
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
- android:keyWidth="15%p"/>
+ android:keyWidth="10%p"/>
<Key android:keyLabel=":-)" android:keyOutputText=":-) "
android:popupKeyboard="@xml/popup_smileys"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
diff --git a/res/xml/kbd_symbols.xml b/res/xml/kbd_symbols.xml
index ecdf751..f3b8833 100755
--- a/res/xml/kbd_symbols.xml
+++ b/res/xml/kbd_symbols.xml
@@ -94,10 +94,10 @@
</Row>
<Row>
- <Key android:codes="-1" android:keyLabel="@string/label_alt_key"
- android:keyWidth="15%p" android:isModifier="true"
+ <Key android:codes="-1" android:keyLabel="@string/label_alt_key"
+ android:keyWidth="15%p" android:isModifier="true"
android:isSticky="true" android:keyEdgeFlags="left"/>
- <Key android:codes="33" android:keyLabel="!"
+ <Key android:codes="33" android:keyLabel="!"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="¡"
/>
@@ -119,18 +119,19 @@
</Row>
<Row android:rowEdgeFlags="bottom">
- <Key android:codes="-2" android:keyLabel="@string/label_alpha_key"
+ <Key android:codes="-2" android:keyLabel="@string/label_alpha_key"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="15%p"
+ <Key android:keyLabel="," android:keyWidth="10%p"
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="‚„"
/>
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:keyWidth="30%p"
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ android:keyWidth="40%p"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:isRepeatable="true"/>
- <Key android:keyLabel="." android:keyWidth="15%p" />
+ <Key android:keyLabel="." android:keyWidth="10%p" />
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:keyWidth="20%p" android:keyEdgeFlags="right"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
/>
diff --git a/res/xml/kbd_symbols_shift.xml b/res/xml/kbd_symbols_shift.xml
index fee845e..56428a3 100755
--- a/res/xml/kbd_symbols_shift.xml
+++ b/res/xml/kbd_symbols_shift.xml
@@ -55,7 +55,7 @@
</Row>
<Row>
- <Key android:codes="-1" android:keyLabel="@string/label_alt_key"
+ <Key android:codes="-1" android:keyLabel="@string/label_alt_key"
android:keyWidth="15%p" android:isModifier="true"
android:isSticky="true" android:keyEdgeFlags="left"/>
<Key android:keyLabel="™"/>
@@ -81,12 +81,14 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyEdgeFlags="left"/>
- <Key android:keyLabel="„" android:keyWidth="15%p" />
- <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:keyWidth="30%p"
+ <Key android:keyLabel="„" android:keyWidth="10%p" />
+ <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
+ android:keyWidth="40%p"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:isRepeatable="true"/>
- <Key android:keyLabel="…" android:keyWidth="15%p" />
- <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:keyWidth="20%p" android:keyEdgeFlags="right"
+ <Key android:keyLabel="…" android:keyWidth="10%p" />
+ <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
+ android:keyWidth="20%p" android:keyEdgeFlags="right"
android:iconPreview="@drawable/sym_keyboard_feedback_return"
/>
</Row>
diff --git a/src/com/android/inputmethod/latin/LatinKeyboard.java b/src/com/android/inputmethod/latin/LatinKeyboard.java
index 8527d9c..619a186 100644
--- a/src/com/android/inputmethod/latin/LatinKeyboard.java
+++ b/src/com/android/inputmethod/latin/LatinKeyboard.java
@@ -225,6 +225,8 @@
y -= height / 10;
if (code == KEYCODE_SHIFT) x += width / 6;
if (code == KEYCODE_DELETE) x -= width / 6;
+ } else if (code == LatinIME.KEYCODE_SPACE) {
+ y += 5;
}
return super.isInside(x, y);
}