327763e518
This change introduces the following features to Keyboard XML format. * "keyXPos" can specify the key X coordinate directly. * "keyXPos" can be negative. The X coordinate will be calcluated from the right edge of the keyboard toward left. * "keyWidth" can be zero to be filled up to the right side. * "keyWidth can be negative. The key will be filled up to both sides. * Spacer's horizontalGap is renamed as keyWidth, and can be inherited from key-style. * Spacer can have keyXPos attribute. Using these syntax, all keyboard layouts have been re-written. Cherry-Pick: I314b2e8ca2aa145ff9506cbf927140a15685af42 Bug: 4442045 Change-Id: I048fe5eaef020d8472ab577e9d326042bae2f3fa
259 lines
10 KiB
XML
259 lines
10 KiB
XML
<?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"
|
|
>
|
|
<!-- This row is intentionally not marked as a bottom row -->
|
|
<Row
|
|
latin:keyWidth="8.047%p"
|
|
>
|
|
<switch>
|
|
<case latin:hasSettingsKey="true">
|
|
<Key
|
|
latin:keyStyle="settingsKeyStyle"
|
|
latin:keyWidth="8.047%p" />
|
|
</case>
|
|
</switch>
|
|
<Spacer
|
|
latin:keyXPos="15.157%p"
|
|
latin:keyWidth="fillRight" />
|
|
<switch>
|
|
<case
|
|
latin:languageCode="ru"
|
|
>
|
|
<switch>
|
|
<!-- TODO: implement logical OR for <case> attribute -->
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyStyle="comKeyStyle" />
|
|
</case>
|
|
<case
|
|
latin:mode="url"
|
|
>
|
|
<Key
|
|
latin:keyStyle="comKeyStyle" />
|
|
</case>
|
|
<case
|
|
latin:imeAction="actionSearch"
|
|
>
|
|
<Key
|
|
latin:keyLabel=":"
|
|
latin:manualTemporaryUpperCaseCode="43"
|
|
latin:keyHintIcon="@drawable/key_hint_plus_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_plus_large_holo"
|
|
latin:popupCharacters="+" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyStyle="smileyKeyStyle" />
|
|
</default>
|
|
</switch>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyLabel="\@" />
|
|
</case>
|
|
<case
|
|
latin:mode="url"
|
|
>
|
|
<Key
|
|
latin:keyLabel="-"
|
|
latin:manualTemporaryUpperCaseCode="95"
|
|
latin:keyHintIcon="@drawable/key_hint_underline_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
|
|
latin:popupCharacters="_" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyLabel="/"
|
|
latin:manualTemporaryUpperCaseCode="64"
|
|
latin:keyHintIcon="@drawable/key_hint_at_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_at_large_holo"
|
|
latin:popupCharacters="\@" />
|
|
</default>
|
|
</switch>
|
|
</case>
|
|
<!-- not languageCode="ru" -->
|
|
<default>
|
|
<switch>
|
|
<case
|
|
latin:mode="url"
|
|
>
|
|
<Key
|
|
latin:keyStyle="comKeyStyle"
|
|
latin:keyWidth="16.084%p" />
|
|
</case>
|
|
<default>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyStyle="comKeyStyle" />
|
|
</case>
|
|
<case
|
|
latin:imeAction="actionSearch"
|
|
>
|
|
<Key
|
|
latin:keyLabel=":"
|
|
latin:manualTemporaryUpperCaseCode="43"
|
|
latin:keyHintIcon="@drawable/key_hint_plus_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_plus_large_holo"
|
|
latin:popupCharacters="+" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyStyle="smileyKeyStyle" />
|
|
</default>
|
|
</switch>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyLabel="\@" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyLabel="/"
|
|
latin:manualTemporaryUpperCaseCode="64"
|
|
latin:keyHintIcon="@drawable/key_hint_at_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_at_large_holo"
|
|
latin:popupCharacters="\@" />
|
|
</default>
|
|
</switch>
|
|
</default>
|
|
</switch>
|
|
</default>
|
|
</switch>
|
|
<Key
|
|
latin:keyStyle="spaceKeyStyle"
|
|
latin:keyXPos="31.250%p"
|
|
latin:keyWidth="37.500%p" />
|
|
<switch>
|
|
<case
|
|
latin:languageCode="ru"
|
|
>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyLabel="-" />
|
|
</case>
|
|
<case
|
|
latin:mode="url"
|
|
>
|
|
<Key
|
|
latin:keyLabel="/"
|
|
latin:manualTemporaryUpperCaseCode="58"
|
|
latin:keyHintIcon="@drawable/key_hint_colon_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_colon_large_holo"
|
|
latin:popupCharacters=":" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyLabel="\?"
|
|
latin:manualTemporaryUpperCaseCode="95"
|
|
latin:keyHintIcon="@drawable/key_hint_underline_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
|
|
latin:popupCharacters="_" />
|
|
</default>
|
|
</switch>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyLabel="_" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyLabel="!"
|
|
latin:manualTemporaryUpperCaseCode="34"
|
|
latin:keyHintIcon="@drawable/key_hint_quote_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_quote_large_holo"
|
|
latin:popupCharacters="\'" />
|
|
</default>
|
|
</switch>
|
|
</case>
|
|
<!-- not languageCode="ru" -->
|
|
<default>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyLabel="-" />
|
|
</case>
|
|
<case
|
|
latin:mode="url"
|
|
>
|
|
<Key
|
|
latin:keyLabel="/"
|
|
latin:manualTemporaryUpperCaseCode="58"
|
|
latin:keyHintIcon="@drawable/key_hint_colon_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_colon_large_holo"
|
|
latin:popupCharacters=":" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyLabel="\'"
|
|
latin:manualTemporaryUpperCaseCode="34"
|
|
latin:keyHintIcon="@drawable/key_hint_quote_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_quote_large_holo"
|
|
latin:popupCharacters=""" />
|
|
</default>
|
|
</switch>
|
|
<switch>
|
|
<case
|
|
latin:mode="email"
|
|
>
|
|
<Key
|
|
latin:keyLabel="_" />
|
|
</case>
|
|
<default>
|
|
<Key
|
|
latin:keyLabel="-"
|
|
latin:manualTemporaryUpperCaseCode="95"
|
|
latin:keyHintIcon="@drawable/key_hint_underline_holo"
|
|
latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
|
|
latin:popupCharacters="_" />
|
|
</default>
|
|
</switch>
|
|
</default>
|
|
</switch>
|
|
<switch>
|
|
<case
|
|
latin:voiceKeyEnabled="true"
|
|
>
|
|
<Key
|
|
latin:keyStyle="micKeyStyle"
|
|
latin:keyXPos="-8.047%p"
|
|
latin:keyWidth="fillRight" />
|
|
</case>
|
|
</switch>
|
|
</Row>
|
|
</merge>
|