2013-10-17 08:53:33 +00:00
|
|
|
<?xml version="1.0" encoding="utf-8"?>
|
|
|
|
<!--
|
|
|
|
/*
|
|
|
|
**
|
|
|
|
** Copyright 2013, 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"
|
|
|
|
>
|
|
|
|
<!-- TODO: Stop using many conditional cases for emoji_key_as_more_key. There are way too many to maintain. -->
|
|
|
|
<!-- Navigate more keys style -->
|
|
|
|
<switch>
|
|
|
|
<!-- latin:passwordInput="true" -->
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionNext"
|
|
|
|
latin:navigatePrevious="true"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle"
|
|
|
|
latin:keyLabelFlags="hasPopupHint|preserveCase"
|
|
|
|
latin:moreKeys="!text/action_previous_as_more_key" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionNext"
|
|
|
|
latin:navigatePrevious="false"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionPrevious"
|
|
|
|
latin:navigateNext="true"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle"
|
|
|
|
latin:keyLabelFlags="hasPopupHint|preserveCase"
|
|
|
|
latin:moreKeys="!text/action_next_as_more_key" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionPrevious"
|
|
|
|
latin:navigateNext="false"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:navigateNext="true"
|
|
|
|
latin:navigatePrevious="true"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle"
|
|
|
|
latin:keyLabelFlags="hasPopupHint|preserveCase"
|
|
|
|
latin:moreKeys="!fixedColumnOrder!2,!needsDividers!,!text/action_previous_as_more_key,!text/action_next_as_more_key" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:navigateNext="true"
|
|
|
|
latin:navigatePrevious="false"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle"
|
|
|
|
latin:keyLabelFlags="hasPopupHint|preserveCase"
|
|
|
|
latin:moreKeys="!text/action_next_as_more_key" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:navigateNext="false"
|
|
|
|
latin:navigatePrevious="true"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle"
|
|
|
|
latin:keyLabelFlags="hasPopupHint|preserveCase"
|
|
|
|
latin:moreKeys="!text/action_previous_as_more_key" />
|
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:navigateNext="false"
|
|
|
|
latin:navigatePrevious="false"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle" />
|
|
|
|
</case>
|
|
|
|
<default>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="navigateMoreKeysStyle" />
|
|
|
|
</default>
|
|
|
|
</switch>
|
|
|
|
<!-- Enter key style -->
|
|
|
|
<key-style
|
|
|
|
latin:styleName="defaultEnterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!icon/enter_key|!code/key_enter"
|
2013-10-17 08:53:33 +00:00
|
|
|
latin:keyLabelFlags="preserveCase|autoXScale|followKeyLabelRatio"
|
|
|
|
latin:keyActionFlags="noKeyPreview"
|
|
|
|
latin:backgroundType="functional"
|
|
|
|
latin:parentStyle="navigateMoreKeysStyle" />
|
|
|
|
<switch>
|
|
|
|
<!-- Shift + Enter in textMultiLine field. -->
|
|
|
|
<case
|
|
|
|
latin:isMultiLine="true"
|
|
|
|
latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-03-19 08:26:17 +00:00
|
|
|
latin:keySpec="!icon/enter_key|!code/key_shift_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionGo"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!text/label_go_key|!code/key_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionNext"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!text/label_next_key|!code/key_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionPrevious"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!text/label_previous_key|!code/key_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionDone"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!text/label_done_key|!code/key_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionSend"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!text/label_send_key|!code/key_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionSearch"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="!icon/search_key|!code/key_enter"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<case
|
|
|
|
latin:imeAction="actionCustomLabel"
|
|
|
|
>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
2014-02-06 06:11:05 +00:00
|
|
|
latin:keySpec="dummy_label|!code/key_enter"
|
2013-10-17 08:53:33 +00:00
|
|
|
latin:keyLabelFlags="fromCustomActionLabel"
|
2014-02-06 02:34:12 +00:00
|
|
|
latin:backgroundType="action"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
2013-10-17 08:53:33 +00:00
|
|
|
</case>
|
|
|
|
<!-- imeAction is either actionNone or actionUnspecified. -->
|
|
|
|
<default>
|
|
|
|
<key-style
|
|
|
|
latin:styleName="enterKeyStyle"
|
|
|
|
latin:parentStyle="defaultEnterKeyStyle" />
|
|
|
|
</default>
|
|
|
|
</switch>
|
|
|
|
</merge>
|