Commit graph

292 commits

Author SHA1 Message Date
Keisuke Kuroyanagi
adfb262797 Remove logic related to dictionary loading from LatinIME.
Make mSuggest final and give DictionaryFacilitator the
responsibility to manage dictionary loading state.
This can simplify the logic to decide how to deal with
additional dictionaries when loading settings or language
switching.

Bug: 13273534
Change-Id: I9f3d328272f25addfa186fbeedaaf8417455ba99
2014-03-25 15:35:20 +09:00
Jean Chalard
4df6bc0853 Merge "[CB10] Add an event for string input" 2014-03-20 11:34:16 +00:00
Jean Chalard
058a38988b [CB10] Add an event for string input
Change-Id: Ie5da6c73d4df4553067c58cd0dce9abb34534250
2014-03-20 19:47:01 +09:00
Jean Chalard
437dbbcfee Merge "[IL127] Move the double space countdown to InputLogic" 2014-03-20 09:07:49 +00:00
Jean Chalard
7ede642df4 [CB08] Create a combiner chain in the word composer.
Bug: 13406701
Change-Id: I3b9f75de9283f76366d1bef7e14a8f22f2186669
2014-03-20 14:27:55 +09:00
Jean Chalard
350d73932d [IL127] Move the double space countdown to InputLogic
Bug: 8636060
Change-Id: Ie193b747bd9d0b5ba6a986b9a3c746c2182742ed
2014-03-19 17:47:03 +09:00
Jean Chalard
46e17983c6 [IL125] Remove arg to onPickSuggestionManually
Bug: 8636060

Change-Id: I55332c22897e97148621cbd367acf5175b5b3d04
2014-03-19 17:47:03 +09:00
Jean Chalard
1110adad11 [CB07] Small refactoring
Bug: 8689779
Change-Id: I2cf10c690c7e4a9c6bf27211d1fccc1f9d4a9249
2014-03-17 21:26:36 +09:00
Jean Chalard
5eac728b4a [CB06] Fix a design error.
The event interpreter should intervene later, after decoding.
Decoding should happen first, and then the Event should
be passed to the InputLogic.

For the time being, we will leave the (unused) EventInterpreter
class and its friends, because we'll use them again later.

Bug: 13406701
Change-Id: I7582d486724311e39e6692e606cca50c78800643
2014-03-17 20:49:29 +09:00
Jean Chalard
f8accd8839 [CB04] Add an event array to WordComposer.
Bug: 13406701
Change-Id: I9ecd2709c8f1c678a85b0cfaf7c5ed4f78459821
2014-03-14 12:44:49 +09:00
Jean Chalard
750cd48981 [CB03] Pass whole events to the various input logic handlers.
Bug: 13406701
Change-Id: I0a0e4e0b3357f116e1b915c548dee4575e300c92
2014-03-13 19:35:54 +09:00
Jean Chalard
a79a3265db [CB02] Pass an Event to onCodeInput.
Bug: 13406701
Change-Id: Id82e9aab6544ca308e6ac6dee2cfa018b9ce2d8f
2014-03-13 18:41:02 +09:00
Jean Chalard
3892991b80 Merge "[IL124] Remove the KeyboardSwitcher arg to onCodeInput" 2014-03-06 09:15:26 +00:00
Jean Chalard
4da06b9a19 Merge "Correctly update the suggestion strip on non-resumable word" 2014-03-06 08:54:44 +00:00
Jean Chalard
a1bf550294 [IL124] Remove the KeyboardSwitcher arg to onCodeInput
Bug: 8636060
Change-Id: I29ce4c82ea880a937b1c9e5daf494fcdbbdd1336
2014-03-06 14:20:41 +09:00
Jean Chalard
db38d5cf63 [IL123] Put the settings values inside the transaction
A transaction should always operate with a consistent set
of settings. It's better to have it reference them than to
always pass them along.

Bug: 8636060
Change-Id: I3c642dfea6be30712fc6cbb279c64f3185895791
2014-03-06 14:20:37 +09:00
Jean Chalard
29881854bc [IL122] Put the code, x and y in the transaction
Bug: 8636060
Change-Id: Icdf87995dedec410b54c306e8d312ba7ec25cea6
2014-03-06 12:50:07 +09:00
Jean Chalard
c6e200ef3a Correctly update the suggestion strip on non-resumable word
Bug: 13303965
Change-Id: Iedc5d38f70af76fbebb99e59a0d17c1e226c810d
2014-03-05 18:47:41 +09:00
Jean Chalard
7b905c40e9 [IL121] Introduce InputTransaction
We probably can't put this off any longer

