This change also eliminates KeyboardSwitcher.refreshKeyboardCache,
LatinIME.reloadKeyboards() and LanguageSwicther.getLocales().
Change-Id: I5fd4914660ea1c955ddfa0ca62b920f9bcd53e1b
This change defers determining which keyboard should be loaded and
holds the information in KeyboardId object as much as possible. At
keyboard loading time, the determination deferred will be made
depending on the information of KeyboardId.
Change-Id: Ice2455d9e5b21671a250c342c06c043e4baa5355
Because there may be very long key, such as space bar on tablet, we
should not use the distance between the touch point and the center of
key as proximity detection. Instead of that, this change uses the
distance between the point and the nearest edge of key as proximity
detection.
Also this change fixes the bug that space key (code 32) was not
counted in proximity detection.
Bug: 3164020
Bug: 3168138
Change-Id: I687f1ce94a8e944c3f6eea0fe00e18ed6e68e278
This change also fixes that the popup preview of ALT on symbol
keyboard is not showing.
Bug: 3122877
Bug: 3127255
Change-Id: I978cb30a0d05298274d8ab6541b91323a0fef211
Gesture detector, for closing keyboard by swiping down, must be
disabled not only when mini-keyboard is on the screen, but also in the
mini-keyboard itself.
Bug: 3105595
Change-Id: I548501f7117ca2310943cabb678c1e250e5012ce
Cherrypick I44f3b2eef8086d6e0b0db53d38f08487549060c6 from Gingerbread
This change also introduces the key background drawables which has no
fixed bottom padding. Instead of relying on bottom padding in
drawable, this change also specifies Keyboard.verticalGap with
physical unit. Other keyboard related length, distance and size are
also specified by physical unit.
Bug: 3066107
Change-Id: Ib38355ebfc2f8d5b1d26c4e90eba87196fbeddfa
LatinKeyboardBaseView should have removed "long pressed" pointer tracker from the multi-touch pointer queue.
bug: 3099130
Change-Id: I3d358a373b0de07558a204e9ff5a95e9ece38bcc
This is follow up change of I8b38e2803eb32469653484701882af35108eb69a
This change fixes the following when "Voice input on symbols keyboard"
option is selected.
- LatinIME.onCreateInputView fails to show "123mic" icon.
- Email and URL variation keyboard fails to show "123mic" icon.
Bug: 3084022
Change-Id: Ia3929bb0cc5c5c8651af816718c21d1f20e8f016
This change also introduces the key background drawables which has no
fixed bottom padding. Instead of relying on bottom padding in
drawable, this change also specifies Keyboard.verticalGap with
physical unit. Other keyboard related length, distance and size are
also specified by physical unit.
Bug: 3066107
Change-Id: I44f3b2eef8086d6e0b0db53d38f08487549060c6
bug: 3035228 This change will reduce the number of times VoiceSearch app
is called to log IME events. This is because it 1) only
flushes the logs when there is relevant logging information
available and 2) sets a flag in UserHappinessSignals so
that other apps (eg: gmail/sms) can know if there is
relevant logging information before sending the logging
intent to voice search.
Change-Id: I708fea5a38f854091f1101e4f6a3db46296f3e92
Merge commit '938c0a3722a9c597931e6f75408dc7ab636d7052'
* commit '938c0a3722a9c597931e6f75408dc7ab636d7052':
Fix - "Touch again to save" not working for manually picked suggestion when re-correction is enabled.
master was still using the deleted constants in different places and
Java 6 didn't like the imports.
Change-Id: If9472a2acb029e56790dc4d19ab62e608c970175
We'll merge this to master for now, but we should have new attr (such as popupCharWidth) to handle this reasonably in the newly created BaseKeyboard class.
bug: 3082178
Change-Id: I024b946aafbbeb07b865a09f489dacb56f0478d0
Merge commit '644445868f1023b3263a149f2faf617b88341d20'
* commit '644445868f1023b3263a149f2faf617b88341d20':
Addressed bug: 3058217 "-" key not working at beginning of line
To avoid a corner case of bug#3070963, in toggleShift() method of
KeyboardSwitcher, the shifted symbol keyboard will be set if current
keyboard is symbol keyboard or is not shifted symbol keyboard.
This change also implements mini keyboard cache with WeakHashMap.
Bug: 3070963
Change-Id: I868fc072e2f21bddded1622b800a53b9a6a43e91
Before this change, the delay was 500 ms that came from
ViewConfiguration.getLongPressTimeout(). This change reduces the
delay to 400 ms.
Bug: 3074984
Change-Id: Ia5af5e877a3c4bb29211ef4040c728ac09a9fe85
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
Also fixed related issues below:
* Punc suggestions list was sometimes not displayed after cursor move which follows re-correction
* Punc suggestions list was disappearing with words which contains certain punc chars (but not word separator) such as ' and -
Change-Id: I36faf679321782fa8eaf318411308a4a6b89cc25
Merge commit 'c0fc4bf9932caf536af5d5d86bb61ec6d8a44a99'
* commit 'c0fc4bf9932caf536af5d5d86bb61ec6d8a44a99':
Long press mic/comma key bring mini keyboard with settings
Merge commit '8e6a92703d1bdf530d32c8cdf90deefc6bc3a878'
* commit '8e6a92703d1bdf530d32c8cdf90deefc6bc3a878':
Dismiss orange highlight after suggestion has been selected
Merge commit '105f7c36b7fa1845b9edbf47ca55b4a6660303b6'
* commit '105f7c36b7fa1845b9edbf47ca55b4a6660303b6':
Long pressing mic/comma key will show settings menue
Merge commit '93176d869a496051344d80ef03573bc6bb99035a'
* commit '93176d869a496051344d80ef03573bc6bb99035a':
Display feedback popup for saving word while the word is pressing.
Merge commit '4d158dc2779ffff8c92a41f32e6885bd0f155fc3'
* commit '4d158dc2779ffff8c92a41f32e6885bd0f155fc3':
Check recorrection on focusing into a text field that has text already.
This change also fixes tha the touch slop value is applyed only for
initial movement of scrolling suggestion bar.
Bug: 3004920
Change-Id: I62afdedc210156e41e8c84c48cade442f9d5a1aa
Merge commit 'fcd5f2b9b4229c00a6589aad1fda9b727759d343'
* commit 'fcd5f2b9b4229c00a6589aad1fda9b727759d343':
Mini keyboard works even while shift is being pressed
Merge commit '0ea7e504887702bace7b2e765704d08e737ab1b5'
* commit '0ea7e504887702bace7b2e765704d08e737ab1b5':
Fixed key code and key coordinates when move debounce has been in action
This change refactors a key index and pointer position variables into
a separate static inner class KeyState . This change also disables
time debouncing.
Bug: 3033737
Change-Id: Ie4fc37316c260330d8f0861e0771ea903a99cfce
Merge commit '7f2a6a056b67efa2a1fb623ca4cf73f7fb6c7d8c'
* commit '7f2a6a056b67efa2a1fb623ca4cf73f7fb6c7d8c':
Capitalize the displayed text in the suggestion bar when all of the user typed chars are upper case
This keyboard layout is tentative for UX study.
This change added xlarge keyboard layouts only for "regular text",
"symbol/number mode" and "symbol/number mode shifted".
TODO other text mode variants should have dedicated layout.
Change-Id: I36077efcec4b57c3b5cada0a851e1409a289eeb9
Merge commit 'ca2fba71086b3832998ee9039723b66cce3be300'
* commit 'ca2fba71086b3832998ee9039723b66cce3be300':
Keep addWordToDictionary from doing disk I/O on main thread
Merge commit 'bf03559f7e38cd51cb5fd6b0afa937982cbffc67'
* commit 'bf03559f7e38cd51cb5fd6b0afa937982cbffc67':
Add enter/exit animation style to prevew and mini keyboard
TODO This animation style API of PopupWindow can be called only in
Gingrebread or later. We should refactor this using reflection to be
able to be compatible with Froyo.
Bug: 3004787
Bug: 2973989
Change-Id: I2abfcc853b1a0af2bccee7bdf5fbd723456b7d34
Merge commit '27bddbe67f00953dc82a8543fe610c9010f7077c'
* commit '27bddbe67f00953dc82a8543fe610c9010f7077c':
Move RingCharBuffer as a singleton in Util
Merge commit 'ec8b7360161f37d00d178bef37c30352982cd007'
* commit 'ec8b7360161f37d00d178bef37c30352982cd007':
Tune left and right padding of popup mini keyboard
Merge commit '1241be7e8498b8cca348d74363ece68b3ade730c'
* commit '1241be7e8498b8cca348d74363ece68b3ade730c':
Use SystemClock.uptimeMillis() for event time
Merge commit '8957296f066b1f624dc4fae71d3eeb5a0fec1b4f'
* commit '8957296f066b1f624dc4fae71d3eeb5a0fec1b4f':
Choose smaller or shorter language name for space bar
To fit a language name to the space bar or the language switcher, this
change chooses smaller text size or shorter language name
appropriately.
This change also tunes the vertical position of a language name in the
space bar by parameter SPACEBAR_LANGUAGE_BASELINE.
Bug: 3004640
Bug: 3001021
Change-Id: Idb3adcb6fac1a23836510912d35312fa11b4f259
Merge commit '7c120ce4872398ea4f61a67aba1d069e45f1c012'
* commit '7c120ce4872398ea4f61a67aba1d069e45f1c012':
Fix issue space key preview remains on screen and would not dismiss
The space key preview should be displayed one of the following case.
- Popup preview is enabled
- Language switcher is in action, whether popup preview is enabled or
not.
For phone number keyboard, popup preview is never displayed even if
popup preview is enabled.
Bug: 3006612
Bug: 3021091
Change-Id: I5385c776d0e8e3981fc8d8851db9140d92599ce5
This change adds lightweight visual hints of alternate numeric characters on the top row - e.g. having a light gray '1' on the upper right corner of letter 'q'
Note that MDPI resources are tentative (the same as HDPI for now, until we get fixed MDPI visual assets).
bug: 3004632
Change-Id: I7a25cf90b702433a844c88f5c47bf914706af9bc
Merge commit 'c01d978f56f90425f070d57a66968aa77ef69a7d'
* commit 'c01d978f56f90425f070d57a66968aa77ef69a7d':
Draw language label on space key of symbol+alt mode
Merge commit '9c822ec48de0e6839a861212d8b7143f70b29fd1'
* commit '9c822ec48de0e6839a861212d8b7143f70b29fd1':
Fix mini keyboard display position when preview is disabled
The residual time was formerly 150ms by
Ia63662a549481d18046a46ef8292c0a4438b5588, and originally was 70ms.
Bug: 3004787
Change-Id: If60a74c51e9a68f008711cca2423094e8204755f
Merge commit '300362f20982974d07876dee01b4550b8e54d449'
* commit '300362f20982974d07876dee01b4550b8e54d449':
Use the phone keyboard for NUMBER and DATETIME until we get a dedicated number entry keypad.
Merge commit '8ef27577da17f4203db00d5df96c3d2ed32ac713'
* commit '8ef27577da17f4203db00d5df96c3d2ed32ac713':
Default puctuation suggestions have same color
Merge commit '13a6c8c1f8691b753cd1a6b7a77d99af4f7d78ac'
* commit '13a6c8c1f8691b753cd1a6b7a77d99af4f7d78ac':
Add a new preference item to show/hide the settings key.
Merge commit 'b9705959df5d7de38df5dea53270bf702b87716d'
* commit 'b9705959df5d7de38df5dea53270bf702b87716d':
All keys should be processed before processing modifier key
Merge commit '4b813f56bbe11210835a31de7fd73bfe5a566ead'
* commit '4b813f56bbe11210835a31de7fd73bfe5a566ead':
Fix bug that upper case mini-keyboard does not work
Bug: 2996887
Override the methods in InputMethodService that hide the candidates view, since
it was just an optimization to show more lines of text when editing, which
conflicts with the re-correct feature.
Change-Id: Ibfed5ccd9efa048d0b69297a5cf8a638a0d00c72
This change also introduces MiniKeyboardKeyDetector and
mini_keyboad_slide_allowance parameter to tune the key detection
behavior.
Bug: 2993769
Change-Id: I1932b0a382e172cb77b9e098ae182049c834dfe0
The newly added SharedPreferencesCompat adapter class does apply() when available (Gingerbread+), else do commit().
This change incorporates I4eca20fb and I39f6aa04.
bug: 2983837
Change-Id: Iec4e8b69840ad71dbbd6098eeba349934d8248ff
Merge commit '65dab9078dd0c77adcc49d08c46039dad2a950f6'
* commit '65dab9078dd0c77adcc49d08c46039dad2a950f6':
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
Merge commit 'd73d267f34efb131467d9103bb9a56c18f9623b7'
* commit 'd73d267f34efb131467d9103bb9a56c18f9623b7':
Mini popup keyboard adjustment: Have the leftmost number right above the key.
Also fixed an issue when the mini popup keyboard hits the right edge of the view.
A few code cleanups as well.
bug: 2980864
Change-Id: I95f8392521e57560907d54b662e3483ebaf6f7ce
On a device that has distinct multi-touch panel, pressing '123?' key
will change keyboard layout to symbol mode. While pressing '123?'
key, you can press other symbol key to input. Then releasing '123?'
key will change keyboard layout back to alphabet mode.
Bug: 2973383
Change-Id: I3b069fb19141820def8060db4766a08c7c0a6ff0
Merge commit 'dacc927a57b0c7adfbdf244441b9b2495c959980'
* commit 'dacc927a57b0c7adfbdf244441b9b2495c959980':
Update strings for the settings access - based on the latest GB IME spec (ver 03).
Merge commit 'e5abf25d4b57ecdfc01ca3ddf94753d5bcb07fea'
* commit 'e5abf25d4b57ecdfc01ca3ddf94753d5bcb07fea':
Dismiss mini keyboard when finger is released outside mini keyboard
Merge commit 'bc1a0354ef1cac0319cab63822c66203f1fa2c24'
* commit 'bc1a0354ef1cac0319cab63822c66203f1fa2c24':
Fixed extra periods when chording with shift and space
Actually it was caused by canceling repeat key (space and delete) when
multiple pointer are touching.
Bug: 2975041
Change-Id: If82183b9225efdace7b5418860b9664f1705b7ec
This change also disable the special behavior of long press a key that
has only one digit alternate. If the visual design of both the pop-up
preview and the mini keyboard will look like same, I think that
showing mini keyboard is enough for the key that has one digit
alternate.
Bug: 2973546
Change-Id: I04f138c120aa58526fe054626dac856171fb7a58
Merge commit 'd5bcbf8156fdba8199452b8f95ed1940b7e96d31'
* commit 'd5bcbf8156fdba8199452b8f95ed1940b7e96d31':
Support multi-touch only when device has distinct multi-touch panel
Merge commit '232b039496ef95c543bac5128e6378b38760de21'
* commit '232b039496ef95c543bac5128e6378b38760de21':
One alternate is treated as key action, not open mini keyboard
Merge commit 'c93ac9db7129f935425f79d5a460e7b926cb4a22'
* commit 'c93ac9db7129f935425f79d5a460e7b926cb4a22':
Move inflating mini keyboard code into separate method
Merge commit '6654653562d0ec5d46a74f8c49eab2488e273cf2'
* commit '6654653562d0ec5d46a74f8c49eab2488e273cf2':
Change symbol on space bar when autocompletion is activated
This change also refactors some mini-keyboard related methods in
LatinKeyboardBaseView and PointerTracker class.
Bug: 2973236
Change-Id: I3190fe89ea3ac3c6d351ed4b6d77de98a0aa65db
TODO:
- Remove close button on mini-keyboard
- Dismiss mini-keyboard when finger leave the screen while no key is selected
This change also renames some instance variables to have more meaningful name.
Bug: 2959169
Change-Id: I9fd79116a647d7be82415c6e9e7cdaf6edcb2bf6
Merge commit 'a4397ce38af2e1ac3a8284bc078bd1e9cb4fecf4'
* commit 'a4397ce38af2e1ac3a8284bc078bd1e9cb4fecf4':
Add PointerTracker argument to long press related methods
Merge commit 'd0457eae17d10535023a02579d16ede7bfcc6bec'
* commit 'd0457eae17d10535023a02579d16ede7bfcc6bec':
Queuing PointerTracker to support n-key roll-over and shift modifier.
Merge commit 'c5363012b846733e9a3b7ce7de5b04e58644bedc'
* commit 'c5363012b846733e9a3b7ce7de5b04e58644bedc':
Change the preference name for a theme and remove a preference settings
Merge commit '308acfa714a3a0aae073871e76e753b5a98096d1'
* commit '308acfa714a3a0aae073871e76e753b5a98096d1':
Change background color for functional keys in LatinIME
Merge commit 'c354167c84b06b572067efaddfbd3667ffdadb98'
* commit 'c354167c84b06b572067efaddfbd3667ffdadb98':
Correction improvements - use the new InputConnection APIs for underlining and
fetching the selected text.
Bug: 2950652
Some refinements to correction behavior, such as retaining the tap-to-save
when in correction mode.
Use reflection to access the new InputConnection APIs with fallbacks, in case
we run on older OS versions.
Some refactoring to separate lookup for voice alternatives and typed alternatives.
Change-Id: I7c4178bf7e6b47ee274c49fa7a694f8c2d50cea7