Commit Graph

229 Commits (434abe450c8fd65789b6f8b04d62ad98287115dd)

Author SHA1 Message Date
Tadashi G. Takaoka a9311741b8 Merge "Add KeyboardActionListener.Adapter" 2011-08-29 03:19:04 -07:00
Tadashi G. Takaoka e3be3bcebc Add KeyboardActionListener.Adapter
Change-Id: If13df42efffc7cef746c09d5abfe7a8619452a0b
2011-08-29 19:09:56 +09:00
Tadashi G. Takaoka 46286874f3 Add guard to prevent possible IllegalStateException
Bug: 5227682
Change-Id: Iff93b425f52981b5e2c65e309b07bcfe4485eeb1
2011-08-29 18:38:04 +09:00
Tadashi G. Takaoka f44a01b408 Make PopupPanel decoupled with LatinKeyboardView and Keyboard
Bug: 5023981
Change-Id: Ib4fd55d52718aa244178ca2313f5e8487378324f
2011-08-29 17:07:48 +09:00
Tadashi G. Takaoka 32572948d7 Refactor and rename popup mini keyoard related classes
Change-Id: Ia92ec4612090b03829db9a87ce68d701db6e15bc
2011-08-23 17:51:57 +09:00
Ken Wakasa cadb2128f5 Fix issues with long-pressing the spacebar
bug: 5114433
Change-Id: I18f2147724a08965147bafe93e11fc86c7c59d33
2011-08-06 16:49:32 +09:00
Tadashi G. Takaoka 1be29abab2 Cleanup Keyboard related code and rename some classes
This is	a follow up change of I90ffbde0

Bug: 5023981
Change-Id: I3a6b862d05f5f907dee954cd6d6fee983b20ab5e
2011-08-02 17:12:02 -07:00
Tadashi G. Takaoka 8da9a13760 Make Keyboard object immutable except shift state
This is the first step to implement suggestions pane as mini keyboard.

Bug: 5023981
Change-Id: I90ffbde0fda19b4be68add449310997b56bf6904
2011-08-01 22:04:48 -07:00
Tadashi G. Takaoka d4b533774d Remove unused method
Bug: 4521802
Change-Id: Iae649f8b77b3bb144ee7eedbb6545e237fa79a17
2011-07-28 15:24:46 -07:00
Tadashi G. Takaoka 0a5345c7b6 Fix NPE
Bug: 5086698
Change-Id: Iaa3082649344722bd643c49c9d151df754d6e337
2011-07-27 15:37:42 -07:00
Tadashi G. Takaoka 4692af50da Support multiple key preview
Bug: 4298393
Change-Id: Ibd3681f7255c85e3602e1af4ace8f8e7fce3fb06
2011-07-26 14:55:19 -07:00
Tadashi G. Takaoka 9ec80d9d89 Make PointerTracker aware of that popup panel is showing
Bug: 5070598
Change-Id: I0604287b8c373e4763b4ccf88c0bd7235af907d5
2011-07-26 10:22:07 -07:00
Tadashi G. Takaoka d3002aa8cd Merge key preview handling into key graphics handling
Change-Id: I7b0ba38d833362817c607f6abffbaf0a07f52832
2011-07-23 02:23:24 -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 98b5c982b9 Trigger IME switcher by long-pressing space key
Long press time out for space key is set to 1000msec.
FYI: Time out for shift key is 1200ms and for mini popup keyboard is 400ms.

Bug: 4971680
Change-Id: Id05f519baa15ca2e54958997ddf7b6b3b7a2d078
2011-07-17 17:23:43 -07:00
Tadashi G. Takaoka 5c73ed628b Move PointerTrackerQueue into PointerTracker
Bug: 4768084
Change-Id: I1be83b38c48147827c871c92e17d37da3aeb0f95
2011-07-12 23:35:23 -07:00
Tadashi G. Takaoka 63c233ab9f Fix mini keyboard behavior while chording input
This change makes PopupMiniKeyboardView based on KeyboardView, so that
only LatinKeyboardBaseView can manage touch event and PointerTracker.