Bug: 8636060
Change-Id: I1e5d3cf62d719f4d064ced3282bebf2e822f6baa
2014-03-05 17:04:10 +09:00
Jean Chalard
151761a276 [IL120] Cleanup
Remove useless arguments, local vars, make stuff private

Change-Id: I7cc6c19e9c1703304d593e02be31eb9569cc7b4e
2014-03-04 17:52:14 +09:00
Jean Chalard
fb28935f82 [IL119] Make fields private.
Change-Id: Ia84d3e5a102e1056e3d7467be07df89390f17617
2014-03-04 17:52:14 +09:00
Jean Chalard
030da519de [IL115] Cleanup continues
Bug: 8636060
Change-Id: I944b10ec9798eec57d986e1075ba348aa0892cae
2014-03-04 14:46:04 +09:00
Jean Chalard
e110018e2a [IL114] Move a method to InputLogic
Bug: 8636060
Change-Id: I0d8f93985ddc6e93ce9af0d92a8056620351a498
2014-03-04 14:46:04 +09:00
Jean Chalard
32c6d4caea [IL111] Remove a member.
...and improve encapsulation and readability.

Bug: 8636060
Change-Id: I36407630b307df0721ea7fdb7e7a22cdf2b018b3
2014-03-04 14:31:47 +09:00
Keisuke Kuroyanagi
ea89cb40b7 Use dynamic operations to construct all ver4 dicts.
Bug: 8187060
Bug: 13127350
Change-Id: I081ee904c41898128efa8ba7a1bf3fa0a46c6231
2014-02-27 23:21:09 +09:00
Jean Chalard
57c0c577af [QRP6] Fix: recorrection top candidate is displayed in bold
Bug: 10385162
Change-Id: Icf9471d474a3a8ed8f38c46c7948c66f9131691e
2014-02-25 19:48:09 +09:00
Jean Chalard
2a5ec00301 Don't trim newer inputpointers with old data
We already have a mechanism to avoid this crash, but it wasn't
used every time it needed to. It's possible that ending a batch
input and starting a batch input happen while suggestions
are being pulled out, which would result in pointers that have
been reset being passed for trimming.
Just increasing the sequence number should get rid of the
problem.

Bug: 12178124
Change-Id: I36ef3bc8a78679bc09daa39e665f5ce1bab50c2a
2014-02-21 16:43:11 +09:00
Jean Chalard
1b3a142cac Merge "Fix a bug where suggestions would not be updated." 2014-02-20 14:46:35 +00:00
Jean Chalard
6f50c95887 Fix a bug where suggestions would not be updated.
Also fix a small cosmetic bug where the suggestion strip
would flash.

Bug: 12951777
Change-Id: I68b7bb9175571de9c718f737eebd9f67ea04a931
2014-02-20 23:32:04 +09:00
Keisuke Kuroyanagi
b063377e77 Add final and volatile for members of InputLogic.
Bug: 13107471
Change-Id: I47df79bc6f015c212d1b6d2f63b2efc5da24294e
2014-02-20 18:55:19 +09:00
Jean Chalard
63be066544 Cleanup.
Less code, less chance of stuff escaping, and a bit of a clarification.
Yay.

Change-Id: I3193fd8ad7ac28195260cbc231c4e498a63a460c
2014-02-18 17:07:46 +09:00
Jean Chalard
7a7aeffcdc Don't resume suggestion on links.
Bug: 11447084
Change-Id: I5bd558b9dd85d1505aa918f44e8ac3e52ec42d97
2014-02-17 20:36:16 +09:00
Tadashi G. Takaoka
a273319c59 Add PunctuationSuggestions class
This change must be checked in together with I366c477516.

Bug: 12640318
Change-Id: I8d3864b9d9649c9e3306e82b01a6327b11281b1f
2014-02-14 14:13:39 +09:00
Jean Chalard
2c48846903 Backward compatibility hack : send delete when empty.
Some apps depend on the keyboard sending something to them
when the text is empty. This is BROKEN. Your app must not lie
to the keyboard about what is before the cursor. If there is something
to delete, you must not pretend there is not and try to catch some
delete event. This will result in a bad user experience. This will not
work with all IMEs. If your app needs this broken behavior, you're
doing it wrong. Seriously guys, we're not in the era of typewriters
any more, there are touch screens, there are gestures, there is
accessibility, there are many innovative IMEs that don't have
keys. Do *NOT* rely on key events.

This change implements an ugly hack so that these broken apps
may continue half-working with LatinIME. We are very unhappy
about this.

Bug: 12998568
Change-Id: Ia62ae2fbee4fee65b463acf3a79aafcfd0defa1d
2014-02-13 18:41:54 +09:00
Jean Chalard
cf03ff02b1 Fix a test.
This fixes two separate problems:
- The word finds itself with two separate suggestion spans.
This is fine for LatinIME, but it's hard to predict whether it's
fine for other interested parties (other keyboards).
- The test for the blue underline was incorrect.

