Commit graph

134 commits

Author SHA1 Message Date
Tadashi G. Takaoka
a28a05e971 Cleanup: Make some classes as final
Change-Id: I6009b3c1950ba32b7f1e205a3db2307fe0cd688e
2012-09-27 19:03:30 +09:00
Ken Wakasa
e30c4e0bb1 Stabilize gesture recognition algorithm that looks for the nearest key.
It relies on the order of the key array.

Change-Id: I58fa71a7b330e59cd774fc208e5b6bc1a3decd2e
2012-09-11 20:00:21 +09:00
Tadashi G. Takaoka
dc34da218a Support per-Key and per-Keyboard key visual attributes
This change refactors KeyDrawParams and KeyPreviewDrawParams to
separate KeyVisualAttributes.

Change-Id: I4de549eef303e1debe4b8f84668e042445fc18da
2012-08-31 20:23:21 +09:00
Tadashi G. Takaoka
35ff94547c Separate inner classes of keyboard package out under internal package
Change-Id: Ia3969bd5ddec5aa5d81d05ad4cf676d818587922
2012-08-30 15:37:55 +09:00
Tadashi G. Takaoka
29d5973fd3 Optimize rare Key attributes to separate class
This change also removes per-Key verticalGap and horizontalGap.

Change-Id: Id4d2129022fbbfbf5d740b8d1257032c945bb775
2012-08-30 11:48:19 +09:00
Tadashi G. Takaoka
92821614fd Revert "Revert "Move resource related methods to ResourceUtils""
This reverts commit bfc02a7005.

Change-Id: Ife4c0312ea3260211b1b5ee39b239e8e9d7db67e
Depends: I3d862515568be36d5aa80d12e7e5c0a9bf4d06a6
2012-08-29 22:30:55 +09:00
Ken Wakasa
bfc02a7005 Revert "Move resource related methods to ResourceUtils"
This reverts commit 160dc0f98e

Change-Id: Ic5a3d9c70b8f6f2993d8455799945ec2633cad66
2012-08-29 04:33:39 -07:00
Tadashi G. Takaoka
160dc0f98e Move resource related methods to ResourceUtils
Change-Id: I14535b030e58363315dd2daecaaef4edd6990cd9
2012-08-29 17:51:07 +09:00
Tadashi G. Takaoka
75fb3ce1be More readable Key.toString() and MoreKeySpec.toString()
Change-Id: Iee3c33dedd0c00ba259aa55e8b0c1c57b84eccdd
2012-07-30 15:51:41 +09:00
Tadashi G. Takaoka
907ba59397 Can specify Key.backgroundType in <Row> and <include> attribute
Bug: 6568834
Change-Id: I138464b5445e13eaf062ce84a1ba332dfd1afafa
2012-06-06 10:15:51 -07:00
Tadashi G. Takaoka
8f590c77e8 Use Math.round instead of (int) to convert Key coordinates from float to int
Bug: 6566563
Change-Id: I97d1e9727077cb4d9abbf1ad5bd5d3f061c7bce7
2012-05-28 16:16:35 +09:00
Tadashi G. Takaoka
7ab7f66c2d Fix adjusting key's label/code case
With this fix, we may probably be able to revert I76c3e917 (Make
KeySpecParser case insensitive).

Bug: 6561272
Change-Id: Ic7571560d7b422ffc9a07f0acecd388e0b330d50
2012-05-28 12:34:49 +09:00
Tadashi G. Takaoka
0a57156c07 Don't use KeyDrawParams as argument of Key#selectTextSize
This is a follow up of Ide48c361.

Bug: 6509415
Change-Id: I59f6e47d06ebfbac6d354d36fca6788f092ed41d
2012-05-18 17:09:02 +09:00
Tadashi Takaoka
aee147e216 Revert "Make KeyDrawParams and KeyPreviewDrawParams to top level class"
This reverts commit 4c9e6a15d1
2012-05-18 01:02:53 -07:00
Tadashi G. Takaoka
4c9e6a15d1 Make KeyDrawParams and KeyPreviewDrawParams to top level class
This is a follow up of Ide48c361.

