Commit Graph

1653 Commits (3ca65c8fd56724a7b4b3440bccf613e5a1a17513)

Author SHA1 Message Date
Jean Chalard 98140faac3 [IL38] Fix a wrong double call
This only gives bad results if a gesture results in only one suggestion.

Change-Id: I5a2f27f83f6901a5a9ecf22f02bdfc9cca6d9f1d
2013-12-26 18:43:47 +09:00
Jean Chalard 30a72da42c [IL37] Small simplification
Bug: 8636060
Change-Id: I08a6c04986a0bd86ce4c232893e804766ebeebb9
2013-12-26 13:51:09 +09:00
Jean Chalard c08119e5c1 [IL36] Inline setAutoCorrection
There are far too many one-use methods.

Bug: 8636060
Change-Id: I84e0669b8d2cc5a2817c42b089e874dc60e84769
2013-12-26 13:18:36 +09:00
Jean Chalard 52a2682b99 [IL35] Preparative cleanup
Bug: 8636060
Change-Id: Id6791085816891c78289b0223bf0807db2da6300
2013-12-25 22:25:49 +09:00
Keisuke Kuroyanagi bb39518bd7 Use SettingsValues instead of Settings in Suggest.
Bug: 8187060
Change-Id: Idba1e708d67c036072b728949d17f8bd98ae0115
2013-12-25 18:53:04 +09:00
Keisuke Kuroyanagi eea7122e5b Move dict operations to Suggest.
Bug: 8187060

Change-Id: Iabe13abcd43b381360f7080b3f4ee0533f246160
2013-12-25 15:26:50 +09:00
Keisuke Kuroyanagi f1457e7a22 Remove personalized dicts when the option is turned off.
Bug: 11757851

Change-Id: I94f32859d862fe41e39845ab2bfc2d396c6aea0f
2013-12-25 11:44:16 +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 1587be6977 [IL31] Move *BatchInput to InputLogic
Bug: 8636060
Change-Id: If0309be038518a71d735108b78ac9efbfe38c82b
2013-12-20 21:24:27 +09:00
Jean Chalard 059f4c2f39 [IL30] Minor refactoring
Change-Id: I8a8aa9f703c6fca5e25ec573b41f325680ac92dc
2013-12-20 20:47:44 +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 81e8d16031 [IL28] Remove useless code
I don't understand why this was checked in. The tests are completely
useless, that makes the variables write-only, and the only side effect
is useless as the keyboard commits suicide upon exiting debug
settings.

Change-Id: I4eb25295183f43a2e947a6a0467ea168d023c18a
2013-12-20 19:48:05 +09:00
Jean Chalard 55ce2cc2d5 [IL27] Some refactoring
Bug: 8636060
Change-Id: Iedfdf71350f5fe3ab451fc5ec6e3c9901f71e50f
2013-12-20 19:24:38 +09:00
Jean Chalard 221df9e59a [IL26] Move restartSuggestionsOnWordTouchedByCursor
Bug: 8636060
Change-Id: I373874585f4fa663b4207b9a02d751805259eb36
2013-12-20 19:09:36 +09:00
Jean Chalard ec4b6e7bb3 [IL25] Inline handleClose
Only ever used here.

Bug: 8636060
Change-Id: Ia98c8bbe1c63ad4d057efe1cee87829b06124479
2013-12-20 18:44:13 +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 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 8a390023e1 [IL20] Remove some useless processing.
If we have the same text field, then the target app is
necessarily the same. No need to re-evaluate it.

Bug: 8636060
Change-Id: I66eb194c4cd08a6c1d47b26b99bd7f420130097e
2013-12-20 16:02:07 +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 a905fcec00 [IL16] Improve getTextWithSuggestionSpan
Dynamically test for the presence of main dict suggestions. This
is much more potent and more accurate than the vaguely defined
boolean.
Also, resolve a TODO and avoid creating an object uselessly.

Not directly related, but helpful with:
Bug: 8636060

Change-Id: Ib1745f77ee6d9ec7cd8bbfa5a548652ec84ec902
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 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
Jean Chalard dfbe2bfe08 Add some info to test crashes to help diagnose flakiness
Bug: 11142685
Change-Id: Ic3a5d452f6c325248ac4e1bfa37774c58586f359
2013-12-18 18:10:56 +09:00
Keisuke Kuroyanagi 1f5a3faf76 Merge "Enable Personalized dictionaries based on the setting." 2013-12-17 10:40:29 +00:00
Keisuke Kuroyanagi 8732f9c5f9 Enable Personalized dictionaries based on the setting.
Bug: 11757851
Change-Id: I83e484195f036e35cbae21fe63148bc9c22bfad7
2013-12-17 19:36:19 +09:00
Jean Chalard 7cd7cf73f4 Fix a bug with languages without spaces and predictions
This is simpler and more correct.

Change-Id: I41806d2fc12b4ca25f76e32972b38f91f3d05c2b
2013-12-16 23:16:02 +09:00
Jean Chalard dc06ee85ef A simplification.
This does the same thing, but simpler and faster.
Was noticed while investigating bug#12164555

Change-Id: If9926e4da8a53a65489da55197ac87122c44fe7c
2013-12-16 21:38:31 +09:00
Jean Chalard 7a904514fb Merge "Don't use the previous word after a non-whitespace separator" 2013-12-13 11:53:30 +00:00
Jean Chalard 0b51fac907 Merge "Only update shift state if left in auto mode." 2013-12-13 11:52:13 +00:00
Jean Chalard fae1ba767c Don't use the previous word after a non-whitespace separator
Bug: 12101276
Change-Id: Icf36d55ec171194e5561b946021bcf648782ddd4
2013-12-13 20:51:28 +09:00
Jean Chalard 28bd6e2297 Only update shift state if left in auto mode.
Bug: 12100417
Change-Id: I7bc2b19332e142a257b0399f2e5d128caf01fc7c
2013-12-13 20:47:25 +09:00
Keisuke Kuroyanagi cc8c544ee2 Remove code for forgetting curve in Java side.
Change-Id: I294ed179c642ff52452b5884326c1083477e1bce
2013-12-13 18:40:58 +09:00
Ken Wakasa 2fa3693c26 Reset to 9bd6dac470
The bulk merge from -bayo to klp-dev should not have been merged to master.

Change-Id: I527a03a76f5247e4939a672f27c314dc11cbb854
2013-12-13 17:13:32 +09:00
Tadashi G. Takaoka ea8f8da1ac Fix unusual NPE after onDestroy
Bug: 11673978
Change-Id: I4d5268312911685ff1ca9483a62442a1a9686c62
2013-11-22 17:26:42 -08:00
Tadashi G. Takaoka db86a6f271 Add keyboard color switch option
Bug: 11622614
Change-Id: I25aa1ff7376fe72fd94ab2cb7190c61d7a98a1af
2013-11-22 17:26:33 -08:00
Ken Wakasa 87cd39124a handleBackspace should always send KEYCODE_DEL for InputType.TYPE_NULL
This is a fix only for the Bayo branch because this part in master has
been changed.

The corresponding fix in master is I295eeb5f9f0f1f07e919bf54122d003be150a174

