Commit graph

264 commits

Author SHA1 Message Date
Tadashi G. Takaoka
71c695da22 Remove BIDI mirroring hack from Key
This change also removes isRtlKeyboard attribute from <Keyboard/>

Bug: 5948247
Change-Id: I85998f17ae146a4c8cd0f419ab820b746cb8974f
2012-02-01 22:58:16 +09:00
Tadashi G. Takaoka
a5c96f376a Move long press shift handling from PointerTracker to KeyboardState
This change also
  * Rename phone shift keyboard to phone symbols keyboard.
    Use CODE_SWITCH_ALPHA_SYMBOL code to switch between phone and phone symbols keyboard.
  * Remove phone symbols keyboard from tablet.
  * Introduces enableLongPress flag of Key.keyActionFlags attribute.
  * Remove clumsy long press code from PointerTracker.
  * Remove CODE_CAPSLOCK handling from LatinIME.
  * Make KeyboardSwitcher to invoke haptic and audio feedback.

Change-Id: I00e1f697a10ab5112aec75e36853b96246ff5054
2012-02-01 19:04:21 +09:00
Tadashi G. Takaoka
ca2f051cc1 Auto generate various shift states alphabet keyboard automatically
If any shift state variants of alphabet keyboard layout is not
specified in KeyboardSet.Element, it will be automatically generated
from base alphabet keyboard definition.

This change also
  * Eliminates KeyboardShiftState object from Keyboard.
  * Removes various set shift state methods from Keyboard.
  * Removes KeyboardSet.Element.elementAutoGenerate attribute.
  * Separates "sticky" Key.backgroundType to "stickyOff" and "stickyOn"
  * Add preserveCase flag to smiley, .com, and labeled special keys.
  * Rename KeyboardShiftState class to AlphabetShiftState.
  * Rename some attributes from *UppercaseLetter* to *ShiftedLetterHint*.
  * Introduce shiftedLetterActivated to Key.keyLabelFlags

Change-Id: I01a0a8efeeaa76820ae728a5bdfa8d02b6ce74b7
2012-01-31 12:55:45 +09:00
Tadashi G. Takaoka
15c99e9f1a Support addtionalMoreKeys
This change also removes
  * Unused more_keys_for_q, w, and p.

Change-Id: Idb99e5f6d8c2ad2d28437f42b35b21c282cd181f
2012-01-30 17:04:25 +09:00
Tadashi G. Takaoka
425e1996b8 Add inactivatedLabel and inactivatedUppercaseLetter flags for Key.keyLabelFlags
Change-Id: I6c7dc79cbad360602b278283f4c3a24c54040622
2012-01-27 18:11:43 +09:00
Tadashi G. Takaoka
736d740aa5 Merge "Get rid of Resource reference from KeyboardView, LatinKeyboardView and PointerTracker" 2012-01-26 00:17:56 -08:00
Tadashi G. Takaoka
160f01211d Get rid of Resource reference from KeyboardView, LatinKeyboardView and PointerTracker
This change introduces the following attributes.
 * KeyboardView
   - keyPreviewLingerTimeout
 * LatinKeboardView
   - keyHysteresisDistance
   - touchNoiseThresholdTime
   - touchNoiseThresholdDistance
   - slidingKeyInputEnable
   - keyRepeatStartTimeout
   - keyRepeatInterval
   - longPressKeyTimeout
   - longPressShiftKeyTimeout
   - longPressSpaceKeyTimeout
   - ignoreSpecialKeyTimeout
   - showMiniKeyboardAtTouchedPoint

Change-Id: I25159a87289b12447e20031add173523070e9b03
2012-01-26 16:10:20 +09:00
Tadashi G. Takaoka
09f8b126e5 Add Key preserveCase enum to keyLabelOptions attribute
To support auto generate key depending keyboard element id, the
KeysCache class is introduced to hold whole keys and reuse.

Change-Id: Icb81b5f1c1b3aaa31968dcdb93aa0a856e737f78
2012-01-25 20:16:21 +09:00
Tadashi G. Takaoka
83306b914f Add element predicator to <switch><case> condition of Keyboard
Change-Id: I8f9eb8eb28707d23e421e88f979022d844a3b3ee
2012-01-25 19:09:18 +09:00
Tadashi G. Takaoka
117c124c13 Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard
This is the first step to support separate Keyboard for elementName.
This change is the second attempt of Icef66564.

Change-Id: I78ea6cb9ea3d965ff89e0ff5d896a6b11ba5c670
2012-01-25 13:19:53 +09:00
Tadashi Takaoka
8bb20bc682 Revert "Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard"
This reverts commit b5b92f9b78

