466741d8a7
the change to logging to remove any private dependencies and use broadcast intents to VoiceSearch instead. I have audited this code and it appears good to go for open-source, but would appreciate a second pair of eyes. Still to do after submitting this CL: * Reintroduce Amith's memory leak fix (37557) which was the only CL added to LatinIME since the last merge over to the private copy. * Make some changes to allow LatinIME to work without voice search installed. Currently I believe it will show the mic but fail if you press it. We need to base the visibility on the mic on the availability of the service. * Fix this code to use the new Gservices framework, it's still trying to use the old one.
263 lines
14 KiB
XML
Executable file
263 lines
14 KiB
XML
Executable file
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
/*
|
|
**
|
|
** Copyright 2008, 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:android="http://schemas.android.com/apk/res/android"
|
|
android:keyWidth="10%p"
|
|
android:horizontalGap="0px"
|
|
android:verticalGap="0px"
|
|
android:keyHeight="@dimen/key_height"
|
|
>
|
|
|
|
<Row>
|
|
<Key android:codes="113" android:keyLabel="q" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="119" android:keyLabel="w"/>
|
|
<Key android:codes="101" android:keyLabel="e"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_e"
|
|
/>
|
|
<Key android:codes="114" android:keyLabel="r"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_r"/>
|
|
<Key android:codes="116" android:keyLabel="t"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_t"/>
|
|
<Key android:codes="121" android:keyLabel="y"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_y"
|
|
/>
|
|
<Key android:codes="117" android:keyLabel="u"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_u"
|
|
/>
|
|
<Key android:codes="105" android:keyLabel="i"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_i"
|
|
/>
|
|
<Key android:codes="111" android:keyLabel="o"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_o"
|
|
/>
|
|
<Key android:codes="112" android:keyLabel="p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row>
|
|
<Key android:codes="97" android:keyLabel="a" android:horizontalGap="5%p"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_a"
|
|
android:keyEdgeFlags="left"/>
|
|
<Key android:codes="115" android:keyLabel="s"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_s"
|
|
/>
|
|
<Key android:codes="100" android:keyLabel="d"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_d"/>
|
|
<Key android:codes="102" android:keyLabel="f"/>
|
|
<Key android:codes="103" android:keyLabel="g"/>
|
|
<Key android:codes="104" android:keyLabel="h"/>
|
|
<Key android:codes="106" android:keyLabel="j"/>
|
|
<Key android:codes="107" android:keyLabel="k"/>
|
|
<Key android:codes="108" android:keyLabel="l"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_l"
|
|
android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row>
|
|
<Key android:codes="-1" android:keyIcon="@drawable/sym_keyboard_shift"
|
|
android:keyWidth="15%p" android:isModifier="true"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_shift"
|
|
android:isSticky="true" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="122" android:keyLabel="z"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_z"/>
|
|
<Key android:codes="120" android:keyLabel="x"/>
|
|
<Key android:codes="99" android:keyLabel="c"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_c"
|
|
/>
|
|
<Key android:codes="118" android:keyLabel="v"/>
|
|
<Key android:codes="98" android:keyLabel="b"/>
|
|
<Key android:codes="110" android:keyLabel="n"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="@string/alternates_for_n"
|
|
/>
|
|
<Key android:codes="109" android:keyLabel="m"/>
|
|
<Key android:codes="-5" android:keyIcon="@drawable/sym_keyboard_delete"
|
|
android:keyWidth="15%p" android:keyEdgeFlags="right"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_delete"
|
|
android:isRepeatable="true"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_normal" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="40%p" android:isRepeatable="true"/>
|
|
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_return"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_normal_voice" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_mic"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="40%p" android:isRepeatable="true"/>
|
|
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_return"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
|
|
android:keyWidth="15%p"/>
|
|
<!--Key android:keyLabel="@string/popular_domain_0"
|
|
android:keyOutputText="@string/popular_domain_0"
|
|
android:popupKeyboard="@xml/popup_domains"
|
|
android:keyWidth="15%p"/-->
|
|
<Key android:keyLabel="/" android:keyWidth="15%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="15%p" android:isRepeatable="true"/>
|
|
<Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_return"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_url_voice" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:keyLabel="@string/popular_domain_0"
|
|
android:keyOutputText="@string/popular_domain_0"
|
|
android:popupKeyboard="@xml/popup_domains"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:keyLabel="/" android:keyWidth="15%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="15%p" android:isRepeatable="true"/>
|
|
<Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_return"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:keyLabel="\@" android:keyWidth="15%p"/>
|
|
<!--Key android:keyLabel="@string/popular_domain_0"
|
|
android:keyOutputText="@string/popular_domain_0"
|
|
android:popupKeyboard="@xml/popup_domains"
|
|
android:keyWidth="15%p"/-->
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="15%p" android:isRepeatable="true"/>
|
|
<Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_return"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_email_voice" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:keyLabel="\@" android:keyWidth="15%p"/>
|
|
<Key android:keyLabel="@string/popular_domain_0"
|
|
android:keyOutputText="@string/popular_domain_0"
|
|
android:popupKeyboard="@xml/popup_domains"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="15%p" android:isRepeatable="true"/>
|
|
<Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="15%p"/>
|
|
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_return"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="40%p" android:isRepeatable="true"/>
|
|
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:keyLabel=":-)" android:keyOutputText=":-) "
|
|
android:popupKeyboard="@xml/popup_smileys"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
|
|
<Row android:keyboardMode="@+id/mode_im_voice" android:rowEdgeFlags="bottom">
|
|
<Key android:codes="-2" android:keyLabel="@string/label_symbol_key"
|
|
android:popupKeyboard="@xml/kbd_popup_template"
|
|
android:popupCharacters="_"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
|
|
<Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_mic"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
|
|
android:iconPreview="@drawable/sym_keyboard_feedback_space"
|
|
android:keyWidth="40%p" android:isRepeatable="true"/>
|
|
<Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"
|
|
android:keyWidth="10%p"/>
|
|
<Key android:keyLabel=":-)" android:keyOutputText=":-) "
|
|
android:popupKeyboard="@xml/popup_smileys"
|
|
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
|
|
</Row>
|
|
</Keyboard>
|
|
|