Change-Id: I3ecc849676851bf25a25238d694adaa956521a26
2014-02-13 14:01:37 +09:00
Jean Chalard
3df8bcb7a9 Revert "Display predictions when the cursor is moved after a word."
This change is lacking some comments and break some unit tests.
It needs more work.

This reverts commit 38d31a5e79.

Change-Id: I675854fd0729f2d01b7751e35c6d0117f4f88993
2014-02-10 14:24:30 +00:00
Jean Chalard
38d31a5e79 Display predictions when the cursor is moved after a word.
Bug: 12951777
Change-Id: I744b98df6679edd34ca3c1392e38597325935932
2014-02-10 23:07:00 +09:00
Jean Chalard
a49f61f8a7 Conditionally store the raw suggestions.
Bug: 12913520
Change-Id: Ie15f97d90c142c51089280252b35b5ad1d226e19
2014-02-06 16:14:41 +09:00
Jean Chalard
8fb2f6a441 Merge "Fix a flash in the wrong place" 2014-02-05 09:46:44 +00:00
Jean Chalard
9e9e948a70 Fix a flash in the wrong place
Bug: 7226099
Change-Id: I8f74802b3ae24018fc4176fb2fff2c777ae170b0
2014-02-05 18:44:24 +09:00
Jean Chalard
2bb1c6add9 [IL109] Move more code to InputLogic
Bug: 8636060
Change-Id: Ib12eacc836e8d39c4165c97a2a287f32f6bf5405
2014-02-05 14:49:59 +09:00
Jean Chalard
2c01dd00f2 [IL108] Remove some uses of LatinIME in input logic.
Access the suggestion strip through the interface instead.

Bug: 8636060
Change-Id: Ia8bd705c230f943e309d677ef683b1a2cbe68036
2014-02-05 14:49:59 +09:00
Keisuke Kuroyanagi
8c5c01e981 Check isEligibleForAutoCommit when batch input is ended.
Bug: 11951198
Change-Id: Ibbe09fa38eaa3ebf8f9b69f744a29db7ac598975
2014-02-05 11:40:17 +09:00
Jean Chalard
9068fd4e77 Don't resume suggestions if suggestions are not requested.
Bug: 12832614
Change-Id: I6a9b6d128d7e0324ba59a43cf153a3b54e1d35bf
2014-02-03 15:20:45 +09:00
Jean Chalard
ac84fe642e [IL106] Inline a now useless method.
Bug: 8636060
Change-Id: Ic8e0225206358680aa0de421f17ab443c888036d
2014-01-29 12:23:40 +09:00
Jean Chalard
fa7075768d [IL105] Remove more useless arguments
Bug: 8636060
Change-Id: I9e817bb9622c84544a5ca8708e5c1fccad1ed447
2014-01-29 12:23:26 +09:00
Jean Chalard
084c9961f4 [IL104] Remove useless arguments
Bug: 8636060
Change-Id: I97a371fe0c6227eb0f03d3e391a33726e6280322
2014-01-29 12:23:25 +09:00
Jean Chalard
1d2e4f9dcc [IL103] Save the typed word separately in SuggestedWords.
This helps managing the cases where the typed word is not
in the suggestions. This happens during recorrection.

Bug: 8636060
Change-Id: I6784feb793cae96272a7f1d123a0e3bbb8f03143
2014-01-29 12:22:21 +09:00
Yohei Yukawa
be18530acf Merge "Fix inconsistent behavior with the back-to-the-main-keyboard key" 2014-01-28 10:50:23 +00:00
Yohei Yukawa
576f8a5b72 Fix inconsistent behavior with the back-to-the-main-keyboard key
With this patch, the back-to-the-main-keyboard in the Emoji
palette will be registered as a key-release action instead of
a key-press action, like switch-to-the-emoji-palette in the
main layout. This provides mroe consistent UX when the layout is
switched from the main layout to the Emoji palette then
switched back to the main layout.