bug: 11797053
Change-Id: I779be039ebf992de5d246c7a9d9509623fc3c120
2013-11-21 17:47:05 +09:00
Jean Chalard 3a9b2430a5 Fix many small nits.
...the interaction of which results in a very bad bug.

Bug: 11648854
Change-Id: I774489e384388f187e72b9ac091ab387c5e1a79a
2013-11-12 22:44:59 -08:00
Jean Chalard e4022137ee Remove an out-of-place check
Bug: 11584525
Change-Id: I76cc3e4ee21d62fbd56042adcf085efd5cafb53f
2013-11-12 22:44:58 -08:00
Jean Chalard c130be8779 Add a sequence number to SuggestedWords.
This allows testing for suggestion freshness in an asynchronous
suggestions world.

In-advance cherrypick of Ic76cd17568598d8534aec81e037f9e37f52eb6b4
because there's a merge conflict.

Bug: 11301597
Change-Id: I4aec765a975298fcac30a48dede73d2622224fe5
2013-10-22 13:19:16 +09:00
Ken Wakasa b044047227 mExpectingUpdateSelection was out of sync when nothing to delete.
cherripick of I9c6a948331726a821bd3ccec9c1d02dec2c4703a
(forward cherrypicking this because the automerger is stuck now.)

This bug was leading to corrupted rendering of surrogate pairs in the following
scenario.

1. Type some emojis
2. Move the cursor at the beginning of the text field
3. Hit backspace even though there's nothing to delete
4. Move the cursor after some emoji
5. Hit backspace

The root cause of this issue was the out-of-sync mExpectingUpdateSelection if
handleBackspace() gets called when the cursor reaches at the beginning of the
TextView. In such case, mExpectingUpdateSelection shouldn't be set true because
there's nothing to delete, so there will be no onUpdateSelection() calls associated
with it. Due to this bug, the cache in RichInputConnection could get stale at step 4
described above. Then the following handleBackspace() that should delete a surrogate
pair was not working correctly because of the stale cache.

bug: 11181913
Change-Id: I1cbf444d8d105416e7de75c16d80b3797f470495
2013-10-15 14:05:34 +09:00
Ken Wakasa cf5dfd2464 am 3a3bbf4a: am eed74b81: am c8383eda: Fix wrong commitText parameter in sendKeyCodePoint()
* commit '3a3bbf4a38870ecc42b7f6fbd3a7cae20fe020a7':
  Fix wrong commitText parameter in sendKeyCodePoint()
2013-10-14 10:52:40 -07:00
Ken Wakasa c8383eda8b Fix wrong commitText parameter in sendKeyCodePoint()
Small optimization on generating a String instance from a single code
point too.

bug: 11181913

Change-Id: I0f905e4dc6ec7841092bb4d3d940daf3b2303f5b
2013-10-13 10:56:10 +09:00
Ken Wakasa fe97ff4083 am 60fb5865: am 06e1bdaa: am 3e35e072: Merge "Make emoji separators" into klp-dev
* commit '60fb58654e33448651fea191ba22cfdc87e37466':
  Make emoji separators
2013-10-11 05:10:21 -07:00
Satoshi Kataoka eb7fa4dc6d am 40506273: am ac6d0c65: am 6d915037: Merge "Fix a bug where emojis would remove the suggestion strip." into klp-dev
* commit '405062733cfe066c4b9af719bfc36a9a516c9dd3':
  Fix a bug where emojis would remove the suggestion strip.
2013-10-11 05:10:19 -07:00
Ken Wakasa 3e35e0727c Merge "Make emoji separators" into klp-dev 2013-10-11 11:57:07 +00:00
Jean Chalard 6fc15b9fc4 Fix a bug where emojis would remove the suggestion strip.
Bug: 11163495
Change-Id: I23d12c430125cc2a66a6e00715a4c609bb9e2bb1
2013-10-11 20:51:13 +09:00
Jean Chalard 401fb908f0 Make emoji separators
Bug: 11163495
Change-Id: I3247b8d1bbd3406b29a30a25aebd932c63431943
2013-10-11 20:00:38 +09:00
Jean Chalard 7e6ac9d727 Allow double-space-to-period after percent
Bug: 11158604
Change-Id: If8c94ef91ed58bb5028f51be7c8d9beb677436a4
2013-10-10 21:26:08 +09:00
Jean Chalard f178685c11 Always call finishComposingText before recapitalization
Workaround for framework bug:
Bug: 10792236

Change-Id: I3706b9eed5223889791840e30660f8d17625cb70
2013-10-09 12:15:21 +09:00
Jean Chalard 27d78643e8 Remove a useless IPC call.
This is not useful because we're going to call setSelection again
with different values on the connection right away.

Also a preliminary change for
Bug: 10792236

Change-Id: I46c6ef1fbb3624086099bf81afddb0ef5ae85661
2013-10-09 12:11:28 +09:00
Satoshi Kataoka a701501cb6 Merge "Reduce memory of emoji palette" 2013-10-08 11:22:21 +00:00
Satoshi Kataoka 0e01df9baf Reduce memory of emoji palette
Bug: 10902556
Change-Id: I3c8da35a601de2bfb248292c7b59235fc1120988
2013-10-08 20:11:35 +09:00
Jean Chalard 482aa129e4 Show the keyboard earlier when rotating.
Bug: 11107229
Change-Id: I0b36341d60b634a860eb13fafd0dc69fe734bdeb
2013-10-08 16:33:27 +09:00
Jean Chalard 10581e68af Make the sentence separator a resource.
This will help handing correctly the armenian full stop.

Bug: 10082781
Change-Id: Id7bb219ebd89daba203216eab362d1cc26a65a36
2013-10-08 15:28:43 +09:00
Jean Chalard 3c4e8cb693 Call loadKeyboard later if it can't be called right away
Since loadKeyboard relies on the input connection being
available to give it the auto-caps state, but also can't
be called twice in a row because it needs to save and
restore its state and invalidates it after the restore,
we need to wait until we know we have a valid input
connection to call it.

Bug: 11107229
Change-Id: I1c7baf3215682df6f6ceb357bd37254f9e7418c7
2013-10-07 22:57:59 +09:00
Satoshi Kataoka 4be5f221e6 Clear the cache of subtypes in onStartInputViewInternal
Bug: 11077905
Change-Id: I9495f13a20edca0e6153cd1a7a0ac6891f707c59
2013-10-07 20:10:58 +09:00
Jean Chalard 423921ca13 Merge "Fallback on empty locales." 2013-10-04 13:44:44 +00:00
Jean Chalard 43a8a0c527 Fallback on empty locales.
This is a very rare corner case.

Bug: 11072132
Change-Id: Iad2aa69511f7dc99105284a049c63f2f997b8ef0
2013-10-04 22:04:59 +09:00
Jean Chalard 8142fd83a6 Accept double-space-period after emoji.
This also includes a fix that allows this code to read surrogate
pairs in this processing.

Bug: 11070482
Change-Id: If5ef8d6863938252f09128b7e99ea07ece6e7019
2013-10-04 22:01:36 +09:00
Keisuke Kuroyanagi d25cd26f1a Merge "Try decaying user history at hourly intervals." 2013-10-02 09:44:03 +00:00
Keisuke Kuroyanagi f36a97ab3a Try decaying user history at hourly intervals.
Bug: 6669677

