1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4**
5** Copyright 2013, 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    <!-- Navigate more keys style -->
25    <include latin:keyboardLayout="@xml/key_styles_navigate_more_keys" />
26    <switch>
27        <case
28            latin:imeAction="actionNext"
29            latin:navigatePrevious="true"
30        >
31            <key-style
32                latin:styleName="navigateMoreKeysStyle"
33                latin:parentStyle="navigatePreviousMoreKeysStyle" />
34        </case>
35        <case
36            latin:imeAction="actionNext"
37        >
38            <key-style
39                latin:styleName="navigateMoreKeysStyle" />
40        </case>
41        <case
42            latin:imeAction="actionPrevious"
43            latin:navigateNext="true"
44        >
45            <key-style
46                latin:styleName="navigateMoreKeysStyle"
47                latin:parentStyle="navigateNextMoreKeysStyle" />
48        </case>
49        <case
50            latin:imeAction="actionPrevious"
51        >
52            <key-style
53                latin:styleName="navigateMoreKeysStyle" />
54        </case>
55        <case
56            latin:navigateNext="true"
57            latin:navigatePrevious="true"
58        >
59            <key-style
60                latin:styleName="navigateMoreKeysStyle"
61                latin:parentStyle="navigatePreviousNextMoreKeysStyle" />
62        </case>
63        <case
64            latin:navigateNext="true"
65        >
66            <key-style
67                latin:styleName="navigateMoreKeysStyle"
68                latin:parentStyle="navigateNextMoreKeysStyle" />
69        </case>
70        <case
71            latin:navigatePrevious="true"
72        >
73            <key-style
74                latin:styleName="navigateMoreKeysStyle"
75                latin:parentStyle="navigatePreviousMoreKeysStyle" />
76        </case>
77        <default>
78            <key-style
79                latin:styleName="navigateMoreKeysStyle" />
80        </default>
81    </switch>
82    <!-- Enter key style -->
83    <switch>
84        <case latin:keyboardTheme="ICS|KLP">
85            <key-style
86                latin:styleName="defaultEnterKeyStyle"
87                latin:keySpec="!icon/enter_key|!code/key_enter"
88                latin:keyLabelFlags="preserveCase|autoXScale|followKeyLabelRatio|followFunctionalTextColor"
89                latin:keyActionFlags="noKeyPreview"
90                latin:backgroundType="action"
91                latin:parentStyle="navigateMoreKeysStyle" />
92        </case>
93        <!-- keyboardTheme="LXXLight|LXXDark" -->
94        <default>
95            <key-style
96                latin:styleName="defaultEnterKeyStyle"
97                latin:keySpec="!icon/enter_key|!code/key_enter"
98                latin:keyLabelFlags="preserveCase|autoXScale|followKeyLabelRatio|followFunctionalTextColor|keepBackgroundAspectRatio"
99                latin:keyActionFlags="noKeyPreview"
100                latin:backgroundType="action"
101                latin:parentStyle="navigateMoreKeysStyle" />
102        </default>
103    </switch>
104    <include latin:keyboardLayout="@xml/key_styles_actions" />
105    <switch>
106        <!-- Shift + Enter in textMultiLine field. -->
107        <case
108            latin:isMultiLine="true"
109            latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted"
110        >
111            <key-style
112                latin:styleName="enterKeyStyle"
113                latin:keySpec="!icon/enter_key|!code/key_shift_enter"
114                latin:parentStyle="defaultEnterKeyStyle" />
115        </case>
116        <case
117            latin:imeAction="actionGo"
118        >
119            <key-style
120                latin:styleName="enterKeyStyle"
121                latin:parentStyle="goActionKeyStyle" />
122        </case>
123        <case
124            latin:imeAction="actionNext"
125        >
126            <key-style
127                latin:styleName="enterKeyStyle"
128                latin:parentStyle="nextActionKeyStyle" />
129        </case>
130        <case
131            latin:imeAction="actionPrevious"
132        >
133            <key-style
134                latin:styleName="enterKeyStyle"
135                latin:parentStyle="previousActionKeyStyle" />
136        </case>
137        <case
138            latin:imeAction="actionDone"
139        >
140            <key-style
141                latin:styleName="enterKeyStyle"
142                latin:parentStyle="doneActionKeyStyle" />
143        </case>
144        <case
145            latin:imeAction="actionSend"
146        >
147            <key-style
148                latin:styleName="enterKeyStyle"
149                latin:parentStyle="sendActionKeyStyle" />
150        </case>
151        <case
152            latin:imeAction="actionSearch"
153        >
154            <key-style
155                latin:styleName="enterKeyStyle"
156                latin:parentStyle="searchActionKeyStyle" />
157        </case>
158        <case
159            latin:imeAction="actionCustomLabel"
160        >
161            <key-style
162                latin:styleName="enterKeyStyle"
163                latin:parentStyle="customLabelActionKeyStyle" />
164        </case>
165        <!-- imeAction is either actionNone or actionUnspecified. -->
166        <default>
167            <key-style
168                latin:styleName="enterKeyStyle"
169                latin:parentStyle="defaultEnterKeyStyle" />
170        </default>
171    </switch>
172</merge>
173