Manual merge of the following Gingerbread changes logically
I8b38e280 Ia3929bb0 If925b546 I1062763d I901e36aa bug: 3100311 Change-Id: Ic7e01277ec816e77d34732599b2b9552668b81c2main
parent
58bfa35072
commit
e354a85ef4
Binary file not shown.
After Width: | Height: | Size: 226 B |
Binary file not shown.
After Width: | Height: | Size: 202 B |
|
@ -18,10 +18,10 @@
|
|||
*/
|
||||
-->
|
||||
|
||||
<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:keyWidth="9.45%p"
|
||||
android:horizontalGap="0px"
|
||||
android:verticalGap="0px"
|
||||
android:keyHeight="@dimen/popup_key_height"
|
||||
<Keyboard xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
latin:keyWidth="9.45%p"
|
||||
latin:horizontalGap="0px"
|
||||
latin:verticalGap="0px"
|
||||
latin:keyHeight="@dimen/popup_key_height"
|
||||
>
|
||||
</Keyboard>
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -59,7 +60,7 @@
|
|||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="/" />
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
|
@ -67,6 +68,7 @@
|
|||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -86,7 +88,7 @@
|
|||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="\@" />
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
|
@ -94,6 +96,7 @@
|
|||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -121,10 +124,12 @@
|
|||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
|
@ -153,6 +158,7 @@
|
|||
latin:keyWidth="20%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -184,6 +190,7 @@
|
|||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -207,7 +214,7 @@
|
|||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:keyLabel="/" />
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
|
@ -215,6 +222,7 @@
|
|||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -238,7 +246,7 @@
|
|||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:keyLabel="\@" />
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
|
@ -246,6 +254,7 @@
|
|||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
@ -277,10 +286,12 @@
|
|||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
|
@ -312,6 +323,7 @@
|
|||
latin:iconPreview="@drawable/sym_keyboard_feedback_tab" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -65,7 +66,7 @@
|
|||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="/"
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
|
@ -75,6 +76,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -97,7 +99,7 @@
|
|||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="\@"
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
|
@ -107,6 +109,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -139,11 +142,13 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
|
@ -177,6 +182,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -214,6 +220,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -241,7 +248,7 @@
|
|||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="/"
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
|
@ -251,6 +258,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -278,7 +286,7 @@
|
|||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="\@"
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
|
@ -288,6 +296,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
@ -325,11 +334,13 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
|
@ -367,6 +378,7 @@
|
|||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
|
|
|
@ -143,70 +143,63 @@
|
|||
latin:keyEdgeFlags="right" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols"
|
||||
latin:keyboardMode="@+id/mode_symbols_normal"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_with_settings_key"
|
||||
latin:keyboardMode="@+id/mode_symbols_url"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_im" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_normal_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_url_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_im_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
</Keyboard>
|
||||
|
|
|
@ -142,59 +142,63 @@
|
|||
latin:keyEdgeFlags="right" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols"
|
||||
latin:keyboardMode="@+id/mode_symbols_normal"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_with_settings_key"
|
||||
latin:keyboardMode="@+id/mode_symbols_url"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_im" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_normal_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_url_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_im_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
</Keyboard>
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,50 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,56 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,52 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_f1"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="."
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_punctuation"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -122,68 +122,63 @@
|
|||
latin:keyEdgeFlags="right" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols"
|
||||
latin:keyboardMode="@+id/mode_symbols_normal"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="„"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="…"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_with_settings_key"
|
||||
latin:keyboardMode="@+id/mode_symbols_url"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="„"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="…"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_im" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_normal_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_url_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_im_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
</Keyboard>
|
||||
|
|
|
@ -121,57 +121,63 @@
|
|||
latin:keyEdgeFlags="right" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols"
|
||||
latin:keyboardMode="@+id/mode_symbols_normal"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="„" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="…" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_with_settings_key"
|
||||
latin:keyboardMode="@+id/mode_symbols_url"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:keyLabel="„" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="…" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_im" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_normal_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_url_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_email_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_im_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_im_with_settings_key" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyboardMode="@+id/mode_symbols_webentry_with_settings_key"
|
||||
latin:rowEdgeFlags="bottom"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/kbd_symbols_shift_black_row4_common_with_settings_key" />
|
||||
</Row>
|
||||
</Keyboard>
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="„" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="…" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:keyLabel="„" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="…" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="„" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p" />
|
||||
<Key
|
||||
latin:keyLabel="…" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="20%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,49 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings" />
|
||||
<Key
|
||||
latin:keyLabel="„" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_bkeyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p" />
|
||||
<Key
|
||||
latin:keyLabel="…" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="25%p"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,49 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="„"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="…"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="„"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="…"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_return"
|
||||
latin:keyIcon="@drawable/sym_keyboard_return"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_return"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,50 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="„"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="40%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="…"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="20%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,55 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<merge
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_symbol"
|
||||
latin:keyLabel="@string/label_alpha_key"
|
||||
latin:keyWidth="15%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_settings"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="„"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:codes="@integer/key_space"
|
||||
latin:keyIcon="@drawable/sym_keyboard_space"
|
||||
latin:iconPreview="@drawable/sym_keyboard_feedback_space"
|
||||
latin:keyWidth="30%p"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel="…"
|
||||
latin:isModifier="true" />
|
||||
<Key
|
||||
latin:keyLabel=":-)"
|
||||
latin:keyOutputText=":-) "
|
||||
latin:keyHintIcon="@drawable/hint_popup"
|
||||
latin:popupKeyboard="@xml/popup_smileys"
|
||||
latin:keyWidth="25%p"
|
||||
latin:isModifier="true"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</merge>
|
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<Keyboard
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
latin:keyWidth="10%p"
|
||||
latin:horizontalGap="0px"
|
||||
latin:verticalGap="0px"
|
||||
latin:keyHeight="@dimen/popup_key_height"
|
||||
>
|
||||
<Row
|
||||
latin:rowEdgeFlags="top|bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="\@"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</Row>
|
||||
</Keyboard>
|
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2010, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<Keyboard
|
||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||
latin:keyWidth="10%p"
|
||||
latin:horizontalGap="0px"
|
||||
latin:verticalGap="0px"
|
||||
latin:keyHeight="@dimen/popup_key_height"
|
||||
>
|
||||
<Row
|
||||
latin:rowEdgeFlags="top|bottom"
|
||||
>
|
||||
<Key
|
||||
latin:codes="@integer/key_settings"
|
||||
latin:keyIcon="@drawable/sym_keyboard_settings"
|
||||
latin:keyEdgeFlags="left" />
|
||||
<Key
|
||||
latin:keyLabel="/"
|
||||
latin:keyEdgeFlags="right" />
|
||||
</Row>
|
||||
</Keyboard>
|
|
@ -29,14 +29,14 @@ import java.util.Locale;
|
|||
|
||||
public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
|
||||
public static final int MODE_NONE = 0;
|
||||
public static final int MODE_TEXT = 1;
|
||||
public static final int MODE_SYMBOLS = 2;
|
||||
public static final int MODE_PHONE = 3;
|
||||
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 = 0;
|
||||
public static final int MODE_URL = 1;
|
||||
public static final int MODE_EMAIL = 2;
|
||||
public static final int MODE_IM = 3;
|
||||
public static final int MODE_WEB = 4;
|
||||
public static final int MODE_PHONE = 5;
|
||||
|
||||
public static final int MODE_NONE = -1;
|
||||
|
||||
// Main keyboard layouts without the settings key
|
||||
public static final int KEYBOARDMODE_NORMAL = R.id.mode_normal;
|
||||
|
@ -44,6 +44,13 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
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;
|
||||
public static final int[] QWERTY_MODES = {
|
||||
KEYBOARDMODE_NORMAL,
|
||||
KEYBOARDMODE_URL,
|
||||
KEYBOARDMODE_EMAIL,
|
||||
KEYBOARDMODE_IM,
|
||||
KEYBOARDMODE_WEB,
|
||||
0 /* for MODE_PHONE */ };
|
||||
// Main keyboard layouts with the settings key
|
||||
public static final int KEYBOARDMODE_NORMAL_WITH_SETTINGS_KEY =
|
||||
R.id.mode_normal_with_settings_key;
|
||||
|
@ -55,12 +62,45 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
R.id.mode_im_with_settings_key;
|
||||
public static final int KEYBOARDMODE_WEB_WITH_SETTINGS_KEY =
|
||||
R.id.mode_webentry_with_settings_key;
|
||||
public static final int[] QWERTY_WITH_SETTINGS_KEY_MODES = {
|
||||
KEYBOARDMODE_NORMAL_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_URL_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_EMAIL_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_IM_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_WEB_WITH_SETTINGS_KEY,
|
||||
0 /* for MODE_PHONE */ };
|
||||
|
||||
// Symbols keyboard layout without the settings key
|
||||
public static final int KEYBOARDMODE_SYMBOLS = R.id.mode_symbols;
|
||||
// Symbols keyboard layout with the settings key
|
||||
public static final int KEYBOARDMODE_SYMBOLS_WITH_SETTINGS_KEY =
|
||||
R.id.mode_symbols_with_settings_key;
|
||||
// Symbols keyboard layouts without the settings key
|
||||
public static final int KEYBOARDMODE_SYMBOLS_NORMAL = R.id.mode_symbols_normal;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_URL = R.id.mode_symbols_url;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_EMAIL = R.id.mode_symbols_email;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_IM = R.id.mode_symbols_im;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_WEB = R.id.mode_symbols_webentry;
|
||||
public static final int[] SYMBOLS_MODES = {
|
||||
KEYBOARDMODE_SYMBOLS_NORMAL,
|
||||
KEYBOARDMODE_SYMBOLS_URL,
|
||||
KEYBOARDMODE_SYMBOLS_EMAIL,
|
||||
KEYBOARDMODE_SYMBOLS_IM,
|
||||
KEYBOARDMODE_SYMBOLS_WEB,
|
||||
0 /* for MODE_PHONE */ };
|
||||
// Symbols keyboard layouts with the settings key
|
||||
public static final int KEYBOARDMODE_SYMBOLS_NORMAL_WITH_SETTINGS_KEY =
|
||||
R.id.mode_symbols_normal_with_settings_key;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_URL_WITH_SETTINGS_KEY =
|
||||
R.id.mode_symbols_url_with_settings_key;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_EMAIL_WITH_SETTINGS_KEY =
|
||||
R.id.mode_symbols_email_with_settings_key;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_IM_WITH_SETTINGS_KEY =
|
||||
R.id.mode_symbols_im_with_settings_key;
|
||||
public static final int KEYBOARDMODE_SYMBOLS_WEB_WITH_SETTINGS_KEY =
|
||||
R.id.mode_symbols_webentry_with_settings_key;
|
||||
public static final int[] SYMBOLS_WITH_SETTINGS_KEY_MODES = {
|
||||
KEYBOARDMODE_SYMBOLS_NORMAL_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_SYMBOLS_URL_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_SYMBOLS_EMAIL_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_SYMBOLS_IM_WITH_SETTINGS_KEY,
|
||||
KEYBOARDMODE_SYMBOLS_WEB_WITH_SETTINGS_KEY,
|
||||
0 /* for MODE_PHONE */ };
|
||||
|
||||
public static final String DEFAULT_LAYOUT_ID = "4";
|
||||
public static final String PREF_KEYBOARD_LAYOUT = "pref_keyboard_layout_20100902";
|
||||
|
@ -115,7 +155,6 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
private boolean mIsAutoCompletionActive;
|
||||
private boolean mHasVoice;
|
||||
private boolean mVoiceOnPrimary;
|
||||
private boolean mPreferSymbols;
|
||||
private int mSymbolsModeState = SYMBOLS_MODE_STATE_NONE;
|
||||
|
||||
// Indicates whether or not we have the settings key
|
||||
|
@ -158,21 +197,26 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
}
|
||||
|
||||
private KeyboardId makeSymbolsId(boolean hasVoice) {
|
||||
final int mode = mMode == MODE_NONE ? MODE_TEXT : mMode;
|
||||
return new KeyboardId(KBD_SYMBOLS[getCharColorId()], mHasSettingsKey ?
|
||||
KEYBOARDMODE_SYMBOLS_WITH_SETTINGS_KEY : KEYBOARDMODE_SYMBOLS,
|
||||
SYMBOLS_WITH_SETTINGS_KEY_MODES[mode] : SYMBOLS_MODES[mode],
|
||||
false, hasVoice);
|
||||
}
|
||||
|
||||
private KeyboardId makeSymbolsShiftedId(boolean hasVoice) {
|
||||
final int mode = mMode == MODE_NONE ? MODE_TEXT : mMode;
|
||||
return new KeyboardId(KBD_SYMBOLS_SHIFT[getCharColorId()], mHasSettingsKey ?
|
||||
KEYBOARDMODE_SYMBOLS_WITH_SETTINGS_KEY : KEYBOARDMODE_SYMBOLS,
|
||||
SYMBOLS_WITH_SETTINGS_KEY_MODES[mode] : SYMBOLS_MODES[mode],
|
||||
false, hasVoice);
|
||||
}
|
||||
|
||||
public void makeKeyboards(boolean forceCreate) {
|
||||
private void makeSymbolsKeyboardIds() {
|
||||
mSymbolsId = makeSymbolsId(mHasVoice && !mVoiceOnPrimary);
|
||||
mSymbolsShiftedId = makeSymbolsShiftedId(mHasVoice && !mVoiceOnPrimary);
|
||||
}
|
||||
|
||||
public void makeKeyboards(boolean forceCreate) {
|
||||
makeSymbolsKeyboardIds();
|
||||
if (forceCreate) mKeyboards.clear();
|
||||
// Configuration change is coming after the keyboard gets recreated. So don't rely on that.
|
||||
// If keyboards have already been made, check if we have a screen width change and
|
||||
|
@ -207,10 +251,6 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
});
|
||||
}
|
||||
|
||||
public KeyboardId(int xml, boolean hasVoice) {
|
||||
this(xml, 0, false, hasVoice);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object other) {
|
||||
return other instanceof KeyboardId && equals((KeyboardId) other);
|
||||
|
@ -244,14 +284,10 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
|
||||
public void setKeyboardMode(int mode, int imeOptions, boolean enableVoice) {
|
||||
mSymbolsModeState = SYMBOLS_MODE_STATE_NONE;
|
||||
mPreferSymbols = mode == MODE_SYMBOLS;
|
||||
if (mode == MODE_SYMBOLS) {
|
||||
mode = MODE_TEXT;
|
||||
}
|
||||
try {
|
||||
setKeyboardMode(mode, imeOptions, enableVoice, mPreferSymbols);
|
||||
setKeyboardMode(mode, imeOptions, enableVoice, false);
|
||||
} catch (RuntimeException e) {
|
||||
LatinImeLogger.logOnException(mode + "," + imeOptions + "," + mPreferSymbols, e);
|
||||
LatinImeLogger.logOnException(mode + "," + imeOptions, e);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -259,8 +295,10 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
if (mInputView == null) return;
|
||||
mMode = mode;
|
||||
mImeOptions = imeOptions;
|
||||
makeSymbolsKeyboardIds();
|
||||
if (enableVoice != mHasVoice) {
|
||||
setVoiceMode(mHasVoice, mVoiceOnPrimary);
|
||||
// TODO clean up this unnecessary recursive call.
|
||||
setVoiceMode(enableVoice, mVoiceOnPrimary);
|
||||
}
|
||||
mIsSymbols = isSymbols;
|
||||
|
||||
|
@ -277,7 +315,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
mInputView.setKeyboard(keyboard);
|
||||
keyboard.setShifted(false);
|
||||
keyboard.setShiftLocked(keyboard.isShiftLocked());
|
||||
keyboard.setImeOptions(mInputMethodService.getResources(), mMode, imeOptions);
|
||||
keyboard.setImeOptions(mInputMethodService.getResources(), mode, imeOptions);
|
||||
keyboard.setColorOfSymbolIcons(mIsAutoCompletionActive, isBlackSym());
|
||||
// Update the settings key state because number of enabled IMEs could have been changed
|
||||
updateSettingsKeyState(PreferenceManager.getDefaultSharedPreferences(mInputMethodService));
|
||||
|
@ -309,48 +347,31 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
}
|
||||
|
||||
private KeyboardId getKeyboardId(int mode, int imeOptions, boolean isSymbols) {
|
||||
boolean hasVoice = hasVoiceButton(isSymbols);
|
||||
int charColorId = getCharColorId();
|
||||
// TODO: generalize for any KeyboardId
|
||||
int keyboardRowsResId = KBD_QWERTY[charColorId];
|
||||
if (isSymbols) {
|
||||
if (mode == MODE_PHONE) {
|
||||
return new KeyboardId(KBD_PHONE_SYMBOLS[charColorId], hasVoice);
|
||||
} else {
|
||||
return new KeyboardId(KBD_SYMBOLS[charColorId], mHasSettingsKey ?
|
||||
KEYBOARDMODE_SYMBOLS_WITH_SETTINGS_KEY : KEYBOARDMODE_SYMBOLS,
|
||||
false, hasVoice);
|
||||
}
|
||||
}
|
||||
switch (mode) {
|
||||
case MODE_NONE:
|
||||
final boolean hasVoice = hasVoiceButton(isSymbols);
|
||||
final int charColorId = getCharColorId();
|
||||
final int keyboardRowsResId;
|
||||
final boolean enableShiftLock;
|
||||
final int keyboardMode;
|
||||
|
||||
if (mode == MODE_NONE) {
|
||||
LatinImeLogger.logOnWarning(
|
||||
"getKeyboardId:" + mode + "," + imeOptions + "," + isSymbols);
|
||||
/* fall through */
|
||||
case MODE_TEXT:
|
||||
return new KeyboardId(keyboardRowsResId, mHasSettingsKey ?
|
||||
KEYBOARDMODE_NORMAL_WITH_SETTINGS_KEY : KEYBOARDMODE_NORMAL,
|
||||
true, hasVoice);
|
||||
case MODE_SYMBOLS:
|
||||
return new KeyboardId(KBD_SYMBOLS[charColorId], mHasSettingsKey ?
|
||||
KEYBOARDMODE_SYMBOLS_WITH_SETTINGS_KEY : KEYBOARDMODE_SYMBOLS,
|
||||
false, hasVoice);
|
||||
case MODE_PHONE:
|
||||
return new KeyboardId(KBD_PHONE[charColorId], hasVoice);
|
||||
case MODE_URL:
|
||||
return new KeyboardId(keyboardRowsResId, mHasSettingsKey ?
|
||||
KEYBOARDMODE_URL_WITH_SETTINGS_KEY : KEYBOARDMODE_URL, true, hasVoice);
|
||||
case MODE_EMAIL:
|
||||
return new KeyboardId(keyboardRowsResId, mHasSettingsKey ?
|
||||
KEYBOARDMODE_EMAIL_WITH_SETTINGS_KEY : KEYBOARDMODE_EMAIL, true, hasVoice);
|
||||
case MODE_IM:
|
||||
return new KeyboardId(keyboardRowsResId, mHasSettingsKey ?
|
||||
KEYBOARDMODE_IM_WITH_SETTINGS_KEY : KEYBOARDMODE_IM, true, hasVoice);
|
||||
case MODE_WEB:
|
||||
return new KeyboardId(keyboardRowsResId, mHasSettingsKey ?
|
||||
KEYBOARDMODE_WEB_WITH_SETTINGS_KEY : KEYBOARDMODE_WEB, true, hasVoice);
|
||||
mode = MODE_TEXT;
|
||||
}
|
||||
return null;
|
||||
if (isSymbols) {
|
||||
keyboardRowsResId = mode == MODE_PHONE
|
||||
? KBD_PHONE_SYMBOLS[charColorId] : KBD_SYMBOLS[charColorId];
|
||||
enableShiftLock = false;
|
||||
keyboardMode = mHasSettingsKey
|
||||
? SYMBOLS_WITH_SETTINGS_KEY_MODES[mode] : SYMBOLS_MODES[mode];
|
||||
} else { // QWERTY
|
||||
keyboardRowsResId = mode == MODE_PHONE
|
||||
? KBD_PHONE[charColorId] : KBD_QWERTY[charColorId];
|
||||
enableShiftLock = mode == MODE_PHONE ? false : true;
|
||||
keyboardMode = mHasSettingsKey
|
||||
? QWERTY_WITH_SETTINGS_KEY_MODES[mode] : QWERTY_MODES[mode];
|
||||
}
|
||||
return new KeyboardId(keyboardRowsResId, keyboardMode, enableShiftLock, hasVoice);
|
||||
}
|
||||
|
||||
public int getKeyboardMode() {
|
||||
|
@ -411,7 +432,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
|||
|
||||
public void toggleSymbols() {
|
||||
setKeyboardMode(mMode, mImeOptions, mHasVoice, !mIsSymbols);
|
||||
if (mIsSymbols && !mPreferSymbols) {
|
||||
if (mIsSymbols) {
|
||||
mSymbolsModeState = SYMBOLS_MODE_STATE_BEGIN;
|
||||
} else {
|
||||
mSymbolsModeState = SYMBOLS_MODE_STATE_NONE;
|
||||
|
|
|
@ -2333,8 +2333,8 @@ public class LatinIME extends InputMethodService
|
|||
|
||||
private boolean shouldShowVoiceButton(FieldContext fieldContext, EditorInfo attribute) {
|
||||
return ENABLE_VOICE_BUTTON && fieldCanDoVoice(fieldContext)
|
||||
&& !(attribute != null && attribute.privateImeOptions != null
|
||||
&& attribute.privateImeOptions.equals(IME_OPTION_NO_MICROPHONE))
|
||||
&& !(attribute != null
|
||||
&& IME_OPTION_NO_MICROPHONE.equals(attribute.privateImeOptions))
|
||||
&& SpeechRecognizer.isRecognitionAvailable(this);
|
||||
}
|
||||
|
||||
|
|
|
@ -60,6 +60,7 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
private final Drawable mButtonArrowRightIcon;
|
||||
private Key mEnterKey;
|
||||
private Key mF1Key;
|
||||
private final Drawable mHintIcon;
|
||||
private Key mSpaceKey;
|
||||
private Key m123Key;
|
||||
private int mSpaceKeyIndex = -1;
|
||||
|
@ -69,6 +70,7 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
private LanguageSwitcher mLanguageSwitcher;
|
||||
private final Resources mRes;
|
||||
private final Context mContext;
|
||||
private int mMode; // TODO: remove this and use the corresponding mode in the parent class
|
||||
// Whether this keyboard has voice icon on it
|
||||
private boolean mHasVoiceButton;
|
||||
// Whether voice icon is enabled at all
|
||||
|
@ -119,6 +121,7 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
super(context, xmlLayoutResId, mode);
|
||||
final Resources res = context.getResources();
|
||||
mContext = context;
|
||||
mMode = mode;
|
||||
mRes = res;
|
||||
mShiftLockIcon = res.getDrawable(R.drawable.sym_keyboard_shift_locked);
|
||||
mShiftLockPreviewIcon = res.getDrawable(R.drawable.sym_keyboard_feedback_shift_locked);
|
||||
|
@ -133,6 +136,7 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
mButtonArrowRightIcon = res.getDrawable(R.drawable.sym_keyboard_language_arrows_right);
|
||||
m123MicIcon = res.getDrawable(R.drawable.sym_keyboard_123_mic);
|
||||
m123MicPreviewIcon = res.getDrawable(R.drawable.sym_keyboard_feedback_123_mic);
|
||||
mHintIcon = res.getDrawable(R.drawable.hint_popup);
|
||||
setDefaultBounds(m123MicPreviewIcon);
|
||||
sSpacebarVerticalCorrection = res.getDimensionPixelOffset(
|
||||
R.dimen.spacebar_vertical_correction);
|
||||
|
@ -180,10 +184,12 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
key.text = null;
|
||||
key.iconPreview = null;
|
||||
key.icon = null;
|
||||
key.hintIcon = null;
|
||||
key.label = label;
|
||||
}
|
||||
|
||||
public void setImeOptions(Resources res, int mode, int options) {
|
||||
mMode = mode;
|
||||
if (mEnterKey == null)
|
||||
return;
|
||||
switch (options & (EditorInfo.IME_MASK_ACTION | EditorInfo.IME_FLAG_NO_ENTER_ACTION)) {
|
||||
|
@ -292,7 +298,7 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
mMicIcon = mRes.getDrawable(R.drawable.sym_keyboard_mic);
|
||||
m123MicIcon = mRes.getDrawable(R.drawable.sym_keyboard_123_mic);
|
||||
}
|
||||
updateF1Key();
|
||||
updateDynamicKeys();
|
||||
if (mSpaceKey != null) {
|
||||
updateSpaceBarForLocale(isAutoCompletion, isBlack);
|
||||
}
|
||||
|
@ -301,11 +307,16 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
public void setVoiceMode(boolean hasVoiceButton, boolean hasVoice) {
|
||||
mHasVoiceButton = hasVoiceButton;
|
||||
mVoiceEnabled = hasVoice;
|
||||
updateDynamicKeys();
|
||||
}
|
||||
|
||||
private void updateDynamicKeys() {
|
||||
update123Key();
|
||||
updateF1Key();
|
||||
}
|
||||
|
||||
private void updateF1Key() {
|
||||
if (mF1Key == null) return;
|
||||
private void update123Key() {
|
||||
// Update KEYCODE_MODE_CHANGE key only on alphabet mode, not on symbol mode.
|
||||
if (m123Key != null && mIsAlphaKeyboard) {
|
||||
if (mVoiceEnabled && !mHasVoiceButton) {
|
||||
m123Key.icon = m123MicIcon;
|
||||
|
@ -317,20 +328,50 @@ public class LatinKeyboard extends BaseKeyboard {
|
|||
m123Key.label = m123Label;
|
||||
}
|
||||
}
|
||||
|
||||
if (mHasVoiceButton && mVoiceEnabled) {
|
||||
mF1Key.codes = new int[] { LatinKeyboardView.KEYCODE_VOICE };
|
||||
mF1Key.label = null;
|
||||
mF1Key.icon = mMicIcon;
|
||||
mF1Key.iconPreview = mMicPreviewIcon;
|
||||
mF1Key.popupResId = R.xml.popup_mic;
|
||||
} else {
|
||||
mF1Key.label = ",";
|
||||
mF1Key.codes = new int[] { ',' };
|
||||
mF1Key.icon = null;
|
||||
mF1Key.iconPreview = null;
|
||||
mF1Key.popupResId = R.xml.popup_comma;
|
||||
}
|
||||
|
||||
private void updateF1Key() {
|
||||
// Update KEYCODE_F1 key. Please note that some keyboard layouts have no F1 key.
|
||||
if (mF1Key == null)
|
||||
return;
|
||||
|
||||
if (mIsAlphaKeyboard) {
|
||||
if (mMode == KeyboardSwitcher.MODE_URL) {
|
||||
setNonMicF1Key(mF1Key, "/", R.xml.popup_slash);
|
||||
} else if (mMode == KeyboardSwitcher.MODE_EMAIL) {
|
||||
setNonMicF1Key(mF1Key, "@", R.xml.popup_at);
|
||||
} else {
|
||||
if (mVoiceEnabled && mHasVoiceButton) {
|
||||
setMicF1Key(mF1Key);
|
||||
} else {
|
||||
setNonMicF1Key(mF1Key, ",", R.xml.popup_comma);
|
||||
}
|
||||
}
|
||||
} else { // Symbols keyboard
|
||||
if (mVoiceEnabled && mHasVoiceButton) {
|
||||
setMicF1Key(mF1Key);
|
||||
} else {
|
||||
setNonMicF1Key(mF1Key, ",", R.xml.popup_comma);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void setMicF1Key(Key key) {
|
||||
key.label = null;
|
||||
key.codes = new int[] { LatinKeyboardView.KEYCODE_VOICE };
|
||||
key.popupResId = R.xml.popup_mic;
|
||||
key.icon = mMicIcon;
|
||||
key.hintIcon = mHintIcon;
|
||||
key.iconPreview = mMicPreviewIcon;
|
||||
}
|
||||
|
||||
private void setNonMicF1Key(Key key, String label, int popupResId) {
|
||||
key.label = label;
|
||||
key.codes = new int[] { label.charAt(0) };
|
||||
key.popupResId = popupResId;
|
||||
key.icon = null;
|
||||
key.hintIcon = mHintIcon;
|
||||
key.iconPreview = null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -57,6 +57,8 @@ import java.util.WeakHashMap;
|
|||
* A view that renders a virtual {@link LatinKeyboard}. It handles rendering of keys and
|
||||
* detecting key presses and touch movements.
|
||||
*
|
||||
* TODO: References to LatinKeyboard in this class should be replaced with ones to its base class.
|
||||
*
|
||||
* @attr ref R.styleable#LatinKeyboardBaseView_keyBackground
|
||||
* @attr ref R.styleable#LatinKeyboardBaseView_keyPreviewLayout
|
||||
* @attr ref R.styleable#LatinKeyboardBaseView_keyPreviewOffset
|
||||
|
@ -160,7 +162,7 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
|
|||
// Miscellaneous constants
|
||||
/* package */ static final int NOT_A_KEY = -1;
|
||||
private static final int[] LONG_PRESSABLE_STATE_SET = { android.R.attr.state_long_pressable };
|
||||
private static final int NUMBER_HINT_VERTICAL_ADJUSTMENT_PIXEL = -1;
|
||||
private static final int HINT_ICON_VERTICAL_ADJUSTMENT_PIXEL = -1;
|
||||
|
||||
// XML attribute
|
||||
private int mKeyTextSize;
|
||||
|
@ -861,32 +863,20 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
|
|||
// Turn off drop shadow
|
||||
paint.setShadowLayer(0, 0, 0, 0);
|
||||
}
|
||||
Drawable icon = null;
|
||||
if (key.label == null && key.icon != null)
|
||||
icon = key.icon;
|
||||
if (icon == null && key.hintIcon != null && drawHintIcon)
|
||||
icon = key.hintIcon;
|
||||
if (icon != null) {
|
||||
// Special handing for the upper-right number hint icons
|
||||
final int drawableWidth;
|
||||
final int drawableHeight;
|
||||
final int drawableX;
|
||||
final int drawableY;
|
||||
if (icon == key.hintIcon) {
|
||||
drawableWidth = key.width;
|
||||
drawableHeight = key.height;
|
||||
drawableX = 0;
|
||||
drawableY = NUMBER_HINT_VERTICAL_ADJUSTMENT_PIXEL;
|
||||
} else {
|
||||
drawableWidth = key.icon.getIntrinsicWidth();
|
||||
drawableHeight = key.icon.getIntrinsicHeight();
|
||||
drawableX = (key.width + padding.left - padding.right - drawableWidth) / 2;
|
||||
drawableY = (key.height + padding.top - padding.bottom - drawableHeight) / 2;
|
||||
if (key.label == null && key.icon != null) {
|
||||
int drawableWidth = key.icon.getIntrinsicWidth();
|
||||
int drawableHeight = key.icon.getIntrinsicHeight();
|
||||
int drawableX = (key.width + padding.left - padding.right - drawableWidth) / 2;
|
||||
int drawableY = (key.height + padding.top - padding.bottom - drawableHeight) / 2;
|
||||
drawIcon(canvas, key.icon, drawableX, drawableY, drawableWidth, drawableHeight);
|
||||
|
||||
}
|
||||
canvas.translate(drawableX, drawableY);
|
||||
icon.setBounds(0, 0, drawableWidth, drawableHeight);
|
||||
icon.draw(canvas);
|
||||
canvas.translate(-drawableX, -drawableY);
|
||||
if (key.hintIcon != null && drawHintIcon) {
|
||||
int drawableWidth = key.width;
|
||||
int drawableHeight = key.height;
|
||||
int drawableX = 0;
|
||||
int drawableY = HINT_ICON_VERTICAL_ADJUSTMENT_PIXEL;
|
||||
drawIcon(canvas, key.hintIcon, drawableX, drawableY, drawableWidth, drawableHeight);
|
||||
}
|
||||
canvas.translate(-key.x - kbdPaddingLeft, -key.y - kbdPaddingTop);
|
||||
}
|
||||
|
@ -920,6 +910,13 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
|
|||
mDirtyRect.setEmpty();
|
||||
}
|
||||
|
||||
private void drawIcon(Canvas canvas, Drawable icon, int x, int y, int width, int height) {
|
||||
canvas.translate(x, y);
|
||||
icon.setBounds(0, 0, width, height);
|
||||
icon.draw(canvas);
|
||||
canvas.translate(-x, -y);
|
||||
}
|
||||
|
||||
public void setForeground(boolean foreground) {
|
||||
mInForeground = foreground;
|
||||
}
|
||||
|
@ -962,8 +959,7 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
|
|||
// WindowManager.BadTokenException.
|
||||
if (key == null || !mInForeground)
|
||||
return;
|
||||
// Should not draw number hint icons
|
||||
if (key.icon != null && key.label == null) {
|
||||
if (key.icon != null) {
|
||||
mPreviewText.setCompoundDrawables(null, null, null,
|
||||
key.iconPreview != null ? key.iconPreview : key.icon);
|
||||
mPreviewText.setText(null);
|
||||
|
|
Loading…
Reference in New Issue