Commit Graph

77 Commits

Author SHA1 Message Date
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
670e1c6b71 Add visual debug mode
Change-Id: Ife131a398c0753b5b0e6e8969fe7bbc2a3bdab96
2011-06-28 19:13:52 +09: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
d44160d253 Merge "Draw popup hint "..." by text rendering" 2011-06-27 09:53:25 -07: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
660d42fb36 Remove mInForeground flag from KeyboardView
Instead of that, added cancelAllMessages() and call it from
onFinishInputView().

Change-Id: I58f6f0931ed8d73441d80d9616ba3afbbbe38e05
2011-06-28 01:00:59 +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
Ken Wakasa
4f0d290c5d Avoid memory leak by by non-static Handler inner classes
bug: 4901934
Change-Id: I870ab2e621ef3640a84468f09c074cdd726dc963
2011-06-26 00:14:40 +09:00
Tadashi G. Takaoka
14daf66fc5 Remove spacebar preview and arrows
Change-Id: I07f1b7bbf222d90e95919304e82d7d054df2868d
2011-06-24 21:41:27 +09:00
Tadashi G. Takaoka
2442e77985 Display suggested word info in debug mode
Bug: 4686782
Change-Id: I0e5bef33aa39c3d6f75edda7818524965aa40b79
2011-06-24 14:19:59 +09:00
Tadashi G. Takaoka
35bda743ed Merge "Move Key class out of internal package" 2011-06-23 07:22:58 -07:00
Tadashi G. Takaoka
e7759091dd Move Key class out of internal package
Bug: 4903326
Change-Id: I2493d6dae613d2e37dfa8ce96b4cddc9a038160c
2011-06-23 22:59:12 +09:00
Tadashi G. Takaoka
75d7fb6675 Remove unused argument from PopupPanel.showPanel
Change-Id: I726b98001042c8b874113ed964b7230fdd525abe
2011-06-23 21:14:55 +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
Alan Viverette
5ac4638f99 Added support for touch exploration to Latin IME.
Bug: 4379983
Change-Id: I97f22e54827c6229054b514801401ffa5b4ed3b8
2011-06-22 10:54:06 -07:00
Tadashi G. Takaoka
3edc97b275 Merge "Remove colorScheme attribute from KeyboardView" 2011-06-22 08:51:36 -07:00
Tadashi G. Takaoka
a93d27d6b8 Remove colorScheme attribute from KeyboardView
Change-Id: I9de118e8be60b9a6fe1aecc00332ba08872db918
2011-06-22 22:45:03 +09:00
Tadashi G. Takaoka
a7eed902f1 Make CandidateView backward compatible
Up to version 10 (Gingerbread) of the API, FrameLayout doesn't handle
margin properly.  This change inserts RelativeLayout to FrameLayout as
placer to set margin and place children views absolutely.

Change-Id: Iee785bc2da77677738caf456bcd2bbf57b89f007
2011-06-22 20:16:21 +09:00
Tadashi G. Takaoka
72934bd596 Move keyboard related internal class to separate package
Change-Id: Ic1459066b865cde5104b3734193f76c997959c68
2011-06-22 11:54:00 +09:00
Tadashi G. Takaoka
5a2d063047 Remove unnecessary onRefreshKeyboard call.
When using the sliding spacebar language switch on ICS, both
LatinIME.toggleLanguage() and
InputMethodService.onCurrentInputMethodSubtypeChanged() invoke
LatinIME.onRefreshKeyboard().  This change eliminates the first one if
it isn't necessary.

This change also cleans up the followings.
  * reuse theme Context when the keyboard theme hasn't been changed.
  * clear the Keyboard cache when theme has been switched.
  * eliminates unnecessary Context reference from LatinKeyboard and
    SlidingLocaleDrawable.
  * recycle Bitmap and reuse Canvas in KeyboardView.

Bug: 4725930
Change-Id: I87366e9304879d94d12b7345adea768d86d43519
2011-06-20 19:21:31 +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
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
0aa0133795 Fix missing initializartion of key preview position
This is followup of Iddab254c

Change-Id: I2d8e68b696779b742d29fdcf03c5fb509cb0bd87
2011-05-25 16:14:19 +09:00
Tadashi G. Takaoka
e07b51e7c6 Enable long press even if the key is disabled
Change-Id: Iddab254c7d6625bf44473109b4a52d2f7a163a27
2011-05-25 15:22:03 +09:00
Tadashi G. Takaoka
e896d31bb9 Reload keyboard after SoftInputWindow size changed
Bug: 4450008
Change-Id: Ic6c457db808d8e7479bfaa509192c07a384453e2
2011-05-20 16:23:20 +09:00
Jean Chalard
240297d0ee Add advanced settings screen
Also add an option for popup dismissal delay so as to inaugurate the
new screen.  Besides, remove a path for options to escape from
LatinIME and replace with a direct read from the settings.

Change-Id: I7ec6e724262871fa6523506ecc39f65c5fbe34da
2011-05-13 20:40:21 +09:00
Tadashi G. Takaoka
bdd9341f61 Refactor KeyboardView constructor
Change-Id: I1fd869c180c6c9f966936fce90bc031bc7824983
2011-05-13 20:04:06 +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
Tadashi G. Takaoka
101a00e3d4 Revert "Added support for speaking keys through accessibility service."
This reverts commit dcade18113.

