LatinIME/java/res/xml-sw768dp/kbd_qwerty_row4.xml
Tadashi G. Takaoka 327763e518 Adaptive keyboard width/position parser
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
2011-05-31 17:52:32 +09:00

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="&quot;" />
</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>