BUG: 12464067
Change-Id: Ia0d0185db43234dfcfb7cee2677f3d199fe6ed96
2014-01-28 19:30:27 +09:00
Jean Chalard
c9cc1b1de5 [IL102] Rename a method
Bug: 8636060
Change-Id: Ia54afdfab9124aa5c35699e357e63eae66a7557f
2014-01-28 17:18:02 +09:00
Jean Chalard
4500dedfa9 [IL101] Remove a method
Bug: 8636060
Change-Id: Ic9c12fc6970987b0e1912e8ae85bed55260d66b5
2014-01-28 17:18:02 +09:00
Jean Chalard
4761d2fb00 [IL99] Migrate some code to InputLogic.
Bug: 8636060
Change-Id: Ibf1f9c7bdc3fdd872d6c15447fa555434485cc52
2014-01-28 17:18:01 +09:00
Jean Chalard
521a83a3f1 Merge "[IL86] Simplification and correctness fix." 2014-01-27 11:17:31 +00:00
Jean Chalard
264f4e380d Merge "[IL84] Remove a useless call and rename a method" 2014-01-27 11:17:05 +00:00
Jean Chalard
75ec579e07 Merge "[IL81] Remove a useless test." 2014-01-27 10:11:14 +00:00
Jean Chalard
6d1c8b2c3f Merge "Try to figure out whether d.quotes open or close." 2014-01-27 10:01:17 +00:00
Jean Chalard
3b939ed77f [IL86] Simplification and correctness fix.
This should be what was intended.

Bug: 8636060
Change-Id: I20a1cc4f0b1fb9444fb6f9a20ef727e3d1a3a880
2014-01-27 18:42:33 +09:00
Jean Chalard
b2c0388a69 [IL84] Remove a useless call and rename a method
Bug: 8636060
Change-Id: I5cac787953a3c71b6402520c2f5c70619d4a40a8
2014-01-27 18:42:32 +09:00
Jean Chalard
abbd755689 [IL81] Remove a useless test.
It seems the comments were right all along. This seems to really
be useless.

Bug: 8636060
Change-Id: Ie030e9cb73007334380d023abeaa4ce52a863a34
2014-01-27 18:42:32 +09:00
Jean Chalard
f1e5b9b4d1 [IL80] Reverse a test for clarity.
Bug: 8636060
Change-Id: I5092942ab4fd6aaf37023083040cadbc18583fd1
2014-01-27 18:42:32 +09:00
Jean Chalard
f59487379e [IL79] Some refactoring
Bug: 8636060
Change-Id: I931c553f68a1f15d22711a661dbffd4e5d421979
2014-01-27 18:42:29 +09:00
Jean Chalard
10460441db [IL78] Move most of onUpdateSelection to InputLogic.
Bug: 8636060
Change-Id: I7290250637e37bf6964bab71d2141e19f20a5459
2014-01-27 18:42:04 +09:00
Jean Chalard
48df380f78 [IL77] Remove refs to Settings from InputLogic
Bug: 8636060
Change-Id: I4ce5c9b62181ce8593a453ce222ae7d1fdc08f07
2014-01-27 18:18:54 +09:00
Jean Chalard
969c06072d [IL75] Move the SubtypeSwitcher out of InputLogic.
Bug: 8636060
Change-Id: I2a5da27e73cf378e55bd80ab2054c1ba8b13f6ec
2014-01-27 18:18:27 +09:00
Jean Chalard
c7ef305bbc Try to figure out whether d.quotes open or close.
Bug: 8911672
Change-Id: I5d5635949530a67f95e5208986907251b7bce903
2014-01-27 18:17:33 +09:00
Jean Chalard
3aa2043a66 Merge "[IL76] Remove a SuggestionStripView dependency" 2014-01-23 10:06:42 +00:00
Jean Chalard
a1ed211c4e [IL76] Remove a SuggestionStripView dependency
This constant is better located in SuggestedWords.
Or it could be in Constants, that would be fine too.

Bug: 8636060
Change-Id: I3e721bb1e2559f028dce8929eceadfe0478c5924
2014-01-23 16:25:48 +09:00
Jean Chalard
4173610bc5 [IL66.1] Add a comment
Followup to IL66

Change-Id: I067e72c36f483cc3e3b24736c01843531298b507
2014-01-23 16:00:49 +09:00
Jean Chalard
1284e556f4 [IL70] Remove unused arguments
Bug: 8636060
Change-Id: Iec56bce362ebfc52fedab02b127978abb4f3c7f9
2014-01-23 15:33:14 +09:00
Jean Chalard
d1f463eacf [IL69] Oust Keyboard from WordComposer#setComposingWord
Bug: 8636060
Change-Id: I624a45500603dfad355ee3b8b794b2d895219c0b
2014-01-23 15:32:59 +09:00
Jean Chalard
eb6d41a525 [IL67] Externalize a call to the keyboard switcher
Bug: 8636060
Change-Id: Ib13a54854e30afb79217a0a1f2aeca50a95ba155
2014-01-23 13:10:02 +09:00
Jean Chalard
ab80b41a0d [IL66] Remove two accesses to KeyboardSwitcher.
Bug: 8636060
Change-Id: I3b144993e2bcd552f9b292b8f057c9db4216125c
2014-01-23 13:09:58 +09:00
Jean Chalard
352286a43b [IL64] Pull up X,Y processing, step 3
Bug: 8636060
Change-Id: Ic051e5d5514d270101b0571a2d30e2caa8f85bc1
2014-01-22 14:44:25 +09:00
Jean Chalard
b8216a4e7e [IL63] Pull up X,Y processing, step 2
This also fixes the coordinates passed to logOnDelete and
log onSeparator.