Bug: 4379983
Change-Id: I2448d8f03990a39a3e328a88904d82efc70241a2
2011-05-12 00:14:55 +09:00
Tadashi G. Takaoka
ff082d081f Refactor KeyboardView and create MiniKeyboardView
Change-Id: I8d68b944762ccde05020978f20b3742eb6ab945b
2011-05-09 19:17:39 +09:00
Tadashi G. Takaoka
e4181036f6 Enable long press caps lock
Bug: 3319295
Change-Id: I413062c759a1d91c66fcbf5dd04050dfbf15094f
2011-04-27 16:34:13 +09:00
Tadashi G. Takaoka
e541f03286 Release caps lock by double tap on shift key
Bug: 3319295
Change-Id: Ie0cad06c7b1afac0f33af76128303517e9e7bddc
2011-04-27 15:52:56 +09:00
Tadashi G. Takaoka
a0537fb4c7 Fix repeat key behavior
Change-Id: Ia7e5b2e9579aa0e5050857cdb14f16fa05a33621
2011-04-22 21:17:55 +09:00
Tadashi G. Takaoka
e6cb8fc234 Display spacebar language switcher even when key preview is off
Bug: 4313884
Change-Id: I9d4a474302dadbfc610324799f8768b803705e52
2011-04-21 12:53:53 +09:00
Tadashi G. Takaoka
d9786ce2e3 Refactor key preview code
This change removes mOldPreviewKeyIndex from KeyboardView.

Bug: 4298393
Change-Id: I832eb6deab7e078609973bf0b8be09f73db204d7
2011-04-19 20:32:57 +09:00
Tadashi G. Takaoka
d2c2b4d112 Remove mPreviousKey in PointerTracker
This change also introduces PointerTracker.onLongPressed.

Change-Id: I079eb52175d8fe8b88ce3f13e31493d34d00ad5e
2011-04-19 17:35:11 +09:00
Tadashi G. Takaoka
3f2653ba60 Refactor key preview related code in KeyboardView
Change-Id: Ib8f08cb4f5e03d0c32c32a0ea0363ce3d72fc050
2011-04-18 17:00:58 +09:00
Tadashi G. Takaoka
6fb97bf71c Don't show spacebar preview if key preview is disabled
This change also introduces soft reference cache of spacebar Drawable.

Bug: 4307333
Change-Id: I4d2c500bb47d794aa4f8dfa6ec415dbcb9ab0b74
2011-04-15 23:22:48 +09:00
Tadashi G. Takaoka
dc90d0a15f Refactoring keyboard drawing code and KeyDetector
Change-Id: I55009bf38b1422301223bd90463f837562559dc5
2011-04-15 18:35:08 +09:00
Tadashi G. Takaoka
5d542c2492 Auto mini keyboard layout
Bug: 4280617
Change-Id: I34c344cbf350fe125589aa14ad69e4bd1f4e6f66
2011-04-15 18:19:31 +09:00
Tadashi G. Takaoka
37cfacbae6 Make showing key preview compatible with pre-Honeycomb
Bug: 4179964
Change-Id: Ide0a9c75983b45f8e829f0d64f41557d42fc11e7
2011-04-14 17:43:25 +09:00
Tadashi G. Takaoka
7a3d3ae17f Fast key preview
Previously the key preview was implemented by PopupWindow.  The key
preview popup window would be dismissed and shown each time the key
was released and pressed.  It turned out that it was taking several
milliseconds.

This change implements the key preview by a simple TextView which will
be layout-ed at absolute coordinates within the screen FrameLayout.
And dismissing and showing the key preview is implemented by the
TextView's visibility.

This implementation needs careful coordination of candidates.xml
layout and LatinIME.onComputeInsets to control suggestion strip
visibility.

Bug: 4179964
Change-Id: Id6347cb35b91eb14ab20dd2f312e58b54b6625a7
2011-04-13 18:59:33 +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
6d81e2b79b Increase the horizontal gap between shift/delete and normal keys
This change also adds capability to add horizontal padding to the
keyboard.

Bug: 4269094
Change-Id: I805e76b253a497079517c01bd2a976f8702f7e56
2011-04-08 16:43:01 +09:00
Tadashi G. Takaoka
da4bfbbbb3 Fix popup key preview on tablet
This change temporally enable popup key preview option on
tablet. (config_enable_show_popup_on_keypress_option).

Bug: 3286117
Change-Id: Iabbac5a333460e1ed2f8d05ba82f4bae81854b85
2011-04-07 15:56:16 +09:00
Tadashi G. Takaoka
e59491460b Remain in previous state while sliding off from shift key
Bug: 3502290
Change-Id: I69b60051863c78727363ae63576c28d87fb71a3a
2011-03-02 14:59:39 -08:00
Tadashi Takaoka
52e96f1e89 Merge "Added support for speaking keys through accessibility service." 2011-02-24 17:45:44 -08:00