Bug: 6509415
Change-Id: Ib45c476924bc4b6b2ca65e0cae91d719109a9cb1
2012-05-18 16:58:34 +09:00
Tadashi G. Takaoka
a08759f6b1 Support large label text ratio in KeyboardView
Bug: 6509415
Change-Id: Ide48c36126c23d91612c322a1027257c9b967e6b
2012-05-17 20:38:48 +09:00
Tadashi G. Takaoka
1f2d0aa6c9 Set divider icon's alpha value on the fly
Bug: 6183494
Change-Id: I61a0c7617648d9c52e5001b3479afa0ab4913adc
2012-05-16 17:41:56 +09:00
Tadashi G. Takaoka
2f83e9e532 Can override key-style
Bug: 6412932
Change-Id: I9576ae5b42bcc54cfd8ede0bae5148f3b04c1978
2012-05-01 16:56:53 +09:00
Tadashi G. Takaoka
cf41aff251 Use string attribute for icon name
Change-Id: I336acf33c7e6bc993b9da9b17ec689975fa8127d
2012-04-20 15:31:42 +09:00
Tadashi G. Takaoka
a58ebc73ae Fix typo of some methods' name
Also changes some methods' argument type from Locale to String.

Change-Id: Ib68b528a450dc68a01546483403230f76500bee4
2012-04-18 16:40:50 +09:00
Tadashi G. Takaoka
ab0d0d8a02 Add followKeyLabelRatio flag for keyLabelFlags of Key attribute
This change renames largeLetter flag to followKeyLargeLetterRatio as
well.

Change-Id: Ida777aac57e4d885fa051654fe863f493f8e946a
2012-04-11 15:53:38 +09:00
Tadashi G. Takaoka
2be51f4fd0 Generate KeyboardLabelsSet from donottranslate-more-keys.xml
This change introduces makelabel tool that reads all languages'
donottranslate-more-keys and generate KeyboardLabelsSet.java source
file. The makelabel command must be invoked prior to compile LatinIME.

Change-Id: I7515c7919c535e30f9c80a37bdc831d0f682cd43
2012-04-11 11:23:47 +09:00
Tadashi G. Takaoka
ed3bac91f2 Introduce KeyboardCodesSet.java and remove keycodes.xml
Change-Id: Icfd6d06f47425aa037682d22c895548ba6f047d8
2012-04-10 11:53:58 +09:00
Ken Wakasa
9f0ea52a5d Add missing Word.hashCode()
Some cleanups too.

bug: 6209651
Change-Id: I94e2e29c92e90e554e4952d277d590e093766c4f
2012-03-23 13:11:39 +09:00
Tadashi G. Takaoka
b03529aa01 Support disableAdditionalMoreKeys and disableKeyLabelHint
Change-Id: Idfa586417acd4a223380d52f044e3a86eb780b21
2012-03-12 17:45:57 +09:00
Tadashi G. Takaoka
cc8c8b99bd Split Utils class to StringUtils, SubtypeUtils, and JniUtils
Change-Id: I09e91675fe7d573dad8c933ad513b21d7e409144
2012-03-08 20:30:38 +09:00
Tadashi G. Takaoka
8e14e78377 Fix duplicate flag value in Key
Change-Id: I98e77e5432a228e4455998bf09a2cc671b113c4e
2012-03-07 18:41:38 +09:00
Tadashi G. Takaoka
8c80fb9bcb Fix Key to use a disabled icon when the key is disabled
Bug: 6114350
Change-Id: I419bc1736c27046dfea254ac510f5da478b6412c
2012-03-05 18:01:33 +09:00
Tadashi G. Takaoka
e491be6e86 Support embedded more key
This is a followup change to Ie10b3e0b.