Bug: 8636060
Change-Id: I4703d61ad7de76b501adca18df3a69e06450c9a1
2014-01-22 14:42:52 +09:00
Jean Chalard
2b38b5e8e6 [IL62] Pull up X,Y processing, step 1
This is fine because getKey{X,Y} is idempotent for any
non-keyboard coordinate value.

However this makes a net change : the x,y values passed to
LatinImeLoggerUtils.onNonSeparator are now different.
The point is however that they used to be wrong. The logged
values used not to account for the keyboard padding that
is present on tablets, and in the simulating tools we don't
know about that padding so we couldn't use the coordinates.
The catch here is that other calls like LoggerUtils.onSeparator
should follow suit, but this is too big a change to do it at once.
Follow-up changes will fix them too.

Bug: 8636060
Change-Id: If4b3d3cb1ed4b44c35f23e66aba3b5797236bba7
2014-01-22 14:41:45 +09:00
Jean Chalard
591580ee8a Merge "[IL61] Remove an internal use of key coordinates" 2014-01-22 05:19:45 +00:00
Tadashi G. Takaoka
c93cf1c398 Use sorted int[] to represent word separators
Change-Id: I4103541d99fe59bfcf12379a1298a0a690497846
2014-01-20 19:40:02 +09:00
Tadashi G. Takaoka
3033cc51b8 Refactor logic to retrieve relevant suggestions a bit
Change-Id: Ic7d2cbb2c1b2deaa4e735484bdc7413c0b3b1939
2014-01-20 12:08:25 +09:00
Tadashi G. Takaoka
6a18af634e Refactor RichInputConnection a bit
Change-Id: I866488a47ca04ca587e805663dfd597bb7b1ebce
2014-01-17 13:14:29 +09:00
Jean Chalard
ab4543d593 [IL61] Remove an internal use of key coordinates
Bug: 8636060
Change-Id: Id87b0ac4a99ec6a26db6e250d6cd22defc02a23d
2014-01-17 02:10:56 +09:00
Jean Chalard
81255612bc [IL60] Make InputLogicHandler package private
Yay

Bug: 8636060
Change-Id: Iad9c3804504635094e861999198f4baf70e61955
2014-01-17 02:10:56 +09:00
Jean Chalard
17bd129faf [IL59] Rename a method
Um... this is not async ? Remove that from the name

Bug: 8636060
Change-Id: Ida5f9bd6929eae75103eb2e3fb866ed7468af806
2014-01-17 02:10:56 +09:00
Jean Chalard
ac6dfaf80b [IL58] Simplification
No need to test multiple times for this. Let's just never do useless
stuff, and only test for that once.

Bug: 8636060
Change-Id: I50a9e4da769fbec44fbb12eedfed03aad924cc2c
2014-01-17 02:10:51 +09:00
Jean Chalard
4752b68f5a [IL56] Don't erase suggestions when reverting a commit.
Bug: 12297051
Change-Id: Iffa1c98b8fe2b816c3ac6bc171037288107f637d
2014-01-16 03:22:46 +09:00
Tadashi G. Takaoka
bf418f7cba Pass time stamp to addToUserHistory method as an argument
Bug: 12179576
Change-Id: I93037ee2aa7c0432400fe2f93fb60d2e60f70f5f
2014-01-14 15:48:08 +09:00
Jean Chalard
6c24b91601 [IL55] Remove a useless argument.
Change-Id: I0b3a6cdf49038c32194413c21da824784a53f581
2014-01-10 20:28:50 +09:00
Jean Chalard
a224aafea3 [IL54.5] Use the cursor pos estimate, not the last value
For edit tasks, the estimate is actually the right thing to use.
This is really dangerous, but it will get rid of pretty much all
race conditions.

Change-Id: I2d5ca3ce45e32f1bd9c8b778421fd54b9c1f6f63
2014-01-10 19:08:47 +09:00
Jean Chalard
ecf46df226 [IL54] Add a mirror method to fix the cursor pos estimate
This just mirrors what InputLogic#tryFixLyingCursorPosition
is doing. That method will go away in the next change.

