LatinIME/java/res/xml-sw768dp/kbd_phone_symbols.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

164 lines
5.6 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.
*/
-->
<Keyboard
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
latin:keyboardHeight="@dimen/keyboardHeight"
latin:maxKeyboardHeight="@fraction/maxKeyboardHeight"
latin:minKeyboardHeight="@fraction/minKeyboardHeight"
latin:rowHeight="25%p"
latin:keyWidth="11.954%p"
latin:horizontalGap="@dimen/key_horizontal_gap"
latin:verticalGap="@dimen/key_bottom_gap"
latin:popupKeyboardTemplate="@xml/kbd_popup_template"
latin:maxPopupKeyboardColumn="@integer/config_max_popup_keyboard_column"
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
<!-- This row is intentionally not marked as a top row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
latin:keyWidth="7.969%p"
latin:keyEdgeFlags="left" />
<Key
latin:code="45"
latin:keyLabel=" - "
latin:keyXPos="13.829%p"
latin:keyWidth="8.047%p" />
<Key
latin:code="43"
latin:keyLabel=" + "
latin:keyWidth="8.047%p" />
<Key
latin:code="44"
latin:keyLabel="@string/label_pause_key"
latin:keyWidth="8.047%p" />
<!-- To match one character label size with "Tab" and "Pause, I placed spaces around the
char '-' and '+'. -->
<Key
latin:keyStyle="num1KeyStyle"
latin:keyXPos="45.000%p" />
<Key
latin:keyStyle="num2KeyStyle" />
<Key
latin:keyStyle="num3KeyStyle" />
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
latin:keyWidth="fillRight"
latin:keyEdgeFlags="right" />
</Row>
<Row>
<Key
latin:keyStyle="moreKeyStyle"
latin:keyWidth="11.172%p"
latin:keyEdgeFlags="left" />
<Key
latin:code="44"
latin:keyLabel=" , "
latin:keyXPos="13.829%p"
latin:keyWidth="8.047%p" />
<Key
latin:code="46"
latin:keyLabel=" . "
latin:keyWidth="8.047%p" />
<Key
latin:code="59"
latin:keyLabel="@string/label_wait_key"
latin:keyWidth="8.047%p" />
<!-- To match one character label size with "More" and "Wait", I placed spaces around the
char ',' and '.'. -->
<Key
latin:keyStyle="num4KeyStyle"
latin:keyXPos="45.000%p" />
<Key
latin:keyStyle="num5KeyStyle" />
<Key
latin:keyStyle="num6KeyStyle" />
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-15.704%p"
latin:keyWidth="fillRight"
latin:keyEdgeFlags="right" />
</Row>
<Row>
<!-- To match one character label size with "More" and etc., I placed spaces around the
char 'N', '(' and ')'. -->
<!-- There is an empty area below the "More" key and left of the "(" key. To ignore
the touch event on the area, "(" is intentionally not marked as a left edge key. -->
<Key
latin:code="40"
latin:keyLabel=" ( "
latin:keyXPos="13.829%p"
latin:keyWidth="8.047%p" />
<Key
latin:code="41"
latin:keyLabel=" ) "
latin:keyWidth="8.047%p" />
<Key
latin:code="78"
latin:keyLabel=" N "
latin:keyWidth="8.047%p" />
<Key
latin:keyStyle="num7KeyStyle"
latin:keyXPos="45.000%p" />
<Key
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
<!-- There is an empty area below the "Enter" key and right of the "9" key. To ignore
the touch event on the area, "9" is intentionally not marked as a right edge key. -->
</Row>
<!-- This row is intentionally not marked as a bottom row -->
<Row>
<switch>
<case latin:hasSettingsKey="true">
<Key
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="8.047%p" />
</case>
</switch>
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
latin:keyXPos="13.829%p"
latin:keyWidth="24.140%p" />
<Key
latin:keyStyle="numStarKeyStyle"
latin:keyXPos="45.000%p" />
<Key
latin:keyStyle="num0KeyStyle" />
<Key
latin:keyStyle="numPoundKeyStyle" />
<switch>
<case
latin:voiceKeyEnabled="true"
>
<Key
latin:keyStyle="micKeyStyle"
latin:keyXPos="-8.047%p"
latin:keyWidth="fillRight" />
</case>
</switch>
</Row>
</Keyboard>