Change-Id: Ib465fa7e1a7f289a07843535ba89d0dd5259e803
2013-10-02 18:06:08 +09:00
Jean Chalard f735117d36 Fix a pernicious bug with caps.
What's happening here is, setAlphabetKeyboard sets the
keyboard to AUTOMATIC_SHIFTED and updates the keyboard, then
restoring the keyboard old state sets it back to UNSHIFTED without
updating it. When we finally know what the correct value is,
we try to set it to UNSHIFTED, but since that's already the currently
recorded state, it skips updating the keyboard forever.

The solution is to avoid setting the shift state without updating the
keyboard.

Bug: 10948582
Change-Id: Ic8670401e378f8284e851281f91a9ad93eac8e90
2013-10-02 16:57:36 +09:00
Alan Viverette 458fb52b98 Merge "Speak auto-corrections for accessibility" 2013-09-30 18:14:13 +00:00
Keisuke Kuroyanagi 1cf4789ba6 Merge "Set header attributes for ExpandableBinaryDictionary." 2013-09-29 05:14:22 +00:00
Keisuke Kuroyanagi 5ed30a7660 Set header attributes for ExpandableBinaryDictionary.
Bug: 6669677

Change-Id: I2462777eaa07600f1c774226adfc4f351882f523
2013-09-28 12:50:09 +09:00
Alan Viverette 67319f92f3 Speak auto-corrections for accessibility
BUG: 8669376
Change-Id: Id71b2c2835daa7a8c9d6c92c57a7e302551c289d
2013-09-27 14:15:53 -07:00
Jean Chalard de814ec0ec Send backspace as an event when TYPE_NULL.
This is not enough to really fix behavior with TYPE_NULL,
but it does make things a bit better.

Bug: 10949594
Change-Id: Ia359f781cdd76a2e2c5a4c9f166025d81b931174
2013-09-27 16:55:12 +09:00
Jean Chalard 8f23c6f78b Merge "Detect cases where rotation messes with initialization" 2013-09-24 05:38:44 +00:00
Jean Chalard f1d8aa46f9 Detect cases where rotation messes with initialization
...and do a best effort to fix it.

Bug: 10323080
Bug: 10252066
Change-Id: Icb3c9fe85005406bdfce0b7bb143ba0a910a0ddb
2013-09-20 22:21:28 +09:00
Jean Chalard be3be424a3 Fix a bug that happens upon a race condition
Bug: 10848621
Change-Id: If5ff7f001e69af005a5ff9ab3e9f630b88a0a858
2013-09-20 18:21:10 +09:00
Yuichiro Hanada a469743e33 Add showSuggestionStripWithTypedWord.
Bug: 10814472
Change-Id: I3a150124baf7a9b7889b033089a859ff9c11e206
2013-09-19 20:52:28 +09:00
Jean Chalard 08bc97f86f Merge "Allow double-space-to-period after a plus char" 2013-09-18 12:40:29 +00:00
Jean Chalard ba99d8cd0b Allow double-space-to-period after a plus char
Bug: 10704936
Change-Id: I30fdaea648605ef7e7fea6c093581ed5c6de03f3
2013-09-18 21:04:25 +09:00
Jean Chalard f71e1db2da Don't resume suggestion on digits.
Bug: 10780016
Change-Id: I94fad06e4c71eddc96bdda1765925f98bed160f3
2013-09-18 11:37:19 +09:00
Jean Chalard b1e98c2f4f [AC8] Restrict the suggestion strip to the correct part
...for phrase gesture.

Bug: 9059617
Change-Id: Ic5c0616f28af4ba45ca72a5721d1926029adc1c5
2013-09-17 18:43:12 +09:00
Keisuke Kuroyanagi e8754aba1c [AC7] Actually auto-commit.
Bug: 9059617
Change-Id: I7e5d89a9037b9181a0a6456c12043b4bfda8fe4b
2013-09-17 16:44:50 +09:00
Jean Chalard 41aaff6cdf Merge "[AC4] Add native methods necessary for auto-commit" 2013-09-13 11:41:55 +00:00
Jean Chalard 24aad5a4d5 [AC4] Add native methods necessary for auto-commit
Bug: 9059617
Change-Id: I7a47b0675446fc4f39628c60d16de9aea90d1b4d
2013-09-13 20:15:15 +09:00
Satoshi Kataoka 898dbe3c29 Fix emoji keyboard insets
Bug: 10541453
Change-Id: I16dd72c8c55cb5d21ad61a3307c0f3c5f16f460c
2013-09-13 14:21:40 +09:00
Jean Chalard ce96d0d12f Avoid recorrection in ex-password fields.
Bug: 10115839
Change-Id: I1f1025c9f28adfb6f5a63d5ba86e359f30c0963e
2013-09-12 21:20:07 +09:00
Jean Chalard 87472f0038 Remove changing a word when added to the dictionary
This code is now useless.
I thought it affected 9902905, but it seems it actually does not.
Still, it's dead code.

Bug: 9902905
Change-Id: Id9c90fbf88f015af47b2368b90d173c481647093
2013-09-12 15:10:10 +09:00
Yuichiro Hanada e193c5255d Revert Ida230ca42 and I6adf7d08f.
Change-Id: I2ddb250d5a473ea955a5171656974de7288a13f7
2013-09-10 19:08:43 +09:00
Yuichiro Hanada acdabb25f4 Add AsyncResultHolder.
Change-Id: Icfa685bcda2f5c74f5649f09098d00b4bd321c5a
2013-09-10 15:48:06 +09:00
Yuichiro Hanada cc2751ba03 Make commitCurrentAutoCorrection asynchronous.
Change-Id: Ida230ca4243347fb3ab9fda7de3a9a18f886cd1c
2013-09-09 14:47:26 +09:00
Yuichiro Hanada b1af47c8fe Add a callback to the arguments of commitCurrentAutoCorrection.
Change-Id: I6adf7d08fdc4382233a63304743207368db8058a
2013-09-05 20:00:40 +09:00
Yuichiro Hanada 648088aa9e Change GET_SUGGESTED_WORDS_TIMEOUT to 200.
Change-Id: Ia5aa0b7af16d7ad45c98d0c5a7dcabba76d19b67
2013-09-03 18:52:53 +09:00
Yuichiro Hanada d6c947ef7b Change GET_SUGGESTED_WORDS_TIMEOUT to 50.
Change-Id: I4d495a782ed1dea1c377837c6579ce5ff74086b5
2013-09-03 17:39:47 +09:00
Yuichiro Hanada 908fc4f1c3 Call getSuggestedWords asynchronously.
Change-Id: Ia8a21b53f4d12b759d9ef5a5181ed04875e4d198
2013-09-03 15:12:49 +09:00
Yuichiro Hanada 8616e4c03d Remove typedWord from the arguments of showSuggestionStrip.
Change-Id: Iddf33227982e65705b49c6a527286d8695878c90
2013-09-02 22:31:43 +09:00
Yuichiro Hanada 9666a22815 Revert "Revert "Add onGetSuggestedWordsCallback.""
This reverts commit 78f707a142.
Change-Id: I5dd4f2d40314002736226886477563f29a25079c
2013-09-02 14:09:53 +09:00
Ken Wakasa acc886eeb4 Merge "Revert "Add onGetSuggestedWordsCallback."" 2013-08-30 14:07:18 +00:00
Ken Wakasa 78f707a142 Revert "Add onGetSuggestedWordsCallback."
This reverts commit 820c290a61.