Change-Id: Ifa2827dbc1f1d20e2c642d6f2d23514a01ed9203
2014-01-10 16:05:02 +09:00
Jean Chalard
e1de87ae69 Fix an NPE.
Bug: 12397228
Change-Id: I7632931f0685fc8f0558946be66025b2bb2b5a3d
2014-01-10 13:46:37 +09:00
Tadashi G. Takaoka
494e2d6c17 Passing SpacingAndPunctuations to RichInputConnection.getNthPreviousWords
Change-Id: I174c50f509ed6998b755e1a712e7f6c0f82f4425
2014-01-09 18:33:25 +09:00
Jean Chalard
b90fa0fb2c Revert "Revert "Separate spacing and punctuation related settings values""
This reverts commit 8bc427799a.

Change-Id: I34f509998afdb1a7c120fbfdb9f0a1b188224a4d
2014-01-08 18:08:01 +09:00
Jean Chalard
e5cdcaff65 Fix a race condition, take 2.
Don't use absolute cursor positions when making edits,
this leads to race conditions.
This is a bit ugly and will need to be fixed soon. Plans are
underway to clean this up.

Bug: 12390573
Change-Id: I69c09fc41b979880d0800c55a710e39373287cff
2014-01-08 18:04:44 +09:00
Jean Chalard
1e7f2809d2 Merge "Revert "Separate spacing and punctuation related settings values"" 2014-01-08 09:03:15 +00:00
Jean Chalard
8bc427799a Revert "Separate spacing and punctuation related settings values"
This is conflicting with later changes. Temporary revert for cherry-pick.

This reverts commit 0b593ce858.

Change-Id: Id53eadb023a950cfcca496c0cfbfe583c7ec7b8c
2014-01-08 09:00:45 +00:00
Jean Chalard
a247264dc6 Revert "Fix a race condition, take 2."
Conflicts prevent this to be cherry-picked.

This reverts commit dd3d697a6e.

Change-Id: Ib97fae2234633b4bb27d611f48a79060db9ab16f
2014-01-08 08:59:26 +00:00
Jean Chalard
dd3d697a6e Fix a race condition, take 2.
Don't use absolute cursor positions when making edits,
this leads to race conditions.
This is a bit ugly and will need to be fixed soon. Plans are
underway to clean this up.

Bug: 12390573
Change-Id: Ib42d4149343c642b1b5c1937b424e8afdbd4cc1f
2014-01-08 17:19:29 +09:00
Jean Chalard
f628629f69 Revert "Revert "Fix a race condition.""
This reverts commit 3840127244.

Change-Id: I7f0d975ec9e18d94fe3505250360c2b79ccbe96d
2014-01-08 16:44:43 +09:00
Tadashi G. Takaoka
0b593ce858 Separate spacing and punctuation related settings values
Bug: 12179576
Change-Id: Ibafd824a0ea2251843b388e95dcbd8f9bca92d5c
2014-01-08 10:02:37 +09:00
Jean Chalard
1e50c681af [IL52] Remove a useless method.
This old method doesn't even re-read the old suggestions. It used to
recompute them without the coordinates.
Re-using the recorrection code, which is much more advanced, is
the right thing to do here.

Also, refining the test. It's no use trying to resume suggestion
if we don't have a suggestion strip, since we aren't going to
auto-correct anything anyway.

Not the motivation for this change, but this also fixes
Bug: 11620256
Change-Id: Id49efa32e293c49837c61fdc752c86bbac1d2c88
2013-12-27 22:40:19 +09:00
Jean Chalard
8ce921dd6b [IL51] Make private what can be made private
Bug: 8636060
Change-Id: Ifa027de465a421b67897d51e9ad47666dda117ad
2013-12-27 21:09:47 +09:00
Jean Chalard
53c320e275 [IL50] Move the InputUpdater out of LatinIME.
...at last

Bug: 8636060
Change-Id: If5e27a9d28ff64d318dd76792f55edfc8a78d2d7
2013-12-27 21:09:41 +09:00
Jean Chalard
81e0ca5fd3 [IL49] Move InputLogic-related init code to InputLogic.
Bug: 8636060
Change-Id: Ie5027512f066d9c530a686ac559e4649a39bf439
2013-12-27 20:06:39 +09:00
Jean Chalard
c654fe57b1 [IL48] Move onEndBatchInputAsyncInternal to InputLogic.
Bug: 8636060
Change-Id: Idfabf7231a80e21786ce1910b5140bb3dddcac7d
2013-12-27 16:50:08 +09:00
Jean Chalard
69e7a0d24d [IL44] Some factorization
This sheds some light on what's happening here. Some
comments were at least misleading, maybe indicating something
is not sequenced as intended.