Bug: 5908440
2012-01-24 15:20:05 -08:00
Tadashi G. Takaoka
b5b92f9b78 Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard
This is the first step to support separate Keyboard for elementName.

Change-Id: Icef66564b6938910fa06ecab664dce4be84c9505
2012-01-24 18:31:11 +09:00
Tadashi G. Takaoka
b009a24b83 Support @icon/icon_name for more keys specification
Change-Id: I8842e5ce77f9d27a0969df947de292c1830e36b7
2012-01-20 20:09:02 +09:00
Tadashi G. Takaoka
42fcb2de64 Get rid of public reference to KeyboardIconsSet.ICON_* constants
As a consequence,
  * Add Key.iconDisabledKey has been introduced and Key.getIcon honors
    the enabled state of the key.
  * The attribute id of disabled icon for shortcut key,
    Keyboard_iconShortcutKeyDisabled, is renamed to
    Keyboard_iconDisbledShortcutKey
  * KeyboardIconsSet has getIconByIconId and getIconByAttrId methods
    instead of getIcon.

Bug: 5778201
Change-Id: Ica93b073b9a04acd18ead7a33b60e3c6d813e7a1
2011-12-19 01:11:09 +09:00
Tadashi G. Takaoka
4112dc0500 Move spacebar drawing code from LatinKeyboard to LatinKeyboardView
Also this change moves LatinKeyboard attributes,
autoCorrectionSpacebarLedEnabled, autoCorrectionSpacebarLedIcon,
spacebarTextRatio, spacebarTextColor, and spacebarTextShadowColor to
LatinKeyboardView.

Change-Id: I7cc27ce1fc550e9f620a9ed0fbe4b8172902d5a1
2011-12-18 19:07:12 +09:00
Tadashi G. Takaoka
7bd714c086 Add extra key icons to KeyboardIconsSet
* Get rid of Key.keyIconShifted attribute.
    Add Keyboard.iconShiftKeyShifted to KeyboardIconsSet.
  * Get rid of LatinKeyboardView.disabledShortcutIcon attribute.
    Add Keyboard.iconShortcurKeyDisabled to KeyboardIconsSet.
  * Add Keyboard.iconSpaceKeyForNumber to KeyboardIconsSet.
  * Fix misplaced autoCorrectionSpacebarLedIcon resources.

Change-Id: I381bff3789254977ab3cb18f58f95b3c433b1e1a
2011-12-18 18:25:29 +09:00
Tadashi G. Takaoka
5afc3ae2d9 Add LatinKeyboardView style
As a result, this change moves shortcut related update code to
LatinKeyboardView from LatinKeyboard.

Change-Id: I1882672577f61e73c90d6c018b7dbb61f3fe21e4
2011-12-18 16:42:23 +09:00
Tadashi G. Takaoka
7cc2595b6f Add LatinKeyboard.spacebarTextRatio attribute
Bug: 5776979
Change-Id: Ia568d1170ed33a000eb3bb02ecdf611e4b5ff2d5
2011-12-18 01:00:06 +09:00
Tadashi G. Takaoka
a44685ab32 Add colorValidTypedWord and alphaValidTypedWord
This change fixes Gingerbread theme.

Change-Id: I142437ac0173df48ab36390f47ed67c6cea24a65
2011-12-16 12:26:19 +09:00
Tadashi G. Takaoka
f86109ca56 Utilize KeyboardSet XML definitions
This change introduces KeyboardSet and SubKeyboard XML definitions to
represent a set of keyboard layouts.

Bug: 5002108
Bug: 5679585
Change-Id: Ib6c8d5936187381bb6725c9fe574e93871c01a86
2011-12-14 16:28:31 +09:00
Tadashi G. Takaoka
2013bab89c Add Key.altCode attribute
* Registering alternate code and while key is typing.
  * Showing press/release graphics of the key that has the above altenate code.
  * Showing press/release graphics of all shift keys.
  * Renaming Key.ignoreWhileTyping to Key.altCodeWhileTyping.

Bug: 5639503
Change-Id: I67fb45bae76284a1f0deb6fd12ae5fb781d06cc3
2011-11-30 20:06:47 +09:00
Tadashi G. Takaoka
c1f7d39b4a Introduce ignoreWhileTyping flags to Key.keyActionFlags
Bug: 5639503
Change-Id: Ic2afad6766edb2538a58f722209e2daa40aa488d
2011-11-22 18:18:29 -08:00
Tadashi G. Takaoka
13d5f6605b Add Key.keyActionFlags and obsolete Key.isRepeatable
This change also renames Key.keyLabelOption to keyLabelFlags.