Change-Id: I5c50731ff9f330c05c5841b8c65f16e28e67422c
2013-08-30 14:06:19 +00:00
Ken Wakasa 56e1b7e4f1 Fix emoji view insets calculation
bug: 10541453
Change-Id: I605e657c94686c4974d162657a5e820798d20e8f
2013-08-30 21:18:36 +09:00
Satoshi Kataoka 5169937dd4 Revert "Revert "Support Emoji keyboard""
Window resizing junkiness is addressed in I605e657c9468

This reverts commit aabc972338.

Change-Id: I0bc0f1ad9a90799e643fe9ec35f5b4bbe94eee0d
2013-08-30 19:46:10 +09:00
Ken Wakasa 9f79cf6de4 Merge "Add onGetSuggestedWordsCallback." 2013-08-30 07:52:57 +00:00
Ken Wakasa 2f95baaaf0 Merge "Revert "Remove key preview backing view"" 2013-08-30 07:51:29 +00:00
Ken Wakasa c160a3932f Revert "Remove key preview backing view"
This reverts commit 2dfcfc5013.

Change-Id: I96c691b2e9c92be456420196cd7361d03ea4f3e9
bug: 10541453
2013-08-30 07:50:37 +00:00
Ken Wakasa aabc972338 Revert "Support Emoji keyboard"
This reverts commit d7791a93b0.

Change-Id: I5ca4c0227f97540e8a22b487b5056dfa3611082b
2013-08-30 07:23:42 +00:00
Yuichiro Hanada 820c290a61 Add onGetSuggestedWordsCallback.
Change-Id: Ib527d31f9c2dd6dc385cb2f767cd90d9d28a1b1b
2013-08-30 16:08:13 +09:00
Tadashi G. Takaoka d7791a93b0 Support Emoji keyboard
Bug: 6370846
Change-Id: I33ce8f952799c89929996a226ac17731a953ec2a
2013-08-29 19:48:34 +09:00
Keisuke Kuroyanagi fe87f5f417 Pass additionalFeaturesOptions for getSuggestions().
This fixes null pointer exceptions that are caused when
getSuggestion() is called from spell checker.

Change-Id: Ifc9e7abb900e1a4646e33c91022effde439673e4
2013-08-28 19:24:28 +09:00
Keisuke Kuroyanagi 6e04d65932 Make DynamicPred...Base extend ExpandableBinaryDictionary.
Bug: 6669677
Change-Id: I06afad35d3eb73510c34d10cd4116f5bcf934f7c
2013-08-26 18:50:22 +09:00
Satoshi Kataoka 366c0c5198 Register personalization dictionary
Bug: 9429906
Change-Id: Ic754dd8da67446dfb1ebf44aa3d5ab0804298ca0
2013-08-22 18:06:59 +09:00
Satoshi Kataoka f739807a3f Merge "Add onDestroy to PersonalizationDictionarySessionRegister" 2013-08-21 10:54:08 +00:00
Satoshi Kataoka 3c8f22880f Add onDestroy to PersonalizationDictionarySessionRegister
Bug: 9429906
Change-Id: Ibf8efd7302da2c27ac59e62b0393f1eec03dc136
2013-08-21 17:24:12 +09:00
Jean Chalard 2448159ad4 Don't start composing on dash.
Bug: 10403176
Change-Id: I9f969ab9b772dc5ba2015c494b4f98a8864277c4
2013-08-21 11:59:21 +09:00
Jean Chalard 2c7a3e0405 Merge "[AC3] Start calling the methods for auto-commit." 2013-08-20 11:05:23 +00:00
Jean Chalard c10d76f28c Merge "[AC2] Reference a dict rather than a string in suggestion infos" 2013-08-20 11:05:12 +00:00
Jean Chalard 3f15c41d88 Merge "[AC1] Add a memory of where to cut the first word." 2013-08-20 11:05:09 +00:00
Jean Chalard 66a870cb53 [AC3] Start calling the methods for auto-commit.
Bug: 9059617
Change-Id: I190a4baf2fa831b70e00e129b5dfaa8c9c32b3a0
2013-08-20 19:26:11 +09:00
Jean Chalard e8ef095670 [AC2] Reference a dict rather than a string in suggestion infos
Bug: 9059617
Change-Id: Ic17bc0fd5d812268fd37d7fd35b4e9ebfb95fa5e
2013-08-20 19:18:09 +09:00
Jean Chalard ef1e363016 [AC1] Add a memory of where to cut the first word.
Bug: 9059617
Change-Id: I931b6d1eb49f9f7dd7d5b18956e35751d1b2b631
2013-08-20 18:43:19 +09:00
Satoshi Kataoka d6ddb96ee8 Add a functionality to boost scores of personalization dictionary
Bug: 9429906
Change-Id: I1518c5cbc7d41188e7dc6a35d226da277ed5913f
2013-08-20 17:50:48 +09:00
Jean Chalard c239a34262 Support languages that don't use spaces.
Thai is an example.

Bug: 10138062
Change-Id: Ib9a8264c77ed42b4256432d7c8a60d08575dcdc7
2013-08-16 21:01:08 +09:00
Tadashi G. Takaoka ed5582ec65 Merge "Thin out audio and haptic feedback while key repeat" 2013-08-14 10:11:43 +00:00
Jean Chalard 5fd8b7ebd5 Merge "Add looksValidForDictionaryInsertion" 2013-08-14 09:41:49 +00:00
Jean Chalard af5fbe70ac Add looksValidForDictionaryInsertion
...and test it.

Also at the same time, add a facility to create a SettingsValues for
test, and some minor performance improvement to surrounding
methods.

Change-Id: I13b629ae14755c244af2a9406a7e9b4a4a16090f
2013-08-14 18:39:28 +09:00
Tadashi G. Takaoka ab16237e69 Thin out audio and haptic feedback while key repeat
Bug: 6522943
Change-Id: Id60f256ab0f8741578eda276116817fa48917325
2013-08-14 18:37:58 +09:00
Jean Chalard fdfc8ad2d0 Merge "Re-evaluate auto-caps earlier." 2013-08-14 09:29:48 +00:00
Jean Chalard 4bc74d19ef Merge "Delete surrogate together." 2013-08-14 09:06:07 +00:00
Jean Chalard b2d954cad6 Delete surrogate together.
Stop deleting them one after the other, it makes no sense. We
can know in advance if we should delete two of them, so let's
use that.

Bug: 6526420
Change-Id: Ifa2263cbde8fedc78bb750b84d4acd3f979774ea
2013-08-14 17:53:33 +09:00
Jean Chalard b7e782d868 Re-evaluate auto-caps earlier.
We have all we know to re-evaluate auto-caps in this case.
We don't need to wait until we get the callback from TextView.