Bug: 8636060
Change-Id: Ia74feb457a39fe4a672c27fe4203264fda940f04
2013-12-27 15:34:26 +09:00
Jean Chalard
6bca9ac43d Fix a bug where predictions would not pop upon manual pick
Bug: 12295276
Change-Id: Id359c92acde44758b12929e7bac719d5c9c7577b
2013-12-26 23:19:29 +09:00
Jean Chalard
33b2aaafc2 Merge "Fix a code path that looks ridiculous" 2013-12-26 13:39:21 +00:00
Jean Chalard
f294ed3308 Fix a code path that looks ridiculous
Bug: 12295276
Change-Id: I187016b59213d351c943c6e0b9a2ad3708499646
2013-12-26 22:28:16 +09:00
Jean Chalard
f441047fad [IL43] Small cleanup
All calls are already passing this

Bug: 8636060
Change-Id: I13accefd7c17039dc5ec12dc9e8133ebc86451ad
2013-12-26 22:12:24 +09:00
Jean Chalard
c28f02880c [IL42] Inline getSuggestedWordsOrOlderSuggestionsAsync
Bug: 8636060
Change-Id: I5c47370a3ea5962caff4d40db2faa62accfc7147
2013-12-26 22:12:22 +09:00
Keisuke Kuroyanagi
a374482719 Extract dict operations from Suggest to a new class.
Bug: 8187060
Change-Id: I77775aa50763158d99753c2312fa11fe14267aef
2013-12-26 20:48:19 +09:00
Jean Chalard
52a2682b99 [IL35] Preparative cleanup
Bug: 8636060
Change-Id: Id6791085816891c78289b0223bf0807db2da6300
2013-12-25 22:25:49 +09:00
Jean Chalard
0154609a2e Merge "[IL34] Introduce InputLogicHandler" 2013-12-25 13:21:54 +00:00
Keisuke Kuroyanagi
eea7122e5b Move dict operations to Suggest.
Bug: 8187060

Change-Id: Iabe13abcd43b381360f7080b3f4ee0533f246160
2013-12-25 15:26:50 +09:00
Jean Chalard
621dcbc31c [IL34] Introduce InputLogicHandler
Bug: 8636060
Change-Id: I5d08ed5d69cdb03bd188e36b7014de03f04fa72f
2013-12-25 14:20:19 +09:00
Jean Chalard
8476c2e788 [IL33] Opportunistically remove some KeyboardSwitcher
Bug: 8636060
Change-Id: I0480ac03b9902e940f566b5558b8499647983968
2013-12-24 15:11:35 +09:00
Jean Chalard
07f7536b04 [IL32] Remove a useless variable
Change-Id: I8f5d8fd8c1627a568df57255dc3dceda26c4720c
2013-12-20 21:34:07 +09:00
Jean Chalard
1587be6977 [IL31] Move *BatchInput to InputLogic
Bug: 8636060
Change-Id: If0309be038518a71d735108b78ac9efbfe38c82b
2013-12-20 21:24:27 +09:00
Jean Chalard
0547b33130 [IL29] Move retryResetCaches and tryFixLyingCursorPosition
Bug: 8636060
Change-Id: I45b322e4844f023e91b80f9c2e0f7fa0166bcc59
2013-12-20 20:47:29 +09:00
Jean Chalard
221df9e59a [IL26] Move restartSuggestionsOnWordTouchedByCursor
Bug: 8636060
Change-Id: I373874585f4fa663b4207b9a02d751805259eb36
2013-12-20 19:09:36 +09:00
Jean Chalard
aa161eb371 [IL24] Move mDisplayOrientation to SettingsValues.
Bug: 8636060
Change-Id: Id57ced0cca9dc9e5e85c3a53683588feb28c1402
2013-12-20 18:44:09 +09:00
Jean Chalard
6cf843cba6 [IL23] Resolve a long-standing TODO.
Bug: 8636060
Change-Id: I3a840c30cc4489debf9118beeec448488503bc1c
2013-12-20 16:50:14 +09:00
Jean Chalard
11730aa224 [IL22] Move onTextInput to InputLogic.
Also pull the TLD specific processing

Bug: 8636060
Change-Id: I20931ac6fc6c55a05aa8f8b97b0210c07d230ea2
2013-12-20 16:50:14 +09:00
Jean Chalard
1404c1af85 [IL21] Move the workaround utils to a better place.
Bug: 8636060
Change-Id: I566f9e109ebcabe3a6a778118434ce79d02d1113
2013-12-20 16:48:54 +09:00
Jean Chalard
4487a30e0d [IL19] Resolve a TODO.
Bug: 8636060
Change-Id: Iec7c1001c46cf8e9a44422e3f9008e437cc5cab6
2013-12-20 16:02:03 +09:00
Jean Chalard
2a6de7903c [IL18] Move and rename updateSuggestionStrip
Bug: 8636060
Change-Id: I3d00095cd0e83d1ee3834b37ff188b5aa9806fcb
2013-12-20 15:46:34 +09:00
Jean Chalard
1c0374da49 [IL17] Move commitChosenWord to InputLogic.
Also not-cache a value whose documentation says not to cache
it. That makes it write only, so remove it.