Change-Id: Iedd0bfaa420ad382c07ce084416355690e390919
2011-11-21 20:33:03 -08:00
Tadashi G. Takaoka
431ce93925 Introduce noKeyPreview Key attribute
This change also removes hacks in LatinKeyboardView by utilizing
noKeyPreview attribute.

Bug: 5638595
Change-Id: Icd8a3af3b7849b941f8f5532e2b432e126a909e6
2011-11-18 14:40:05 -08:00
Tadashi G. Takaoka
ca14c8bf34 Do not show key preview of settings and shortcut key
Bug: 5560766
Change-Id: I580efaf4e33f7dfbaa591e2afae9c49547bf26fb
2011-11-17 15:34:57 -08:00
Tadashi G. Takaoka
a0e4f40994 Special handling of one key mini-keyboard to mitigate visual flicker
Use pre-computed width and height of mini keyboard if
 * Popup key preview is enabled
 * The mini keyboard has only one key
 * Pre-computed width and height are specified

Bug: 5248783
Change-Id: I53475698e87d5bd67d36e63323c25a9e9f18fbb1
2011-10-14 17:49:48 +09:00
Tadashi G. Takaoka
5c26922ab2 Move themeId and touch correction data to Keyboard style
Change-Id: I13b9997e013b704734b6fa94131b1f7fec7a152d
2011-09-30 22:59:53 +09:00
Yusuke Nojima
d6339639c3 Add touch position correction data to resources.
Change-Id: I156205672f3935f70c250a6c538793f35c5d86b2
2011-09-29 14:29:23 +09:00
Tadashi G. Takaoka
63584323ca Add themeId to Keyboard
Change-Id: I6abdeaf41459406cf9021efdf5bb96232ba104c7
2011-09-28 12:08:48 +09:00
Tadashi G. Takaoka
287f4f83e9 Add horizontal edges paddings to phone/number layout
Bug: 4948171
Change-Id: I8a06a25ffcbd141c9418e77e982233166a347914
2011-09-26 17:11:01 +09:00
Tadashi G. Takaoka
77a87e3cb5 Remove "autoCorrectInvert" feature from SuggestionsView
Bug: 5162005
Change-Id: Iec679f5f05f28cd7e8013d7350ea03372f1cd7b2
2011-09-21 15:06:51 +09:00
Tadashi G. Takaoka
0967ef4036 Draw more suggestions hint using text font
Bug: 5287964
Change-Id: I692b5303268c7b5115853177c956e147312c582d
2011-09-16 16:47:58 +09:00
Tadashi G. Takaoka
5b0c124ca8 Remove Key.isStick, use backgroundType="stick" instead
Change-Id: I50e88c0870a3fe360b81f19163ca2f64ec38d8e8
2011-09-15 18:33:01 +09:00
Tadashi G. Takaoka
a6d3a4d61b Make action key background more visually prominent
Bug: 5232726
Change-Id: I76ff2fb431ca295693ceb231a0f13da44f9293e6
2011-09-15 17:40:44 +09:00
Tadashi G. Takaoka
7918ed0169 Refactor Key.isFunctional to more generic Key.keyType
Bug: 5232726
Change-Id: Idc861ca725f62eaf37795f57401573394a17d6d3
2011-09-15 14:38:45 +09:00
Tadashi G. Takaoka
697bf585f8 Update suggestions strip text color
Bug: 5287964
Change-Id: Ic40bb656873f41bb6d65427f02399464e831aab2
2011-09-13 12:54:59 +09:00
Tadashi G. Takaoka
4486d77270 Introduce autoXScale label option
Bug: 5267649
Change-Id: I7fdcb98c209b7ccf73075ef3a4e758782fe161e3
2011-09-12 17:32:28 +09:00
Tadashi G. Takaoka
18453d69e0 Make Spacer as extended Key class
Bug: 5275003
Change-Id: I809a8ca363ba72b22ac5cfd926414990f7e8467c
2011-09-08 17:38:50 +09:00
Ken Wakasa
6b97d2b9c2 Tweak bottom padding for the "..." popup hint
Follow up to I45bd6edf

bug: 5255103

Change-Id: I6d5368dadbaf6c7dffadd783d8a8756fea9dbff7
2011-09-07 21:58:30 +09:00
Tadashi G. Takaoka
ea0c567f86 Tune mini keyboard visual
This change only gets rid of the surrounding paddings of the mini keyboard.