Bug: 10287972
Change-Id: I87e4e26cd193a001f91fe852ffc5a8f728db2449
2013-08-14 17:40:23 +09:00
Jean Chalard 1162c0537d Merge "Remove dead code" 2013-08-14 08:35:46 +00:00
Jean Chalard d81b9d0276 Remove dead code
isComposingWord() is actually defined as size > 0, so this test
can never be false.

Change-Id: If71afae6f0b16bff46178f0fae3244597354fecb
2013-08-14 16:38:37 +09:00
Jean Chalard e18fdf804a Merge "Fix a bug with surrogate pairs" 2013-08-14 07:27:54 +00:00
Jean Chalard a74ae9c451 Fix a bug with surrogate pairs
Bug: 10316781
Change-Id: I528c59c8823cda11975cb01b0ae59f12cfadef3b
2013-08-14 16:00:28 +09:00
Tadashi G. Takaoka d1d607287d Remove audio and haptic feedback while key repeating
Bug: 6522943
Change-Id: Iad1b11172e47bfbae2b4129361a56b9d793f8f62
2013-08-13 17:03:26 +09:00
Satoshi Kataoka 8c4fcb108f Add PersionalizationDictionaryRegister
Bug: 9429906
Change-Id: Ibd4d5cedb371c0b4ee1342a3e6d221c9e34c2402
2013-08-12 14:48:45 +09:00
Ken Wakasa 4a2f6a2216 am 25402fd5: am 724db044: Deallocate gesture trail bitmap when unneeded further
* commit '25402fd5309891884a843528d47f6b4646341a3f':
  Deallocate gesture trail bitmap when unneeded further
2013-08-09 15:53:29 -07:00
Ken Wakasa 724db04495 Deallocate gesture trail bitmap when unneeded further
Follow up to I5bc980c4dc41bc304be3c190934c1f7c55c9d244

bug: 8967766
Change-Id: I7b916daa5269cfde359a77555e8ffadf0e4a8f92
2013-08-09 21:07:40 +09:00
Tadashi G. Takaoka 2dfcfc5013 Remove key preview backing view
This change re-origanizes view hierarchy of IME's input view.

Change-Id: I9d0a07692d0f41de3345d207366393bcd5424f7e
2013-08-09 20:25:42 +09:00
Satoshi Kataoka c05b3b56cc Merge "Add a session for the personalization dictionary" 2013-08-07 08:45:19 +00:00
Satoshi Kataoka 80aa7197b4 Add a session for the personalization dictionary
Bug: 9429906
Bug: 4192129

Change-Id: I361ab380edeee5a8a8b364df3f9f4ab202b79105
2013-08-07 16:44:30 +09:00
Tadashi G. Takaoka cc38bfb5d3 Merge "Add emoji icon and code as a groundwork" 2013-08-06 05:35:14 +00:00
Tadashi G. Takaoka b127d88285 Add emoji icon and code as a groundwork
The emoji switching key icon asset should be updated. The icons in
this change are just borrowed from Hangout.

Bug: 10179862
Bug: 6370846
Change-Id: Icea26d2cf2ac6a6df9beb4c98f646dbe309bdcd9
2013-08-06 14:16:15 +09:00
Tadashi G. Takaoka 52d220e71b Remove unnecessary suggestion strip container
Change-Id: I3710e1fe1574c0f69f7f448619e939fb45e9b8d3
2013-08-06 10:57:47 +09:00
Tadashi G. Takaoka c0a732f032 Remove CODE_RESEARCH
Instead of CODE_RESEARCH, special outputText ".research." is used to
invoke a research feedback dialog.

Change-Id: Ic95c956ab4f2b5f0c3f2205c9bbcdcfb67db5d6e
2013-08-05 19:05:07 +09:00
Tadashi G. Takaoka 28a148681e Small cleanup
Change-Id: I7dce7373b371f1ed5a985815f5d43fb6c6ee1f84
2013-08-05 18:46:35 +09:00
Satoshi Kataoka 60586b57cf Connect the personalization dictionary
Bug: 9429906
Bug: 4192129
Change-Id: I9c9f3ed7699f74339ad92be6dcddb8a52c377545
2013-08-01 16:33:20 +09:00
Ken Wakasa c8814e20b7 Deallocate gesture trail bitmap when unneeded
This frees up 1.7MB on Nexus 4 (occam), and 900KB on occam_svelte while
LatinIME goes to background.
The keyboard bring-up speed feels acceptable on both devices.

bug: 8967766
Change-Id: I5bc980c4dc41bc304be3c190934c1f7c55c9d244
2013-07-31 20:39:32 +09:00
Jean Chalard 2d7e927354 Fix inconsistencies with mSuggest.
This should fix some NPEs, but they are so unlikely that we never
see them.

Bug: 10065412
Change-Id: I2aefea1f52024405cc3fda9106fea41a02aaf4d8
2013-07-31 18:59:18 +09:00
Satoshi Kataoka 87d06afc66 Refactor on the user history dictionary
Bug: 9429906
Bug: 4192129
Change-Id: I1a2bfe96e18119d30a72290aa48746f77a021018
2013-07-31 16:48:55 +09:00
Jean Chalard c5c226c424 Fix inconsistency with mutable settings.
Change-Id: I0550044199273cecb6f5713aa2e43ae16319cd47
2013-07-30 14:30:24 +09:00
Jean Chalard 74bcc911ea Fix a problem where settings were not renewed correctly.
Bug: 10065412
Change-Id: Id05284f45466cd5b2697a695c3d1bdfbf3cc1f24
2013-07-30 13:22:05 +09:00
Ken Wakasa b60e65a0cc Rename a variable for SettingsValues
Change-Id: Icb4155532ea8724791c9194e8dc75ce32b6e8b16
2013-07-29 18:53:23 +09:00
Jean Chalard d9f0c1e020 Merge "Fix an NPE" 2013-07-29 09:46:32 +00:00
Jean Chalard 5408fec63a Fix an NPE
Also make mSuggest private for more security.

Bug: 10045657
Change-Id: I712505e4d2a2606efff5d09ba9b4c656f9e7c7a9
2013-07-29 18:09:48 +09:00
Satoshi Kataoka d45e4b6e5b Add personalization dictionary helper
Bug: 9429906
Bug: 4192129

Change-Id: Ic618b0b09a54ed46b20633bd4c1c570d4ac775af
2013-07-29 12:37:27 +09:00
Satoshi Kataoka ffcbbaf127 Refactor on UserHistoryDictionary
Bug: 9429906
Change-Id: I576a91643bdaf5017cc826ac2e07a74a9a275d60
2013-07-26 13:00:19 +09:00
Tadashi G. Takaoka 5c095e59f6 Cancel all ongoing event when onFinishInputView
Bug: 9334755
Change-Id: If0c2ac49a50f4a529aefeca603569f9413367469
2013-07-25 20:05:39 +09:00
Ken Wakasa a7d2fc6bef Move settings related classes to "settings"
Change-Id: Id170dbfe2dcfc93130b7be4a84615940403ec37f
2013-07-22 16:35:44 +09:00
Ken Wakasa b03447e1af Move a couple classes to the utils package
Change-Id: Ia14a2011d79bad7cd02697b9254705f6e2099442
2013-07-19 10:46:46 +09:00
Tadashi G. Takaoka 6455172a70 Distinguish key press in repeat key
Bug: 9859367
Change-Id: Iad643f9785b193e1918a8363de4fefc3b7558bdf
2013-07-16 19:21:16 +09:00
Tadashi G. Takaoka 4be6198cb7 Reorganize Utils class
Change-Id: I7294d1547def5dcfcae9d1d53b277cb3cc9f2d18
2013-07-05 19:24:40 +09:00
Tadashi G. Takaoka f87e8f7ec1 Handling key repeat by emulating key press and code input
This change also eliminates a reference of
AudioAndHapticFeedbackManager from KeyboardSwitcher and MainKeyboard.