Bug: 4768084
Change-Id: Id30b132f1fae45da6e79ce822745cf0a653b8eb3
2011-07-12 21:52:49 -07:00
Tadashi G. Takaoka f426cdd5c6 Add KeyEventHandler interface
This change also revert KeyboardView to non-abstract class.

Bug: 4768084
Change-Id: I827defb58bfb28b345464f6a89aa4438e41cf1e2
2011-07-10 19:48:14 -07:00
Tadashi G. Takaoka 0efe174ea4 Pass KeyboardView to PointerTracker on down event
Bug: 4768084
Change-Id: I446b98daef8c9ec2408481e59cb2a88754ef9e01
2011-07-10 18:06:42 -07:00
Tadashi G. Takaoka 3fdae97417 Move processing MotionEvent out from PointerTracker
Bug: 4768084
Change-Id: Idfbc9706f9daeaa979edeee9064cb69326bd3bbc
2011-07-08 21:19:16 -07:00
Tadashi G. Takaoka 2321caa1f9 Narrower key timer handler static inner class to TimerProxy interface
Bug: 4768084
Change-Id: I8fdff864d09321b44d56a6a32e10aec3f0f5a4d1
2011-07-08 19:15:16 -07:00
Tadashi G. Takaoka 8a995157f3 Merge PointerTrackerKeyState into PointerTracker
Bug: 4768084
Change-Id: I0be0e07bff2542db6ba764dcb13505dfbff6994e
2011-07-08 16:26:11 -07:00
Tadashi G. Takaoka a9f69513df Merge "Remove swipe gesture" 2011-07-08 00:06:25 -07:00
Tadashi G. Takaoka c71854a661 Remove swipe gesture
Bug: 4971680
Change-Id: Ifff27f3bd3dd26417bfcb7072aaba074025b1bb7
2011-07-08 00:00:14 -07:00
Tadashi G. Takaoka 5a7a696aff Let KeyDetector hold Keyboard
Bug: 4768084
Change-Id: Ia28d6971fc59086dd4e6fedc9fd1b50f13b59854
2011-07-07 23:31:04 -07:00
Tadashi G. Takaoka 906f03121b Holding PointerTrackerQueue inside PointerTracker
Bug: 4768084
Change-Id: Id5006e549c4018a656abd088f14a209415baafed
2011-07-07 17:16:35 -07:00
Tadashi G. Takaoka f60d09ac30 Narrower KeyboardView reference
This change also rename static inner class to more readable name and
get rid of unnecessary object reference from PointerTracker.

Bug: 4768084
Change-Id: Ie4e2b940d66b47d41efcae7eeac853cdae2e4d38
2011-07-04 22:42:48 +09: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 5f6816fa8b Move keyboard event handling code to separate LatinKeyboardBaseView class
To sort out the issue, main keyboard and mini keyboard have to share
the pointer trackers.

In order to prepare for that, KeyboardView needs to be refactored as
two separate classes. KeyboardView is responsible for drawing keyboard
visual. And LatinKeyboardBaseView is responsible for handling key
event and mini keyboard as well.

Bug: 4768084

Change-Id: I5643e333b9bdfde0c939a0693cea76bd22f38897
2011-07-04 18:53:50 +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 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 e7759091dd Move Key class out of internal package
Bug: 4903326
Change-Id: I2493d6dae613d2e37dfa8ce96b4cddc9a038160c
2011-06-23 22:59:12 +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 72934bd596 Move keyboard related internal class to separate package
Change-Id: Ic1459066b865cde5104b3734193f76c997959c68
2011-06-22 11:54:00 +09:00
Tadashi G. Takaoka e218baa6cc Fix NPE
Change-Id: I35efd1d6c8c2b48d93675d014d5c7aef7d12ed58
2011-06-20 11:29:04 +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 1ddb4897fe Fix Keyboard crash when chording and long pressing key
This change just prevents crashing. The another bug#4646271 has been
opened to support chording and long pressing key.

Bug: 4463909
Change-Id: I50e42656fe111e6b261310c899e672b8ba001e5d
2011-06-15 17:05:39 +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 8632bff2d5 Fix copyright author from Google to AOSP
Change-Id: Iaceedc783181e43af6dd48ece218a42eace66532
2011-05-20 12:09:57 +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 717cef79ea Fix quotation marks
This change
* Allows snap back from symbols shifted to symbol layout.
* Add "left single", "right single", "single low" and "single high
  reversed" quotation marks to popup characters of "single quote".