Bug: 5248783
Change-Id: Idb95ac1467085c230fd60e4bc0f466fef5700bfb
2011-09-05 20:36:19 +09:00
Tadashi G. Takaoka
9676038b6e Introduce maxMoreSuggestionsRow and minMoreSuggetionsWidth attributes to SuggestionsView
Bug: 5257594
Change-Id: Id52c841b72e38eb9034a1a7f26bcf3d4d81ad216
2011-09-05 18:59:37 +09:00
Tadashi G. Takaoka
0e2fa66144 Rename suggestionsPaneViewStyle to moreSuggestionsViewStyle
Change-Id: I30873ad870c728e28a044baf9946b4461ab03575
2011-09-05 16:48:56 +09:00
Tadashi G. Takaoka
913e2aeef2 Rename CandidateView to SuggestionsView
Change-Id: I6480cdf025f065130e1969899b259a243e7a11be
2011-09-01 15:41:34 +09:00
Tadashi G. Takaoka
29e7b7ed6e Implement popup suggestions pane
Bug: 5023981
Change-Id: Ie1d69131dbf884a3f6a2beb3ac3427e5437c1486
2011-08-31 21:21:22 +09:00
Tadashi G. Takaoka
9d5601e901 Rename PopupCharactersParser to MoreKeySpecParser
Also renames PopupPanel to MoreKeysPanel

Change-Id: I37209a5a8fe7dbba1eef03e3be88ba5253653926
2011-08-31 18:34:35 +09:00
Tadashi G. Takaoka
9237a72634 Rename PopupMiniKeyboardView to MiniKeyboardView
Change-Id: Ic83cd1200cfb8f8c0b0cfbcad449031b8e8a29e0
2011-08-31 15:30:54 +09:00
Tadashi G. Takaoka
2d80400a23 Fix keyLetterSize and keyLabelSize format
This is a followup of Iea7f8f34.

Bug: 5023981
Change-Id: I375a1647343e1d5fa80b328a6824f6c549135e80
2011-08-30 14:20:15 +09:00
Tadashi G. Takaoka
83da6c18fb Add keyLetterSize and keyLabelSize as KeyboardView attribute
Bug: 5023981
Change-Id: Iea7f8f340775cbb093c50d6e741b2f1476e9ac39
2011-08-29 23:45:05 +09:00
Tadashi G. Takaoka
d47a955610 Fix suggestions strip text colors
This change also shows the valid typed word in bold face.

Bug: 5161713
Change-Id: I15355a11888fc8ef90ecc8b64a52eb08c1a2b367
2011-08-22 18:56:54 +09:00
Tadashi G. Takaoka
bea6b72106 Get rid of auto correction flash animation in the suggestion strip
This change also reverts I1350ad3d.

Bug: 5156762
Change-Id: I047e75699e8eea02204ad95e12dcc0aefe49ac34
2011-08-16 17:47:23 -07:00
Ken Wakasa
59f5cc8572 Get rid of auto correction flash animation in the suggestion strip
bug: 5156762
Change-Id: I1350ad3d7125f8ecdfc699233ed05e253cc3f010
2011-08-12 23:14:34 +09:00
Tadashi G. Takaoka
60a004f78e Fixed count suggestions strip
Bug: 5023981
Change-Id: I434d23bdfb653989866d3822c978cd929a2b553c
2011-08-05 19:25:36 -07:00
Tadashi G. Takaoka
62d4a96497 Support label with icon key
Bug: 5108339
Change-Id: I7cd4258a95a7e25b8b1114b43ffcca5b77c5c1e3
2011-08-03 01:53:30 -07:00
Tadashi G. Takaoka
c3afe2c244 Replace the notion of "voice" with "shortcut" as many as possible
Bug: 4340933
Change-Id: I98b4eca5167cc3767a0868fae8f6436164adbe4d
2011-07-31 18:46:44 -07:00
Tadashi G. Takaoka
7139335dcd Swap parenthesis-like character code on RTL keyboard
Bug: 5047217
Change-Id: I1b88484825f5c035401cf083522bf95bbee30edb
2011-07-24 18:40:46 -07:00
Tadashi G. Takaoka
5cce2161fb Revert "Add Right-To-Left delete icon"
This reverts commit 886246b19a.

Bug: 5047500
Change-Id: Iefef20b7aeba0dbedfe8f81384a33f65e3907e9f
2011-07-21 00:05:22 -07:00
Tadashi G. Takaoka
426723a9cf Remove Key edge flags from XML
The first key and the last of the row are automatically marked as left
and right edge key respectively.  The existence of Spacer will prevent
those automatic marking.