Change-Id: I1f91d96e32357b83bd0546537d561d638b6ff0c6
2012-03-05 14:22:52 +09:00
Tadashi G. Takaoka
5ef4fccbb9 Support dividers in MoreKeysKeyboard
Bug: 6080806
Change-Id: Iacd78c6aab6abf948717d34da7489a79c41316d2
2012-03-02 20:52:25 +09:00
Tadashi G. Takaoka
e4c45c6ef9 Explicitly specify that labels might be in more keys
Bug: 6080806
Bug: 6081427
Change-Id: I455a0210e65ea2a7774e0e0071cea5f4a99577bd
2012-03-01 20:03:47 +09:00
Tadashi G. Takaoka
42fd1d2d72 Refactor more keys spec handling
Change-Id: Ibd95eff0725724ea35ad58e1d1ec7ec3d02a6e90
2012-03-01 16:07:02 +09:00
Tadashi G. Takaoka
aeeed75848 Support fixed order more keys
Change-Id: I979f54e8b54243da4d23cfbe08198d2aa495f870
2012-02-17 00:49:18 -08:00
Tadashi G. Takaoka
fdb6999e55 Key should be distinguished also by moreKeys contents and etc.
Change-Id: Ib2caabee6af78153b5a7be0e4df522288f2a7d48
2012-02-10 03:17:39 +09:00
Tadashi G. Takaoka
7a39bd4454 Shift+Smiley key will register newline character of textMultiLine
This change also
 * Honors the custom action label in EditorInfo.actionLabel.
 * Invokes InputConnection.performeEditorAction if action is specifed
   at EditorInfo.imeOptions or actionLabel/actionId.
 * Stops using InputMethodService.sendKeyChar. Implements
   sendKeyCodePoint instead.

Bug: 2498607
Bug: 5961809
Bug: 5368408
Change-Id: If4cd5eb3dacfc6b6a7ea434b0617c2438e06e42d
2012-02-08 19:31:35 +09:00
Tadashi G. Takaoka
2affaf91a0 Rename mini keyboard to more keys keyboard
Change-Id: Ie4c85e8ca5a1f41a420aae5c1cd9c1cb07e237e5
2012-02-08 16:12:31 +09:00
Tadashi G. Takaoka
c217dc9237 Convert one letter Key.outputText to Key.code
This change also uses Key.code instead of Key.outputText for the
variety of parentheses keys taht introduced by I85998f17.

Bug: 5975484
Change-Id: I86879c9942d264edc71e5893325a2f582763d12f
2012-02-07 22:34:20 +09:00
Tadashi G. Takaoka
17f53103ee Fix KeyStyles to be able to override the value in style
Change-Id: Ib7476cdc0f81dfeb6292ef663e9dbab6d2b949ba
2012-02-07 18:51:51 +09:00
Tadashi G. Takaoka
e7948a8692 Get rid of Key.setIcon(Drawable)
Change-Id: If6ebbdefcbfd0cc14c72858f9bb44861e8abe079
2012-02-03 14:38:17 +09:00
Tadashi G. Takaoka
44e0e4f99e Fix Key.equals(Key)
Bug: 5956068
Change-Id: I2901ae28bd9121ec4f4429a53b83aae128b75e0c
2012-02-02 21:33:50 +09:00
Tadashi G. Takaoka
e01d272603 Make KeySpecParser and CSV parser code point aware
This change also renames MoreKeySpecParser to KeySpecParser

Change-Id: I35733cdbb344f16b57ffa2cfe79055c089b4e409
2012-02-02 15:51:40 +09:00
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
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
bcf2b79365 Prepare to get rid of Drawable reference from Key
Change-Id: If435f95b2863e0af8d8916c643e6b01feabd3ea5
2012-01-25 19:41:15 +09:00
Tadashi G. Takaoka
38d6a18821 Use String instaed of CharSequence in Key class
Change-Id: Ia76a41daede402ed2a509e110ae97d6bb660c760
2012-01-25 17:04:00 +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