Bug: 6522943
Change-Id: Iac42ec8ff00c66deb76a660ffc07477923a58959
2013-07-02 19:50:34 +09:00
Jean Chalard e5a3b77664 Merge "Move Range out of RichInputConnection and rename it." 2013-07-01 07:20:51 +00:00
Jean Chalard 675bcf191c Move Range out of RichInputConnection and rename it.
Range has grown a bit too big to stay an internal class.

Change-Id: Ic3fbc48a5d10776eedd7559c4d696e5926b88288
2013-07-01 15:41:13 +09:00
Jean Chalard f0af452ce2 Do not re-resume suggestion if it's not needed.
This is much better interface-wise. It eliminates all blinking
of the line in the practice.

Bug: 8874148
Bug: 8864306
Change-Id: I87754e44784327c2e9c8b162d598d145e20668e8
2013-07-01 14:40:12 +09:00
Jean Chalard 2bbd78ab0a Merge "Ignore spans that are not the right size." 2013-06-27 03:06:47 +00:00
Jean Chalard 2f7f6257b6 Ignore spans that are not the right size.
Bug: 8839763
Bug: 8862327
Change-Id: I5d49c86edcbc0fc1b2b147856437cfbadd678377
2013-06-26 23:02:50 +09:00
Jean Chalard 6c0e412137 Merge "Resume suggestion at start input" 2013-06-26 10:18:32 +00:00
Jean Chalard fb72890ac6 Readability improvement
Change-Id: I2f350145f333ba1fa4eb20027b0f41107c2df02c
2013-06-26 16:03:40 +09:00
Jean Chalard 7fcf304c97 Fixing follow-up to I548d899b
I548d899b introduced a new method to fix a sync miss between
the cursor position and the cached cursor position, but did not
take into account that it should also update the cached text
before and after the cursor in this case and that there was
already a method for doing this.

Change-Id: I31bd741893207c822827304e77791b1159774e1a
2013-06-26 15:28:42 +09:00
Jean Chalard 2f69348d51 Resume suggestion at start input
Bug: 9568410
Change-Id: I65468268f8613c863fa7f3a497b64656da0a221c
2013-06-25 19:38:31 +09:00
Ken Wakasa 9419e02fd9 Make UserLogRingCharBuffer an external class
Change-Id: I9d506995337d64ec11c72939a8d739423ee46efa
2013-06-25 18:38:13 +09:00
Jean Chalard 10585620bd Merge "Fix a bug in the cached cursor pos, and simplify selection handling" 2013-06-25 05:00:11 +00:00
Jean Chalard cdf774122d Merge "Fix a small bug" 2013-06-24 10:00:05 +00:00
Ken Wakasa bfaf349c35 Load the native lib eagerly
in the hope of avoiding UnsatisfiedLinkError. This is definitely not a
confident fix as we still don't know the root cause of the issue.

bug: 9325110
Change-Id: I1abf8031b98509f63fce6a2d069d497895ea712c
2013-06-24 18:12:04 +09:00
Ken Wakasa bc1813186d Merge "Move util classes to the latin/utils directory" 2013-06-24 08:49:06 +00:00
Jean Chalard ca52e1ca5a Fix a small bug
SpannableStrings are not the only type of Spanned, they are
only the mutable kind. SpannedString is the immutable one.
Spanned is the correct class to use there.

Bug: 8839763
Bug: 8862327
Change-Id: Ic5e6199a51f22368914f2748ac2d0d1ca6a33f78
2013-06-24 17:39:17 +09:00
Ken Wakasa e28eba5074 Move util classes to the latin/utils directory
Change-Id: I1c5b27c8edf231680edb8d96f63b9d04cfc6a6fa
2013-06-24 17:04:40 +09:00
Jean Chalard e8c4b99e56 Refactor text range to be able to get spans larger than the word
This changes how the Range class stores its data, but not its
functionality. It also improves encapsulation a bit.

Bug: 8839763
Bug: 8862327
Change-Id: I5bd583b3fc96a99b93a2632882d8fd587c03ab76
2013-06-24 12:31:14 +09:00
Jean Chalard 673c727b7a Defer disk-intensive tasks until after the keyboard is shown
Bug: 8689779
Change-Id: Ia78d3540f44ec0028c3246a8e0163e9ecf061ecf
2013-06-21 19:41:45 +09:00
Jean Chalard e5dee0af4a Fix a bug in the cached cursor pos, and simplify selection handling
The documentation for setComposingRegion states explicitly
that it does not move the cursor. This is just a bug.
This does not have any ill effects right now, but it will have
in later changes if not fixed.

As for the selection handling, the specific test that this code
removes used to serve a purpose, but it does not any more because
the code using the value has been much sanitized. Now the variable
can just take the obvious value, and become so self-explanatory
that the comments are unnecessary.

Change-Id: I548d899b38776bd3ab5f5361aab0d89d98f12e73
2013-06-21 18:15:07 +09:00
Kurt Partridge fc98325c61 Log score, kind, and sourceDict for manual suggestion and gesture
b/9422713

Change-Id: I4880fad6a5b10d09ca11b63311f14862bee724e5
2013-06-13 11:03:49 -07:00
Jean Chalard 27d9c6f795 Merge "Cache subtype lists reasonably." 2013-06-13 01:49:41 +00:00
Jean Chalard ff6445ed0e Cache subtype lists reasonably.
This will spare a lot of IPC for Latin IME at the cost of very little
retained memory.
This improves the loading by potentially a lot - between 15 and 30%
when the layout is cached (which should now be the case almost every
time), and half that if it's not. More importantly, it makes the
load time less sensitive to high device load, which is one of the
sore points.

Bug: 8689779
Change-Id: I2e07736f1a92c38eed0e203bc690761a181da8b9
2013-06-12 18:04:52 +09:00
Kurt Partridge efd26bb319 Allow downloadable dictionaries in development builds
Bug: 9305379

Change-Id: Iab32753070a056d3861a45aa898911b7ab67dfb6
2013-06-05 22:14:54 -07:00
Tadashi G. Takaoka 0bfc2bc419 Merge "Add CODE_CAPSLOCK for long press shift key" 2013-06-05 02:19:02 +00:00
Tadashi G. Takaoka 9552badf3c Add CODE_CAPSLOCK for long press shift key
This change utilizes the no panel auto more key feature to implement
long press shift key for shift lock.