Bug: 5038844
Change-Id: Ie34169ceaf76e24923b8d8125eda6ecb95cf1fee
2011-07-20 16:56:21 -07:00
Tadashi G. Takaoka
ef5dfc480c Remove sliding spacebar language switcher
Bug: 4971680
Change-Id: Ia3485ddcf8051bf7b7ba7f7a37fa75c3bc8a4798
2011-07-19 23:24:49 -07:00
Tadashi G. Takaoka
886246b19a Add Right-To-Left delete icon
Bug: 4161983
Bug: 4170083
Change-Id: Ife9a933353e97f3c7c3ede47623dc7528160f3c5
2011-07-12 20:59:20 -07:00
Tadashi G. Takaoka
a19b84dcf6 Move key hysteresis distance parameter to KeyDetector class
Bug: 4768084
Change-Id: Ib8771afd7363a4a5590b2b4a586e3014c026be34
2011-07-04 22:32:21 +09:00
Tadashi G. Takaoka
3118277dd4 Tweak ICS theme a bit
Change-Id: Ib8f1a712a1fc3fd6f08b336617b4b6a17af11376
2011-07-01 21:11:34 +09:00
Tadashi G. Takaoka
74b6897a12 Adaptive suggestions strip
Bug: 4903845
Change-Id: I9e2e17a9eee72df5c92414dcd4796ed7fe1655e1
2011-07-01 00:46:34 +09:00
Tadashi G. Takaoka
d773bf38a3 Cleanup key drawing code
This change also modifies 9-patch drawables to fix the following
issues.  In order to draw key background drawable just on the
coordinates we want, we have to know where an actual "visible" part is
in the drawable.  The only clue we can use is "padding" of the
drawable.  To achieve this, the 9-patch drawable must have its
"visible" part marked as "content".  Please refer the Bug: 4948171 for
more detailed explanation.

This change also reverts the following "black" drawables back from
Gingerbread because recent change broke these (I70019a91).
  * drawable-hdpi/sym_bkeyboard_*.png
  * drawable-hdpi/btn_keyboard_key_*_stone.9.png

Bug: 4948171
Change-Id: I6e4d03b3144caa95c793aac97af22df34c5f454f
2011-06-29 18:34:57 +09:00
Tadashi G. Takaoka
49c8567db2 Merge "Use left/right-edge popup preview background" 2011-06-28 00:32:19 -07:00
Tadashi G. Takaoka
d87f28f145 Use left/right-edge popup preview background
Bug: 4902361
Change-Id: Iafbadd0e44c0db2fb6a0875c964304bec6ac8cb0
2011-06-28 16:00:23 +09:00
Tadashi G. Takaoka
87089985b1 Render sliding spacebar language switch arrows by text
Change-Id: Ief1a4f12a3d4840c36aa7a082f44b5b1ff894dd1
2011-06-28 15:58:45 +09:00
Tadashi G. Takaoka
3040c8bcdd Draw popup hint "..." by text rendering
Bug: 4959808
Change-Id: I30456b91852904c6801cbdd6476406fd60e84551
2011-06-28 01:50:26 +09:00
Tadashi G. Takaoka
8aee759262 Remove reference to system theme
This change also introduces
 * Background for space key preview
 * Tune stone theme

Change-Id: I84fca0baf2392582da870d2ff77b3e99c28faf7b
2011-06-27 22:36:04 +09:00
Tadashi G. Takaoka
520a297ad1 Draw phone/number keyboard layout witout icon
This change introduces:

* New KeyboardView attribute
  * keyLargeLetterRatio to specify large letter text size.
  * keyHintLabelRatio to specify hint label text size.
  * keyHintLabelColor to specify hint label text color.
  * keyPreviewTextRatio to specify key preview text size.
* New Key.keyLabelOption flags
  * alignLeftOfCenter, align the key label slightly left of the key center.
  * largeLetter, use keyLargeLetterRatio to draw key letter.
  * hasHintLabel, draw keyHintLabel at the right of key letter.
  * followKeyHintLabelRatio, draw the key label following keyHintLabelRatio size.
* Renames
  * Key.keyHintLetter to keyHintLabel.
  * Key.keylLabelOption fontFixedWidth to fontMonoSpace.
  * Key.keylLabelOption popupHint to hasPopupHint.
* Removes
  * number icon releted attributes and declarations.

Change-Id: I2f456737e3a46209e5f48b5155951b2b21a33859
2011-06-27 20:04:34 +09:00
Tadashi G. Takaoka
cd96a691b1 Fix "Show settings key" option on 7" device
Cherry-pic I993ac772 from Honeycomb-MR2.

Bug: 4586882
Change-Id: Ie74138523a3ae7958c7bec674c49aa0ab1a72d05
2011-06-24 00:08:42 +09:00
Tadashi G. Takaoka
9116bf18f9 New IceCreamSandwich assets and theme
This change instroduces new IceCreamSandwich assets and renames
Honeycomb theme to IceCreamSandwich.  Though checked only on
hdpi-phone and mdpi-10"-tablet.

