diff --git a/res/drawable-hdpi/btn_keyboard_key_normal.9.png b/res/drawable-hdpi/btn_keyboard_key_normal.9.png
old mode 100755
new mode 100644
index 90b51fa63..5bd9f0ed6
Binary files a/res/drawable-hdpi/btn_keyboard_key_normal.9.png and b/res/drawable-hdpi/btn_keyboard_key_normal.9.png differ
diff --git a/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png b/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png
old mode 100755
new mode 100644
index 6ddd516e7..aa4a4a368
Binary files a/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png and b/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png differ
diff --git a/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png b/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png
old mode 100755
new mode 100644
index 65fdeb353..27556f845
Binary files a/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png and b/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png differ
diff --git a/res/drawable-hdpi/btn_keyboard_key_pressed.9.png b/res/drawable-hdpi/btn_keyboard_key_pressed.9.png
old mode 100755
new mode 100644
index efaad9612..e43504ce0
Binary files a/res/drawable-hdpi/btn_keyboard_key_pressed.9.png and b/res/drawable-hdpi/btn_keyboard_key_pressed.9.png differ
diff --git a/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png b/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png
old mode 100755
new mode 100644
index 439271723..e55ab1ead
Binary files a/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png and b/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png differ
diff --git a/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png b/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png
old mode 100755
new mode 100644
index c2cc32044..02010b443
Binary files a/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png and b/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png differ
diff --git a/res/drawable-hdpi/highlight_pressed.png b/res/drawable-hdpi/highlight_pressed.png
old mode 100755
new mode 100644
index d2276feb8..ae04901a0
Binary files a/res/drawable-hdpi/highlight_pressed.png and b/res/drawable-hdpi/highlight_pressed.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_123_mic.png b/res/drawable-hdpi/sym_keyboard_123_mic.png
new file mode 100644
index 000000000..62669803d
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_123_mic.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_feedback_123_mic_.png b/res/drawable-hdpi/sym_keyboard_feedback_123_mic_.png
new file mode 100644
index 000000000..f57e581d5
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_feedback_123_mic_.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_left.png b/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_left.png
new file mode 100644
index 000000000..8f9b493ac
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_left.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_right.png b/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_right.png
new file mode 100644
index 000000000..a2fbd0fd0
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_right.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_feedback_tab.png b/res/drawable-hdpi/sym_keyboard_feedback_tab.png
new file mode 100644
index 000000000..7754752f3
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_feedback_tab.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_feedback_tabprev.png b/res/drawable-hdpi/sym_keyboard_feedback_tabprev.png
new file mode 100644
index 000000000..36f6b5364
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_feedback_tabprev.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_language_arrows_left.png b/res/drawable-hdpi/sym_keyboard_language_arrows_left.png
new file mode 100644
index 000000000..65ccfda87
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_language_arrows_left.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_language_arrows_right.png b/res/drawable-hdpi/sym_keyboard_language_arrows_right.png
new file mode 100644
index 000000000..0d01bc224
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_language_arrows_right.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_tab.png b/res/drawable-hdpi/sym_keyboard_tab.png
new file mode 100644
index 000000000..1d4d92bd1
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_tab.png differ
diff --git a/res/drawable-hdpi/sym_keyboard_tabprev.png b/res/drawable-hdpi/sym_keyboard_tabprev.png
new file mode 100644
index 000000000..51bff1bcd
Binary files /dev/null and b/res/drawable-hdpi/sym_keyboard_tabprev.png differ
diff --git a/res/drawable-mdpi/btn_keyboard_key_normal.9.png b/res/drawable-mdpi/btn_keyboard_key_normal.9.png
index d0f9b7cc6..7ba18dd25 100644
Binary files a/res/drawable-mdpi/btn_keyboard_key_normal.9.png and b/res/drawable-mdpi/btn_keyboard_key_normal.9.png differ
diff --git a/res/drawable-mdpi/btn_keyboard_key_pressed.9.png b/res/drawable-mdpi/btn_keyboard_key_pressed.9.png
old mode 100755
new mode 100644
index 91809e242..39b9314a1
Binary files a/res/drawable-mdpi/btn_keyboard_key_pressed.9.png and b/res/drawable-mdpi/btn_keyboard_key_pressed.9.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_123_mic.png b/res/drawable-mdpi/sym_keyboard_123_mic.png
new file mode 100644
index 000000000..35afe0821
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_123_mic.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_feedback_123_mic_.png b/res/drawable-mdpi/sym_keyboard_feedback_123_mic_.png
new file mode 100644
index 000000000..bc11cf31a
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_feedback_123_mic_.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_left.png b/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_left.png
new file mode 100644
index 000000000..8ab87d05e
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_left.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_right.png b/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_right.png
new file mode 100644
index 000000000..92d19b5b1
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_right.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_feedback_tab.png b/res/drawable-mdpi/sym_keyboard_feedback_tab.png
new file mode 100644
index 000000000..593fa6703
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_feedback_tab.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_feedback_tabprev.png b/res/drawable-mdpi/sym_keyboard_feedback_tabprev.png
new file mode 100644
index 000000000..d4b3e7db3
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_feedback_tabprev.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_language_arrows_left.png b/res/drawable-mdpi/sym_keyboard_language_arrows_left.png
new file mode 100644
index 000000000..91eda5f2d
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_language_arrows_left.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_language_arrows_right.png b/res/drawable-mdpi/sym_keyboard_language_arrows_right.png
new file mode 100644
index 000000000..62a5beba4
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_language_arrows_right.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_tab.png b/res/drawable-mdpi/sym_keyboard_tab.png
new file mode 100644
index 000000000..cd9daff08
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_tab.png differ
diff --git a/res/drawable-mdpi/sym_keyboard_tabprev.png b/res/drawable-mdpi/sym_keyboard_tabprev.png
new file mode 100644
index 000000000..eb90872fc
Binary files /dev/null and b/res/drawable-mdpi/sym_keyboard_tabprev.png differ
diff --git a/res/xml-de/kbd_qwerty.xml b/res/xml-de/kbd_qwerty.xml
index 3fb8f5226..9e2f5841d 100755
--- a/res/xml-de/kbd_qwerty.xml
+++ b/res/xml-de/kbd_qwerty.xml
@@ -96,7 +96,7 @@
-
@@ -112,37 +112,97 @@
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
+
+
+
+
+
+
+
+
-
-
+
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+ android:keyWidth="10%p"/>
+
+
+
+
+
+
+
+
+
-
-
-
-
+
-
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+
+
+
+
+
+
+
+
+
+
@@ -163,65 +223,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -229,7 +230,7 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/res/xml-fr/kbd_qwerty.xml b/res/xml-fr/kbd_qwerty.xml
index fef260d1d..7abe18eb2 100644
--- a/res/xml-fr/kbd_qwerty.xml
+++ b/res/xml-fr/kbd_qwerty.xml
@@ -100,10 +100,28 @@
+
+
+
+
+
+
+
+
@@ -115,72 +133,21 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
+
-
@@ -190,16 +157,35 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
+
+
-
+ android:keyWidth="20%p"/>
+
+
+
+
+
+
+
-
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+
@@ -210,27 +196,43 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
+
+
-
-
+ android:keyWidth="20%p"/>
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/res/xml-ru/kbd_qwerty.xml b/res/xml-ru/kbd_qwerty.xml
index 9a42d421c..8a3a59229 100755
--- a/res/xml-ru/kbd_qwerty.xml
+++ b/res/xml-ru/kbd_qwerty.xml
@@ -96,19 +96,59 @@
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
+
+
+
+
+
+
+
+
-
-
+
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+ android:keyWidth="10%p"/>
+
+
+
+
+
+
+
+
+
@@ -119,14 +159,34 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
-
+
-
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+
+
+
+
+
+
+
+
+
+
@@ -148,5 +208,63 @@
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 552e7e544..e0fe5cdc3 100755
--- a/res/xml/kbd_qwerty.xml
+++ b/res/xml/kbd_qwerty.xml
@@ -128,7 +128,7 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
-
-
-
+
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+ android:keyWidth="10%p"/>
@@ -168,16 +166,16 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
+
+
-
-
+ android:keyWidth="20%p"/>
+ android:keyWidth="10%p"/>
@@ -188,18 +186,15 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
-
-
+
-
+ android:keyWidth="20%p" android:isRepeatable="true"/>
+
+
@@ -210,16 +205,15 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
+
+
-
-
+ android:keyWidth="20%p"/>
+
@@ -247,7 +241,7 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/src/com/android/inputmethod/latin/KeyboardSwitcher.java
index aa52c0381..45d0a1e12 100644
--- a/src/com/android/inputmethod/latin/KeyboardSwitcher.java
+++ b/src/com/android/inputmethod/latin/KeyboardSwitcher.java
@@ -33,6 +33,7 @@ public class KeyboardSwitcher {
public static final int MODE_URL = 4;
public static final int MODE_EMAIL = 5;
public static final int MODE_IM = 6;
+ public static final int MODE_WEB = 7;
public static final int MODE_TEXT_QWERTY = 0;
public static final int MODE_TEXT_ALPHA = 1;
@@ -42,6 +43,7 @@ public class KeyboardSwitcher {
public static final int KEYBOARDMODE_URL = R.id.mode_url;
public static final int KEYBOARDMODE_EMAIL = R.id.mode_email;
public static final int KEYBOARDMODE_IM = R.id.mode_im;
+ public static final int KEYBOARDMODE_WEB = R.id.mode_webentry;
private static final int SYMBOLS_MODE_STATE_NONE = 0;
private static final int SYMBOLS_MODE_STATE_BEGIN = 1;
@@ -52,7 +54,8 @@ public class KeyboardSwitcher {
KEYBOARDMODE_NORMAL,
KEYBOARDMODE_URL,
KEYBOARDMODE_EMAIL,
- KEYBOARDMODE_IM};
+ KEYBOARDMODE_IM,
+ KEYBOARDMODE_WEB};
//LatinIME mContext;
Context mContext;
@@ -91,6 +94,7 @@ public class KeyboardSwitcher {
mModeToVoice.put(R.id.mode_url, R.id.mode_url_voice);
mModeToVoice.put(R.id.mode_email, R.id.mode_email_voice);
mModeToVoice.put(R.id.mode_im, R.id.mode_im_voice);
+ mModeToVoice.put(R.id.mode_webentry, R.id.mode_webentry_voice);
mInputMethodService = ims;
}
@@ -212,10 +216,12 @@ public class KeyboardSwitcher {
|| id.mKeyboardMode == KEYBOARDMODE_URL
|| id.mKeyboardMode == KEYBOARDMODE_IM
|| id.mKeyboardMode == KEYBOARDMODE_EMAIL
+ || id.mKeyboardMode == KEYBOARDMODE_WEB
|| id.mKeyboardMode == R.id.mode_normal_voice
|| id.mKeyboardMode == R.id.mode_url_voice
|| id.mKeyboardMode == R.id.mode_im_voice
|| id.mKeyboardMode == R.id.mode_email_voice
+ || id.mKeyboardMode == R.id.mode_webentry_voice
) {
keyboard.setExtension(R.xml.kbd_extension);
}
@@ -255,6 +261,8 @@ public class KeyboardSwitcher {
return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_EMAIL, true);
case MODE_IM:
return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_IM, true);
+ case MODE_WEB:
+ return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_WEB, true);
}
return null;
}
diff --git a/src/com/android/inputmethod/latin/LatinIME.java b/src/com/android/inputmethod/latin/LatinIME.java
index a9a61c3a2..7eecfb9b9 100644
--- a/src/com/android/inputmethod/latin/LatinIME.java
+++ b/src/com/android/inputmethod/latin/LatinIME.java
@@ -502,6 +502,8 @@ public class LatinIME extends InputMethodService
} else if (variation == EditorInfo.TYPE_TEXT_VARIATION_FILTER) {
mPredictionOn = false;
} else if (variation == EditorInfo.TYPE_TEXT_VARIATION_WEB_EDIT_TEXT) {
+ mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_WEB,
+ attribute.imeOptions, mEnableVoiceButton);
// If it's a browser edit field and auto correct is not ON explicitly, then
// disable auto correction, but keep suggestions on.
if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_CORRECT) == 0) {
@@ -915,6 +917,9 @@ public class LatinIME extends InputMethodService
startListening(false /* was a button press, was not a swipe */);
}
break;
+ case 9 /*Tab*/:
+ sendKeyChar((char) primaryCode);
+ break;
default:
if (isWordSeparator(primaryCode)) {
handleSeparator(primaryCode);
diff --git a/src/com/android/inputmethod/latin/LatinKeyboard.java b/src/com/android/inputmethod/latin/LatinKeyboard.java
index f5748f415..df38358d6 100644
--- a/src/com/android/inputmethod/latin/LatinKeyboard.java
+++ b/src/com/android/inputmethod/latin/LatinKeyboard.java
@@ -261,11 +261,11 @@ public class LatinKeyboard extends Keyboard {
Paint paint = new Paint();
paint.setAntiAlias(true);
// TODO: Make the text size a customizable attribute
- paint.setTextSize(22);
+ paint.setTextSize(18);
paint.setTextAlign(Align.CENTER);
// Draw a drop shadow for the text
paint.setShadowLayer(1f, 0, 0, 0xFF000000);
- paint.setColor(0x80C0C0C0);
+ paint.setColor(0xFF808080);
canvas.drawText(mLocale.getDisplayLanguage(mLocale),
buffer.getWidth() / 2, - paint.ascent() + 2, paint);
int x = (buffer.getWidth() - mSpaceIcon.getIntrinsicWidth()) / 2;