Change-Id: I3995d25dc35aea3c67b5aa29299815462eff9cad
2013-06-04 18:20:06 +09:00
Tadashi G. Takaoka 9ff7354d78 Clear previous suggestions when gesture typing starts
Bug: 8651076
Change-Id: Ic65ed3e3696409edea4e35080c11e4d1869a5a7e
2013-06-03 17:59:26 +09:00
Kurt Partridge 743302888b Merge "Uncommit separator LogUnits" 2013-06-03 03:01:23 +00:00
Kurt Partridge 3d20946272 Merge "Uncommit LogUnits when reverting textInput" 2013-06-03 02:58:20 +00:00
Kurt Partridge bdff287a0d Uncommit separator LogUnits
Now that separators have their own LogUnits, they must be uncommitted
from the LogBuffer when backspacing over them.

Bug: 9088919

Change-Id: Ib36cc94939b93abe18850a06bced17caf8aaa5b9
2013-06-02 19:15:57 -07:00
Kurt Partridge 720840851d Uncommit LogUnits when reverting textInput
Bug: 9088919

Change-Id: I17187aa0afc1c3e9d32269c65f66cfb3a08663cb
2013-06-01 23:42:35 -07:00
Kurt Partridge 4165ef031f Remove uncommit on reverting batch input
Currently when the user reverts a batch input, a LogUnit is uncommitted
from the LogBuffer.  It should not be, because the LogUnit containing the
batch input is never committed in the first place (it is only committed
to the LogBuffer when a key is pressed or a new batch input is entered).

Bug: 9088919

Change-Id: I323af453ce082437a663ccae977b21b775a964bc
2013-06-01 11:15:47 -07:00
Jean Chalard 68d9cb62e2 Tell the text view we reset state on finish input
This should be done in onFinishInput rather than onFinishInputView
but for an unknown reason onFinishInput never comes.

Bug: 9113167
Change-Id: Iafb40846a3ed8fad78bfc160d17cd431f81fe891
2013-05-29 18:44:40 +09:00
Satoshi Kataoka 3d97b95b90 Implement KIND_OOV_CORRECTION
Bug: 9127749
Change-Id: I96db15a3138e6b522c4c6ad16cc7faad577d3772
2013-05-27 18:53:43 -07:00
Tadashi G. Takaoka 618407ab7e Use localized toLowerString in AutoCorrection.isValidWord
Bug: 9112465
Change-Id: I63eb4115f393444560e80220d4c90f0f7101b934
2013-05-24 11:47:36 -07:00
Tadashi G. Takaoka 6f9105383a Remove unnecessary methods of KeyboardSwitcher
Change-Id: Idd3647bb1a1d40df8bb89eda715d45427a58d0cd
2013-05-22 10:49:53 -07:00
Jean Chalard 05ea7c5d02 am 167ba345: am 89fe1f50: Add a method to work around apps broken by recorrection
* commit '167ba3459b0ce02b9add12ade9388bd2b1e6eb62':
  Add a method to work around apps broken by recorrection
2013-05-20 21:10:07 -07:00
Jean Chalard 0013f97ddd am 5906b05b: am 7058b02a: Extract a new class for app-specific workarounds.
* commit '5906b05bb50c0a67bd4f03fcfae41db3daefe0bc':
  Extract a new class for app-specific workarounds.
2013-05-20 19:50:46 -07:00
Jean Chalard 89fe1f5088 Add a method to work around apps broken by recorrection
Bug: 8944307
Change-Id: I8986622554f30aaf4f595099c4ab5652b75c972c
2013-05-21 07:53:31 +09:00
Jean Chalard 7058b02a9c Extract a new class for app-specific workarounds.
Bug: 8944307
Change-Id: Iaff9dd03d3d856a6bdaa2b16c4e71e95cd2b6349
2013-05-21 07:53:28 +09:00
Kurt Partridge 500dea6ad4 Fix punctuation logging
Punctuation is currently put into the same LogUnit as the
following word.  This is counter-intuitive and makes
post-processing more complicated.

This change causes punctuation to be put into its own
LogUnit.

A tricky case is the phantom space.  A phantom space is
inserted right before other text, whose MotionEvents have
already been collected and inserted into mCurrentLogBuffer.
Phantom spaces are handled by creating their own LogUnit and
inserting it into the LogBuffer right before
mCurrentLogBuffer is shifted in.

Change-Id: I102d7cd93982ad37ba0abb6c1ac0f66b85b5f95d
2013-05-17 09:47:40 -07:00
Kurt Partridge 17b63ba588 Merge "Remove unnecessary commit/uncommit" 2013-05-15 23:52:43 +00:00
Jean Chalard b1e37e4a47 am f1dcf725: Merge "Don\'t process recorrection or resets when not shown"
* commit 'f1dcf725061b3e61e40540566a5385cf4934f424':
  Don't process recorrection or resets when not shown
2013-05-15 07:58:27 -07:00
Jean Chalard c9aaba1253 Don't process recorrection or resets when not shown
Bug: 8954116
Change-Id: Ica27dbfc570643bb81e6cdf34cc7c796ea080d71
2013-05-15 20:20:20 +09:00
Kurt Partridge 993acbaaa2 Remove unnecessary commit/uncommit
When the user reverts a commit, this causes the committed
word to be changed. The user usually then goes back to edit
that word.  Going back to edit causes an uncommit, so that
the editing actions are added onto the LogUnit containing
the operations used to construct the word.

But currently, reverting also involves its own
commit/uncommit pair, with the caller performing the
uncommit, and the commit happening inside the revert
command.  This may have been necessary in the past, when
revert was called in different situations, but is
unnecessary now.  Furthermore, the guarding conditions are
currently such that the uncommit doesn't always undo the
effects of the commit, corrupting the log output.

Change-Id: I74af41f4f1db2fcabfa496dcc4a2d7bd0af19b3a
2013-05-14 12:20:27 -07:00
Ken Wakasa d6d70e7325 Merge "Revert "Fix isSuggestionsStripVisible when keyboard hidden"" 2013-05-14 11:46:04 +00:00
Ken Wakasa 3efa36f6aa Revert "Fix isSuggestionsStripVisible when keyboard hidden"
This reverts commit cb0d1c4c58

Change-Id: Ie2c8e01c25bd051b6157e8f32ab84392a0c7252a
bug: 8954116
2013-05-14 11:44:22 +00:00
Tadashi G. Takaoka 41016acacf Back to previous keyboard layout by canceling sliding input
Bug: 8915171
Change-Id: Iabdeb7920f67f89246087c3ee06240406ecfbc3d
2013-05-14 20:28:03 +09:00
Jean Chalard cb0d1c4c58 Fix isSuggestionsStripVisible when keyboard hidden
When the keyboard is hidden, the suggestion strip is
never visible.

Bug: 8954116
Change-Id: I9f242d07b49ad60b625a22429bb013251e814905
2013-05-14 15:19:19 +09:00
Jean Chalard 9f9cc03277 Optimizations and safeguards.
- Don't call finishComposingText when useless.
- Add safeguards against calling setComposingRegion when the
  data returned by the editor is inconsistent.
- Cancel pending recorrection messages when new messages arrive.

Bug: 8842941
Bug: 8845001
Change-Id: I939701033cf5c2bbd85871ecf83e329021ddeb91
2013-05-08 18:47:10 +09:00
Jean Chalard e8b9b35471 Unify space-adding on gestures.
This is much simpler, and more correct.