File another bug (Bug: 4852048) to fine tune keyboard layout for all
possible combination of devices and themes.

Bug: 4436327
Change-Id: I4f8dc1dd6b798a39204702bbcbebf17a199dc82f
2011-06-23 21:06:17 +09:00
Tadashi G. Takaoka
a93d27d6b8 Remove colorScheme attribute from KeyboardView
Change-Id: I9de118e8be60b9a6fe1aecc00332ba08872db918
2011-06-22 22:45:03 +09:00
Tadashi G. Takaoka
c2a21786e5 Move icon declaration to Keyboard theme
Bug: 4436327
Change-Id: I074014d28dcb323b60dbc8fd9e169c75c393e0b3
2011-06-22 17:44:49 +09:00
Tadashi G. Takaoka
28a38fdfee Tab key is shown when editor navigation flag is set
Previously tab key is shown only when the input type variant says that
it is web input.  In addition to that, this change also shows tab key
when the IME option includes editor action (next and/or previous)
flag.

Bug: 3094312
Change-Id: I3f8841fdbcee918a0f93f3259090f24e70d96471
2011-06-17 19:08:49 +09:00
Tadashi G. Takaoka
9d9522abdc Add Key.keyHintLabel and remove Key.keyHintIcon
This change also removes manualTemporaryUpperCaseCode and
manualTemporaryUpperCaseHintIcon.  Instead of these keyLabelOption now
has hasUppercaseLetter flag value.

Bug: 4436327
Change-Id: I88fdac1e888a7123735296f5ef45f5fdd565cd2e
2011-06-16 21:24:19 +09:00
Tadashi G. Takaoka
a61967330e Make LatinKeyboard aware of theme
Bug: 4436327
Change-Id: Idecdd470cbb0720b96958039eb11f6978d39629e
2011-06-16 20:10:49 +09:00
Tadashi G. Takaoka
08a6f2aea7 Make CandidateView aware of theme
This change is needed to introduce new theme easily.

Bug: 4436327
Change-Id: Idc368b66d892d9c888ba7a26bfa3527c21678292
2011-06-15 20:02:45 +09:00
Tadashi G. Takaoka
b7758d6f91 Make Keyboard aware of theme
This change is needed to introduce new theme easily. As a starter this
change introduces Keyboard.popupHintIcon attribute and
Key.keyLabelOption.popupHint flag to show popup hint icon that is
previously specified by Key.keyHintIcon attribute.

Bug: 4436327
Change-Id: I6b1c5c1b88eece541141b2d2cedd164ee02e5c2a
2011-06-15 19:51:30 +09:00
Tadashi G. Takaoka
5859205139 Implement logical or to Keyboard switch-case matching
Change-Id: Iab615459c21fa5799a7b30b8649d75347e46c804
2011-06-03 21:03:26 +09:00
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
Tadashi G. Takaoka
9e2d810dc5 Remove web mode and add webInput boolean
Bug: 4490948
Change-Id: I6fe23c9ab4918eab6806cc621c4d6821c2e1baf9
Cherry-Pick: I4cd1af0b
2011-05-27 21:47:14 +09:00
Tadashi G. Takaoka
13a7419994 Use custom theme for Keyboard theme switch
This change reduces the number of layout files and make these
theme-generic.  This might be very helpful to re-design suggestion
strip.

Bug: 4175031
Change-Id: Idca10a4aa0bf7ac496eedd1879311e59780a423b
2011-05-25 18:59:00 +09:00
Tadashi G. Takaoka
d157834345 Auto text sizing using fraction of key height
Bug: 4411676
Change-Id: I8f289dcebe577d277fe2ad6a8331d59f735cbada
2011-05-13 18:44:57 +09:00
Tadashi G. Takaoka
ff483e8d0c Add minKeyboardHeight attribute to Keyboard layout
Bug: 4411676
Change-Id: I1f56ba58bacb90790f82326718bf9de95dba5d28
2011-05-12 18:19:12 +09:00
satok
15a0ba6d74 Check the availability of layouts for showing the input languages in the settings
Bug: 4316889

Change-Id: I746b3ff79c2a6cd4925fca1817d5b209623b5108
2011-04-21 17:17:32 +09:00
Tadashi G. Takaoka
56abeabced Add visualInsetsLeft and Right as Key attribute
Bug: 4269094
Change-Id: Ic38d326a8e9ef802453c909f3a81d556863acc9b
2011-04-11 12:13:38 +09:00
Tadashi G. Takaoka
e7c0e73a19 Simplify the Key's on state transition
Because handling shift locked state of alphabet keyboard is done by
KeyboardSwitcher, there is no need to change the "on" state of Key
when releasing the key. On the other hand, symbol and symbol shifted
keyboard has fixed "on" state "ALT/MORE" key.