* Add "double low" and "double high reversed" quatation marks to popup
  characters of "double quote".
* Add "prime" and "double prime" to popup characters of "degree".
* Disable non-ASCII key of symbol more layout on passowrd input.

Bug: 4345054
Bug: 4347045
Change-Id: I8168ce6a74a9536e4966f7f9d1099ac0132925c7
2011-04-27 15:21:06 +09:00
Tadashi G. Takaoka a0537fb4c7 Fix repeat key behavior
Change-Id: Ia7e5b2e9579aa0e5050857cdb14f16fa05a33621
2011-04-22 21:17:55 +09:00
Tadashi G. Takaoka f172be448c Clear spacebar sliding language switch diff
Change-Id: If82540b6632476e049fa9c4b3122e9c053227d6e
2011-04-22 18:49:15 +09:00
Tadashi G. Takaoka 75136cd009 Fix language switch preview
This change also makes the delay after key preview longer to 60ms.

Change-Id: If7cf3b493824bb12e0bf44aa0bc3c186b15b51f6
2011-04-22 18:26:32 +09:00
Tadashi G. Takaoka d00d963b9d Fix NPE on non-distict multitouch device
Change-Id: I6d8a05bf62e510d0556fa4831b3d510041cca63a
2011-04-22 17:33:24 +09:00
Tadashi G. Takaoka c5c57b506e Move sliding language switch code to PointerTracker
This change is hack and temporal.

Big: 4328445
Change-Id: I0b8851e9f05390db20ddaa10f35cff1cc9f016da
2011-04-22 17:02:38 +09:00
Tadashi G. Takaoka ba9aefcc18 Disable key preview of space, return and delete
This change also re-orders punctuation mini keyboard.

Change-Id: I987ef14fe5956d13439a0a76de367feed825314c
2011-04-21 19:04:49 +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 dc90d0a15f Refactoring keyboard drawing code and KeyDetector
Change-Id: I55009bf38b1422301223bd90463f837562559dc5
2011-04-15 18:35:08 +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 967d6073bf Disable popup preview and long press on disabled key
Bug: 4268147
Change-Id: Ibcb54791ef78737dd09d8a594b5a53b0909609d6
2011-04-08 17:14:12 +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 996db15d3c Disable successive modifier key while sliding input
When user starts sliding key input, sliding through successive
modifier key will be ignored.

Bug: 4181843
Depends: I082885bd2376ae26bdfc378c14add2b5d6be1d4e

Change-Id: Ibe890b9cc1183dbe9f68a421650fcd97e7ff221c
2011-04-07 20:17:27 +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
Alan Viverette dcade18113 Added support for speaking keys through accessibility service.
Issue: 3366636

Change-Id: I70a2ebb4420782ba4d7d874ffc2259bb1b80446f
2011-02-23 18:16:43 -08:00
Tadashi G. Takaoka 690b1360bf Don't play key press sound if the key is disabled
Change-Id: I1c6d1b16a7420bc7e5f97f50da549e6a89498f18
2011-02-20 18:14:05 +09:00
Tadashi G. Takaoka f2fd472dcc Cleanup keyboard drawing code
Change-Id: I084e3ac835ee60b8e463ac10c075adbf08b9a7cb
2011-02-01 19:42:56 +09:00
Tadashi G. Takaoka faf437b507 Add hack to translate sudden move to up/down events
This change also gets rid of unnecessary debug messages.

