1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- 3 /* 4 ** 5 ** Copyright 2011, The Android Open Source Project 6 ** 7 ** Licensed under the Apache License, Version 2.0 (the "License"); 8 ** you may not use this file except in compliance with the License. 9 ** You may obtain a copy of the License at 10 ** 11 ** http://www.apache.org/licenses/LICENSE-2.0 12 ** 13 ** Unless required by applicable law or agreed to in writing, software 14 ** distributed under the License is distributed on an "AS IS" BASIS, 15 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 ** See the License for the specific language governing permissions and 17 ** limitations under the License. 18 */ 19 --> 20 21 <merge 22 xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" 23 > 24 <switch> 25 <case 26 latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted" 27 > 28 <key-style 29 latin:styleName="hasShiftedLetterHintStyle" 30 latin:keyLabelFlags="hasShiftedLetterHint|shiftedLetterActivated" /> 31 </case> 32 <default> 33 <key-style 34 latin:styleName="hasShiftedLetterHintStyle" 35 latin:keyLabelFlags="hasShiftedLetterHint" /> 36 </default> 37 </switch> 38 <include 39 latin:keyboardLayout="@xml/key_styles_settings" /> 40 <!-- Functional key styles --> 41 <!-- Base style for shift key. A single space is used for dummy label in moreKeys. --> 42 <key-style 43 latin:styleName="baseForShiftKeyStyle" 44 latin:keyActionFlags="noKeyPreview" 45 latin:keyLabelFlags="preserveCase" 46 latin:moreKeys="!noPanelAutoMoreKey!, |!code/key_capslock" /> 47 <switch> 48 <case 49 latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetAutomaticShifted" 50 > 51 <key-style 52 latin:styleName="shiftKeyStyle" 53 latin:keySpec="!icon/shift_key_shifted|!code/key_shift" 54 latin:backgroundType="stickyOff" 55 latin:parentStyle="baseForShiftKeyStyle" /> 56 </case> 57 <case 58 latin:keyboardLayoutSetElement="alphabetShiftLocked|alphabetShiftLockShifted" 59 > 60 <key-style 61 latin:styleName="shiftKeyStyle" 62 latin:keySpec="!icon/shift_key_shifted|!code/key_shift" 63 latin:backgroundType="stickyOn" 64 latin:parentStyle="baseForShiftKeyStyle" /> 65 </case> 66 <default> 67 <key-style 68 latin:styleName="shiftKeyStyle" 69 latin:keySpec="!icon/shift_key|!code/key_shift" 70 latin:backgroundType="stickyOff" 71 latin:parentStyle="baseForShiftKeyStyle" /> 72 </default> 73 </switch> 74 <key-style 75 latin:styleName="deleteKeyStyle" 76 latin:keySpec="!icon/delete_key|!code/key_delete" 77 latin:keyActionFlags="isRepeatable|noKeyPreview" 78 latin:backgroundType="functional" /> 79 <include 80 latin:keyboardLayout="@xml/key_styles_enter" /> 81 <!-- TODO: Currently there is no way to specify icon alignment per theme. --> 82 <key-style 83 latin:styleName="spaceKeyStyle" 84 latin:keySpec="!icon/space_key|!code/key_space" 85 latin:backgroundType="spacebar" 86 latin:keyActionFlags="noKeyPreview|enableLongPress" /> 87 <!-- U+200C: ZERO WIDTH NON-JOINER 88 U+200D: ZERO WIDTH JOINER --> 89 <key-style 90 latin:styleName="zwnjKeyStyle" 91 latin:keySpec="!icon/zwnj_key|‌" 92 latin:moreKeys="!icon/zwj_key|‍" 93 latin:keyLabelFlags="hasPopupHint" 94 latin:keyActionFlags="noKeyPreview" /> 95 <key-style 96 latin:styleName="shortcutKeyStyle" 97 latin:keySpec="!icon/shortcut_key|!code/key_shortcut" 98 latin:keyIconDisabled="!icon/shortcut_key_disabled" 99 latin:keyActionFlags="noKeyPreview" 100 latin:backgroundType="functional" /> 101 <key-style 102 latin:styleName="languageSwitchKeyStyle" 103 latin:keySpec="!icon/language_switch_key|!code/key_language_switch" 104 latin:keyActionFlags="noKeyPreview|altCodeWhileTyping|enableLongPress" 105 latin:altCode="!code/key_space" /> 106 <key-style 107 latin:styleName="emojiKeyStyle" 108 latin:keySpec="!icon/emoji_normal_key|!code/key_emoji" 109 latin:keyActionFlags="noKeyPreview" 110 latin:backgroundType="functional" /> 111 <key-style 112 latin:styleName="settingsKeyStyle" 113 latin:keySpec="!icon/settings_key|!code/key_settings" 114 latin:keyActionFlags="noKeyPreview" 115 latin:backgroundType="functional" /> 116 <switch> 117 <case 118 latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted" 119 latin:navigatePrevious="true" 120 > 121 <key-style 122 latin:styleName="tabKeyStyle" 123 latin:keySpec="!icon/tab_key|!code/key_action_previous" 124 latin:backgroundType="functional" /> 125 </case> 126 <case 127 latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked" 128 latin:navigateNext="true" 129 > 130 <key-style 131 latin:styleName="tabKeyStyle" 132 latin:keySpec="!icon/tab_key|!code/key_action_next" 133 latin:backgroundType="functional" /> 134 </case> 135 <default> 136 <key-style 137 latin:styleName="tabKeyStyle" 138 latin:keySpec="!icon/tab_key|!code/key_tab" 139 latin:backgroundType="functional" /> 140 </default> 141 </switch> 142 <key-style 143 latin:styleName="baseForLayoutSwitchKeyStyle" 144 latin:keyLabelFlags="preserveCase|followFunctionalTextColor" 145 latin:keyActionFlags="noKeyPreview" 146 latin:backgroundType="functional" /> 147 <key-style 148 latin:styleName="toSymbolKeyStyle" 149 latin:keySpec="!text/keylabel_to_symbol|!code/key_switch_alpha_symbol" 150 latin:parentStyle="baseForLayoutSwitchKeyStyle" /> 151 <key-style 152 latin:styleName="toAlphaKeyStyle" 153 latin:keySpec="!text/keylabel_to_alpha|!code/key_switch_alpha_symbol" 154 latin:parentStyle="baseForLayoutSwitchKeyStyle" /> 155 <key-style 156 latin:styleName="toMoreSymbolKeyStyle" 157 latin:keySpec="!text/keylabel_tablet_to_more_symbol|!code/key_shift" 158 latin:parentStyle="baseForLayoutSwitchKeyStyle" /> 159 <key-style 160 latin:styleName="backFromMoreSymbolKeyStyle" 161 latin:keySpec="!text/keylabel_to_symbol|!code/key_shift" 162 latin:parentStyle="baseForLayoutSwitchKeyStyle" /> 163 <key-style 164 latin:styleName="comKeyStyle" 165 latin:keySpec="!text/keyspec_popular_domain" 166 latin:keyLabelFlags="autoXScale|fontNormal|hasPopupHint|preserveCase" 167 latin:moreKeys="!text/morekeys_popular_domain" /> 168 </merge> 169