This change also renames the attribute "isModifier" to "isFunctional".

Change-Id: I082885bd2376ae26bdfc378c14add2b5d6be1d4e
2011-04-07 20:28:46 +09:00
Tadashi G. Takaoka
912ade36d2 Add countryCode attribute to case tag of Keyboard
Change-Id: I0480c3350a335e4cb57bba2d3484622990cd90af
2011-02-23 17:09:24 +09:00
Tadashi G. Takaoka
4b13b4f942 Add "passwordInput" attribute to case tag of Keyboard
This change also introduces number password (a.k.a. PIN) layout. The
text password layout will follow.

Bug: 3384942
Change-Id: I50b5e413e47a28d5285fd0468115e11ce46c7f18
2011-02-20 18:46:48 +09:00
Tadashi G. Takaoka
ea6c2e3350 Add "languageCode" attribute to "case" tag in Keyboard XML
bug: 3451586
Change-Id: I08ca80e48648ba18543e9b8ca7362c06bb61a826
2011-02-18 17:04:04 +09:00
Tadashi G. Takaoka
d9c52ba623 Rename imeOptions attribute of Keyboard to imeAction.
Bug: 3384942
Change-Id: I3ce01b83f0ae37f447de8a7fcdb5d7fe06b108c6
2011-02-18 16:56:05 +09:00
Tadashi G. Takaoka
aa721c4783 Add "enabled" as an attribute of Key in Keyboard xml
If the key is marked as "enabled=false", the key will not respond to be pressed.

Bug: 3384942
Change-Id: I1ea82d9f3dfa5a9916ff3bbc736ea7e6c77426ae
2011-02-18 14:45:37 +09:00
Tadashi G. Takaoka
c4f71668d7 Remove multi-tap feature
Change-Id: Ife44b3f9d420d77d2cfb51044a8356f02ed63e8b
2010-12-20 21:58:31 +09:00
Tadashi G. Takaoka
9b6d1d52d9 Add popupKeyboardTemplate attribute to Keyboard
This change
- introduces the popupKeyboardTemplate attribute of Keyboard to
  specify XML Keyboard file for popup mini keyboard.
- introduces the maxPopupKeyboardColumn attribute of Keyboard to
  specify the maximum column of popup mini keyboard.
- changes the content format of the popupCharacters attribute of Key.
  It now represents keyLabel, codes and keyTextOutput of each key of
  popup mini keyboard using CSV format.

Bug: 2214959
Change-Id: I539e310f7e38a049ee193de0b4ad5d7afdce37b1
2010-12-17 17:18:28 +09:00
Tadashi G. Takaoka
9f01ed51d7 Support keyboardHeight and maxKeyboardHeight to Keyboard XML
This change introduces,
- new attribute keyboardHeight to specify default keyboard height.
- new attribute maxKeyboardHeight to specify maximum keyboard height,
  usually specified by percentage to the screen height.
- keyHeight attribute is obsoleted
- new attribute rowHeight to specify a row height, can be specifed as
  percentage of the keyboard height. And verticalGap is included to
  the row height (row height = key height + vertical gap).

Change-Id: I48a2f2661e8a91a998503a847437c1baf1de9b9c
2010-12-08 17:43:29 +09:00
Tadashi G. Takaoka
5a309f5715 Move some inner static class to top class in new package
This change introduces new package com.android.inputmethod.keyboard
which hosts keyboard related classes.

Also adds missing @Override and @SuppressWarning("unused") annotation

Change-Id: I0317f5cfa317e13f3c77815f48ffc69b5d1ade05
2010-12-02 20:06:01 +09:00
Tadashi G. Takaoka
5d04042663 Tweak tablet keyboard design
This change introduces,
- center align "More" key label
- remove drop shadow from key label
- darker key label color when manual temporary upper case
- narrower pop up mini keyboard
- remove unnecessary key background from pop up mini keyboard
- smaller key label in portrait

Bug: 3216592
Change-Id: I77e0733f467a88aa32e09fcbace56fe08f755229
2010-12-01 18:51:38 +09:00
Tadashi G. Takaoka
7f0befe1f0 Update tablet keyboard layout to the latest design
This change introduces shiftedIcon attribute for Key which specifies
icon to draw the shift key while the key is in shifted state.

This change also intriduces new configurable dimension value
key_label_horizontal_alignment_padding which represents horizontal
padding for left or right alignment of key label.