Bug: 8636060
Change-Id: I39798a039cebf79ad78a41fe457c9d9764a3f275
2013-12-20 15:13:48 +09:00
Jean Chalard
5c9e677c2a [IL15] Some small refactoring
Bug: 8636060
Change-Id: I4bfdf1628c9b55a79bd2d88ee30bf10b08a49232
2013-12-20 11:24:45 +09:00
Jean Chalard
48ba1f25ff [IL14] Move getCurrent*Caps* to InputLogic
Bug: 8636060
Change-Id: I6338dcee0f7a80f2181ba0369f71350cb21d231a
2013-12-20 11:24:42 +09:00
Jean Chalard
cdd8a1a69d [IL13] Inline restartSuggestionsOnWordBeforeCursor
It's only ever used in one place and makes unhealthy assumptions
about what the caller is doing. It's better inlined.

Bug: 8636060
Change-Id: I265d5d96894e929d09247ee2e3dc2e81efc2a276
2013-12-19 20:31:52 +09:00
Jean Chalard
bbe40835a9 [IL12] move restartSuggestions* to InputLogic
Bug: 8636060
Change-Id: I99474248e8fa35eb3053b5520abc8716805fdfb4
2013-12-19 20:30:41 +09:00
Jean Chalard
10755af97b [IL11] Cleanup
Make some methods private and add comments.

Bug: 8636060
Change-Id: I6c7d13dca8a22dd1a6f110e8b18d52864429579f
2013-12-19 20:13:14 +09:00
Jean Chalard
060e292628 [IL10] Move revertCommit to InputLogic
Bug: 8636060
Change-Id: Ia5788b365f05ae880bad957cbef00ecc93abb5d1
2013-12-19 19:30:26 +09:00
Jean Chalard
69a57bcdcd [IL9] Move commitCurrentAutoCorrection to InputLogic
Bug: 8636060
Change-Id: I405c4a537858a6d5ab0b29502a2792e8c3b2564e
2013-12-19 19:30:20 +09:00
Jean Chalard
035e3885ac [IL8] Move handleNonSeparator to InputLogic
Also move getActualCapsMode and getNthPreviousWordForSuggestion

Bug: 8636060
Change-Id: I1ee9162d0b7a517070c4b7420b084c973f061533
2013-12-19 18:32:51 +09:00
Jean Chalard
d85e49bf8c [IL7] Move performRecapitalization to InputLogic
Bug: 8636060
Change-Id: I5bf2b1fa2f9338fe28151e66eac1ceda6dbd4a7f
2013-12-19 18:20:41 +09:00
Jean Chalard
40b42b7d84 [IL6] Move handleSeparator to InputLogic
Also move swapSwapperAndSpace, maybeDoubleSpacePeriod,
maybeStripSpace, promotePhantomSpace and canBeFollowedByDoubleSpacePeriod

Bug: 8636060
Change-Id: I864053d21c4b3d51ee7a3cd79053ca602337f6f8
2013-12-19 17:39:01 +09:00
Jean Chalard
c8dfaab783 [IL5] Some renaming
Bug: 8636060
Change-Id: Id76889f8405458bcacb9c7c694cb193b27b842f3
2013-12-19 17:38:55 +09:00
Jean Chalard
37d3f1bd02 [IL4] Move handleNonSpecialCharacter to InputLogic.
Bug: 8636060
Change-Id: I9c6869c85db49d7f87e95a421389eaf47ae3ab2e
2013-12-19 16:46:57 +09:00
Jean Chalard
0e82fa273d [IL3] Move handleBackspace to InputLogic.
Also move resetEntireInputState, resetComposingState,
sendDownUpKeyEvent, sendKeyCodePoint and getTextWithUnderline

Bug: 8636060
Change-Id: Ic4c270ac49769ffba41dc3f12d16ac3aa938717f
2013-12-19 16:46:54 +09:00
Jean Chalard
cddf4f9d78 [IL2] Move onCodeInput to InputLogic.
Bug: 8636060
Change-Id: I8c5c028d81183adb0167b2034ee01de8048edafb
2013-12-19 16:24:45 +09:00
Jean Chalard
7bd2a75ca1 Start separating the input logic from LatinIME.
Create an InputEngine class and start moving the relevant
variables to it.

Bug: 8636060
Change-Id: I64adef4ac01e665c19bb7c5b93517a0cbd03d817
2013-12-19 14:48:43 +09:00