Bug: 8808497
Change-Id: I7a56bf9d6d9fb481f898b7a9f5898a86c11b34c0
2013-05-07 20:38:09 +09:00
Jean Chalard 2dbb5957e3 Pass blockOffensiveWords as a parameter
Bug: 8773353
Change-Id: Ic1019742ce7ff6e4f7fff4d2729f8ab52d841488
2013-05-01 20:47:35 +09:00
Jean Chalard aa3a96f3a1 Don't do recorrection when suggestions are off.
Bug: 8767981
Change-Id: If5c775e488b91ae03ecce2673c99918ac8134928
2013-05-01 10:17:28 +09:00
Jean Chalard 758c74fe82 Merge "Fix an NPE in recorrection" into jb-mr2-dev 2013-04-19 07:03:19 +00:00
Jean Chalard 77226ed006 Merge "Fix an NPE in recapitalize" into jb-mr2-dev 2013-04-19 07:01:10 +00:00
Jean Chalard ae7d1530b4 Fix an NPE in recorrection
Also, theoretically, we don't want to retrieve older suggestions if
there are no results for a recorrection - that would look random.
This bug addresses this too.

Bug: 8657919
Change-Id: I44f36d34a708a968ab71fa0592da57f4c97d4b7f
2013-04-19 15:53:33 +09:00
Jean Chalard 3bdf341ea0 Fix an NPE in recapitalize
Bug: 8657736
Change-Id: I459d1c200826c1c394f8207475ecf60a4f356793
2013-04-19 15:44:20 +09:00
Jean Chalard d91268ad9f Initialize dictionaries at onStartInputView
Bug: 8344402
Change-Id: I41b8440f0d72a66fde3f6feb0db8239c9bb10ea3
2013-04-18 14:48:42 +09:00
Jean Chalard 73ec85b8ad Don't insert automatic spaces when text looks like a URL
This is about as ad-hoc as it gets, but then again, what we want
is probably as ad-hoc as it gets.
All URL boxes I know of double as search bars, and not adding
automatic spaces there sucks (e.g. in Chrome URL bar).
And in other boxes actually you don't want to add a space if
it looks like a URL. QSB isn't even a search box, and it behaves
like this.

So I think this is actually the right answer to the problem.

Bug: 7062925
Change-Id: Ib09472b34644fd5bf2dc84bb97cedeeba28bcd02
2013-04-16 18:03:49 +09:00
Jean Chalard 78d658734d Merge "Don't recapitalize on shift while on symbol layout" 2013-04-16 05:31:43 +00:00
Jean Chalard 1f52364630 Don't recapitalize on shift while on symbol layout
Change-Id: Ibf2cdedf510c296561bb5eeb6ff18c3414d6d6f4
2013-04-16 14:29:02 +09:00
Jean Chalard 8094bf45d7 Match the keyboard state to the recapitalize state.
Bug: 7657025
Change-Id: I2f8fe7fc4596a498322ba5ccabbd0c18a2bc36cf
2013-04-16 14:25:03 +09:00
Jean Chalard e259b9f57d Merge "Clean up RecapitalizeStatus" 2013-04-16 04:57:35 +00:00
Jean Chalard fd15686ae9 Merge "Fix an NPE" 2013-04-16 04:12:18 +00:00
Jean Chalard b794e904a3 Clean up RecapitalizeStatus
Change-Id: Ib4d002f90cd3a0e9ad4c04b883b0c1f05ada3ccf
2013-04-16 13:11:18 +09:00
Jean Chalard a024ac6b20 Merge "Fix an NPE" 2013-04-16 03:43:06 +00:00
Jean Chalard 2b42ad0eaa Fix an NPE
Bug: 8620678
Change-Id: Ia91761f33518a010b2844d34523cadece261c67e
2013-04-16 12:20:10 +09:00
Jean Chalard 7be3ca2ccf Fix an NPE
Bug: 8620758
Change-Id: I39f07939ebb6148a48aae5b915ee807002a5b02d
2013-04-16 12:17:22 +09:00
Jean Chalard 1e5bbe4ce8 Small performance improvement / minor bugfix
The only place where it's used is checked for nullity.
Also, it's possible, also difficult, to match a different
recapitalize with the old code, triggering a bug that
this fixes.

Change-Id: I717d6df489025c75d1caca290a9086c3b39a9306
2013-04-15 21:18:50 +09:00
Jean Chalard 033958330d Merge "Have Latin IME re-capitalize a selected string" 2013-04-15 11:29:28 +00:00
Jean Chalard 2995abe7aa Have Latin IME re-capitalize a selected string
Upon pressing Shift, if there is currently a selected string, have
Latin IME change its capitalization.
This does not yet have the keyboard mode follow the mode - the change
is complicated enough as is.

Bug: 7657025
Change-Id: I54fe8485f44e04efd72c71ac9feee5ce21ba06f2
2013-04-15 20:23:01 +09:00
Jean Chalard 0e9ee4d3bf If there are no suggestion span, recompute suggestions.
Bug: 8084810
Change-Id: I1743c09c43ca6835bb2f607684b037bf17d36335
2013-04-15 19:33:23 +09:00
Jean Chalard d40f3f6bc1 Reject a previously user-refused suggestion.
If the user gestures a word, then hits backspace in
disapproval, and gestures about the same thing again,
make sure that we don't suggest the same thing again.

Bug: 7549311
Change-Id: I793bc4df7c3841fa8f2f4146707c26e873f374c1
2013-04-15 16:36:44 +09:00
Jean Chalard 2cd1136b8e Merge "Remove the dialog to insert words to the dictionary." 2013-04-12 12:33:24 +00:00
Jean Chalard 91bcf5eb5d Merge "Restart suggestions when the cursor moves." 2013-04-12 12:27:50 +00:00
Jean Chalard 02ce3dc2d1 Fix a bug with bad application completions
Bug: 8561056
Change-Id: I91fb0ac76dabfc841bafc0e2c0ea9f63e6f604f9
2013-04-12 20:53:06 +09:00
Jean Chalard 6a114fa700 Restart suggestions when the cursor moves.
This uses the old suggestions. It does not try to recompute
new suggestions if there are no old suggestions yet: this is
coming in a later change.
If there are no suggestions, this shows the word itself
as a suggestion.

Bug: 8084810
Change-Id: I4c2e25df0ff3673be1825f57a0c19a9d23d47a48
2013-04-12 20:49:03 +09:00
Jean Chalard 1a51833828 Remove the dialog to insert words to the dictionary.
Bug: 8562529
Change-Id: Ibd853f0cb995e7fb35f8730eafcef73ead58c869
2013-04-12 15:58:50 +09:00
Jean Chalard fb3e805722 Merge "Fix a bug where a space would not be inserted before a gesture" 2013-04-10 11:19:31 +00:00
Jean Chalard 30b8004b56 Fix a bug where a space would not be inserted before a gesture
Bug: 8583675
Change-Id: I14924fef5663f48481994c02c56be45f9f85be65
2013-04-10 20:10:28 +09:00
Tadashi G. Takaoka ce811f50d2 Use private lock object instead of synchronized method
Change-Id: Ifc62bacbd0583a7d102009681a94bdd9ccff7d47
2013-04-10 18:27:11 +09:00