Bug: 3216592
Bug: 3201839
Change-Id: I3aa7392227ce573c404517678e6340a8d1fcb328
2010-11-25 00:11:21 -08:00
Tadashi G. Takaoka
6624fd8736 Support imeOptions condition in <case>
Change-Id: Ie5494601efb29cf65363c4aa3bf5a9ab04a0109a
2010-11-23 23:13:39 -08:00
Tadashi G. Takaoka
59c9930ca9 Support colorScheme <case/> condition in Keyboard XML
Change-Id: Ibbfb99e0e2b15df301f83af6739b7bca01ebf490
2010-11-23 18:07:27 -08:00
Tadashi G. Takaoka
fab243a183 Use normal font for functional key label instead of italic font
This change also uses slightly larger font size for functional key
label according to the v4 keyboard design.

Bug: 3216592
Change-Id: I027f109b7748ade8564dc808487d9a6ce1da9761
2010-11-23 00:38:09 -08:00
Tadashi G. Takaoka
0b60f83192 Support <key-style/> and keyStyle attribute for Keyboard XML
Change-Id: Ie052e989d0180eecfc8c244ba6c60594a46103d1
2010-11-22 18:33:47 -08:00
Tadashi G. Takaoka
04448c2978 Make F1 and Symbol keys static in XML file
Change-Id: If869f5ad4fe8f192f89a8679a4abde99a25e02e6
2010-11-21 03:00:53 -08:00
Tadashi G. Takaoka
cd39f2adee Add keyLabelAlign attribute to Keyboard XML
Bug: 3216592
Change-Id: I88f8055199f2cd0525faf9374114fbebba53b951
2010-11-20 18:48:55 -08:00
Tadashi G. Takaoka
1d8196cd41 Use "flag" feature of attr.xml to represent keyboard mode
Change-Id: Ibc317ada5167a119477fe8ea2994df6c6462afd0
2010-11-19 14:57:24 -08:00
Tadashi G. Takaoka
10227a71a0 Implement temporary upper case hint icon
This change partially implements the requested feature. The following
are not supported yet.
- Non-letter key handling on automatic temporary upper case layout.
- Non-letter key handling on shift chording in caps lock layout.
- Hint icons for manual temporary upper case layout are not final ones.

Bug: 3193390

Change-Id: I636da99d1be05b1337935d87c6f4d140661e1cc8
2010-11-16 13:45:49 -08:00
Tadashi G. Takaoka
b0465116bd Keyboard XML supports switch-case-default tags to select rows and keys
Change-Id: I0d92e513757e765d9de98561205754af5a143650
2010-11-12 14:30:25 -08:00
Tadashi Takaoka
68864723cf Rename LatinKeyboardBaseView class to KeyboardBaseView
Change-Id: I496ecbfa7d398583d01f821398f49f75d17311d8
2010-11-05 18:36:19 +09:00
Tadashi G. Takaoka
d663555c9f Keyboard XML file supports include and merge tag
Keyboard XML file can include other keyboard XML file using directive
<include keyboardLayout="@xml/...">.  The keyboard XML file which is
included must have <merge> tag as root element.

Change-Id: I06c35fe7b3db5232acdb33f73a79f38d31261b32
2010-10-07 23:51:38 +09:00
Tadashi G. Takaoka
66e306d01c Add keyHintIcon attribute to BaseKeyboard.Key class
This keyHintIcon attribute is used to specify hint icon drawable at
top right corner of Key.

Change-Id: Icaa91e63c4473b2513396bd3fbeb8ed6fd73586c
2010-10-05 20:28:04 +09:00
satok
4fc510a789 Unbundle Keyboard.java to BaseKeyboard.java
Change-Id: I8b310c2c0cae1a151e53c22001c586697346982c
2010-10-02 00:02:00 +09:00
Tadashi G. Takaoka
eb68036798 Add keyHysteresisDistance xml attribute
This change also introduces MiniKeyboardKeyDetector and
mini_keyboad_slide_allowance parameter to tune the key detection
behavior.

Bug: 2993769
Change-Id: I1932b0a382e172cb77b9e098ae182049c834dfe0
2010-09-14 16:26:45 +09:00
Ken Wakasa
aed0122734 Fix a bug in y-axis offset for sliding finger key detection for mini popup keyboard.
Also, tentatively added key detection allowance for below of the keys in mini popup keyboard.

bug: 2979407
Change-Id: I84794969facd929c84df23e0120d46dff71c6efb
2010-09-12 19:17:08 +09:00
satok
979f869096 DO NOT MERGE. Backport LatinIME from master to Gingerbread
TODO: Cleanup will follow.

Change-Id: I4a68ba9f2f55760aa24187f1f13fdfa8a0b70963
2010-08-20 14:37:03 +09:00