Bug: 3400735
Change-Id: I3f003b1c2b553a2f841d4880f348a012d2d9c8ad
2011-01-28 16:35:02 +09:00
Tadashi G. Takaoka 5cd87e1b1c Disable shortcut key when network is not available
Bug: 3345931
Change-Id: I1deef774598b8e78da4404535b6d3814464a9d2d
2011-01-26 17:07:55 +09:00
Tadashi G. Takaoka 1a6fba5702 Fix potential keyboard layout change bug
Change-Id: I2518dd1d2ef4b77fe32bb1fed4e0c722f3d120c1
2010-12-31 11:46:48 +09:00
Tadashi G. Takaoka 5797cefca6 Longer long-press timeout in sliding input
Change-Id: Id74bddef4837ee46569775ce54f54d5535cfa463
2010-12-30 17:27:47 +09:00
Tadashi G. Takaoka baf83886be Filter out too short noisy touch events
Bug: 3294017
Change-Id: I1769eab1d096d16bfa9d6f23b973483ee6e7a478
2010-12-21 23:46:15 +09:00
Tadashi G. Takaoka 1d7d9664a9 Refactor PointerTracker class to include queue management
Change-Id: I81d025220df6d970d8758157a89168851c8421ae
2010-12-21 18:56:27 +09:00
Tadashi G. Takaoka 2b13b4f5e5 Suppress long press timer on hinted key while temporary upper case mode
Bug: 3301932
Change-Id: I29b5e5a9aa8b44681e763a4d6485109f3f99f6fa
2010-12-21 17:28:19 +09:00
Tadashi G. Takaoka c4f71668d7 Remove multi-tap feature
Change-Id: Ife44b3f9d420d77d2cfb51044a8356f02ed63e8b
2010-12-20 21:58:31 +09:00
Tadashi G. Takaoka 8aa3f5a3ad Cleanup KeyboardActionListener interface
Change-Id: I851eaea479f1590fd404a7a37a9a35d1bdcd378c
2010-12-20 19:52:08 +09:00
Tadashi G. Takaoka cb2469ae17 Suppress haptic feedback while sliding key input
Bug: 3298222
Change-Id: I9507a98cc833fc6403cf9abf23457748a2bf89de
2010-12-20 19:48:27 +09:00
Tadashi G. Takaoka 5ef421b58a Cancel long press timer when sliding key input is not allowed
This change also fixes auto snap back behavior of key which has output
text, such as smiley key.

Bug: 3297825
Change-Id: Ia06e1abc0fbdff2a26504ddcce1dc7f933b45453
2010-12-19 21:57:50 +09:00
Tadashi G. Takaoka ef71c4aa4c Fix checking of sliding off from key
This is follow up change of Id6f69e82.

Change-Id: I15127929b8eeb511a652c7ae6a14ababbb49ee24
2010-12-19 19:52:15 +09:00
Tadashi G. Takaoka dbc44989a5 Refactor PointerTracker class
Change-Id: Id6f69e82119a9a3f618d95443a3ecc766abab08a
2010-12-19 19:15:01 +09:00
Tadashi G. Takaoka 9e91472285 Automaticaly snap back to the previous mode from sliding symbol input
Bug: 3280151

Change-Id: I48ea134639465d0cc178e524af8d7885d185957d
2010-12-19 18:48:49 +09:00
Tadashi G. Takaoka 67a4ecacc7 Disallow sliding key input
This feature is configurable by R.bool.config_sliding_key_input_enabled.

Bug: 3294076
Change-Id: I0225a6ce19d9b911c9d9543a106ab57ee0b7de75
2010-12-18 20:41:53 +09:00
Tadashi G. Takaoka e26ef1bccd Remove Tutorial class and unused debug feature
This change also cleanups compiler warnings.

Bug: 2897373
Change-Id: If972cf45c1eb40436adbddbf71969e5409f4c9c5
2010-12-10 18:24:00 +09:00
Tadashi G. Takaoka e18bd3e323 Fix voice key on phone device
This change,
- changes voice key code back to -102
- renames some key code names and method names
- adds mic_slash_holo to drawable-hdpi

Change-Id: I8be3a20921f472ece4298edad2d275f29a7e4955
2010-12-06 12:29:59 +09:00
Tadashi G. Takaoka 418d80d7de Double tap on shift key turns on caps lock
Bug: 3238128
Change-Id: Ib641d33da148b72c7c775caa11e0b2ab58a8c081
2010-12-03 09:31:35 +09:00
Tadashi G. Takaoka 571bdb401f Refactor LatinKeyboard and LatinKey
This change also moves KeyboardSwitcher and related classes to
com.android.inputmethod.keyboard package.

Multi project change with Ib23017b2

Change-Id: Id7d54b24615fe22ebb540ca847549909e346ee24
2010-12-02 23:03:59 +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