Commit Graph

6061 Commits (9da4b49ef626f04a58f79b0894712b6b8e658ae6)

Author SHA1 Message Date
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 6fbe83be7a [IL53] Fix a wrong test.
This test was intended only for cases without a selection, and as
a safety net for cases where the app would pretend the cursor
is at N but we can get P chars from the editor where P > N.

When there is a selection, this is wrong. In the practice it works
because these values are not used in this case, but it's still wrong.

The case where P > N is arguable, but actually I see little reason
to trust the getTextBeforeCursor() method more than the
onUpdate selection method. Plus in the practice, I don't think
we are aware of any app with this bug, and it's probably not a
great idea to be too robust about this as it may encourage wrong
values sent to onUpdateSelection.

Change-Id: I42f2065d7aee668074e6b8e40b259da7e88e16e1
2014-01-10 15:21:20 +09:00
Jean Chalard 958e452025 Merge "Fix an NPE." 2014-01-10 05:13:47 +00:00
Jean Chalard e1de87ae69 Fix an NPE.
Bug: 12397228
Change-Id: I7632931f0685fc8f0558946be66025b2bb2b5a3d
2014-01-10 13:46:37 +09:00
Jean Chalard 84a3047e80 Fix build.
Change-Id: I6d0b572190080e58e95f72856ad39e72a49537b7
2014-01-10 12:18:26 +09:00
Tadashi G. Takaoka ee35e69eae Passing SpacingAndPunctuations to StringUtils.looksValidForDictionaryInsertion
This change must be checked in together with Iec437d6df0.

Change-Id: Idf745b8870965f3bdf690de7ff3b22f83f6204bf
2014-01-09 19:05:09 +09:00
Tadashi G. Takaoka 494e2d6c17 Passing SpacingAndPunctuations to RichInputConnection.getNthPreviousWords
Change-Id: I174c50f509ed6998b755e1a712e7f6c0f82f4425
2014-01-09 18:33:25 +09:00
Tadashi G. Takaoka d7660c6f56 Merge "Passing SpacingAndPunctuations to CapsModeUtils.getCapsMode" 2014-01-09 09:31:32 +00:00
Tadashi G. Takaoka c912b2228a Merge "Add American typography boolean to SpacingAndPunctuations" 2014-01-09 09:31:24 +00:00
Tadashi G. Takaoka 0a75cf51af Passing SpacingAndPunctuations to CapsModeUtils.getCapsMode
Change-Id: I0b06e8cc75a403f7061864c5b7f3f6a2cacd60eb
2014-01-09 18:19:17 +09:00
Tadashi G. Takaoka 860c3b8e8c Add American typography boolean to SpacingAndPunctuations
Change-Id: Ic2663eaef38fbe7c5bd1fb3a81771e94c2d4de52
2014-01-09 18:17:29 +09:00
Yohei Yukawa 6c326caa4f A style fix
Just a style fix to follow up the previous commit.

BUG: 11439600
Change-Id: Ib7a4654627a6fc22d86f2097f86f001bd76426e9
2014-01-09 15:54:47 +09:00
Keisuke Kuroyanagi b30f7e4bce Merge "Check whether the word is OOV or not for amanatto update." 2014-01-09 06:24:17 +00:00
Jean Chalard eab4d25210 Merge "Remove some warnings" 2014-01-09 05:45:10 +00:00
Yohei Yukawa c1f2986a72 Merge "Trigger haptic feedback at touch down on the EmojiPalettesView" 2014-01-09 05:19:37 +00:00
Jean Chalard b11339b3ab Remove some warnings
Change-Id: I5cfa0d2fccc139bd6c45c5590a68c3e0c90534b8
2014-01-09 14:04:34 +09:00
Jean Chalard d3e78fc5ce Merge "Fix a bug where changing auto-shift would cancel autorepeat." 2014-01-09 04:53:34 +00:00
Jean Chalard 5cbda70956 Fix a bug where changing auto-shift would cancel autorepeat.
Bug: 12453966
Change-Id: Idd65f732e2de0a7309e08315893c28cca63732c5
2014-01-09 12:57:10 +09:00
Yohei Yukawa df10aeb1da Trigger haptic feedback at touch down on the EmojiPalettesView
EmojiPalettesView triggers the haptic feedback at the timing of touch-up rather than touch-down.
This patch set changes the timing to touch-up so that the UX on the EmojiPalettesView can be consistent with normal keyboard layouts.

This patch set also fixes the missing haptic feedback from facemarks such as ":-)".

Bug: 11439600
Change-Id: I22245946712bd1c36226786d6ff81e3b563f7ef7
2014-01-09 12:27:31 +09:00
Keisuke Kuroyanagi 05113c1847 Check whether the word is OOV or not for amanatto update.
Bug: 11736529
Change-Id: I27973212da7e922b2185dbb4febfb5bb4dfbdcbb
2014-01-08 21:02:35 +09:00
Keisuke Kuroyanagi 5742a415f3 Merge "Make reloadMainDict() private." 2014-01-08 11:03:02 +00:00
Keisuke Kuroyanagi 9f1fe87580 Make reloadMainDict() private.
Bug: 8187060
Change-Id: I852a751d748f39512e62c9cd69748dfbe87b2151
2014-01-08 18:59:43 +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 d4843c25e2 Merge "Revert "Fix a race condition, take 2."" 2014-01-08 09:00:18 +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 ff7103d356 Merge "Fix a race condition, take 2." 2014-01-08 08:35:24 +00:00
Jean Chalard 0a0a3cdad8 Merge "Revert "Revert "Fix a race condition.""" 2014-01-08 08:35:19 +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 ad78058a93 Rename InputPointers.addPointer and ResizableIntArray.add
Change-Id: I5580250c91b29f93ed886b080ce33845b3b67ace
2014-01-08 14:30:21 +09:00
Tadashi G. Takaoka e13cc9d7e5 Fix ResizableIntArrayTests readability
Change-Id: I68862b98f228210f1d76fef4fd7454edbfd8e01d
2014-01-08 14:30:21 +09:00
Tadashi G. Takaoka 9b351f7594 Merge "Fix InputPointersTests" 2014-01-08 05:29:32 +00:00
Tadashi G. Takaoka e7dc5302af Fix InputPointersTests
InputPointers.getTime(int) has a validity check of time values. And
the check is enabled when LatinImeLogger.sDBG is on. Such situation
may occur while unit testing. This change ensure that time values are
monotonic while unit testing.

Change-Id: I9ff2cff2bcd253de0e8206dd3be964fe565170fa
2014-01-08 14:14:42 +09:00
Keisuke Kuroyanagi b3c51630a6 Fix: NPE in LatinIME.loadSettnigs().
Change-Id: Icae6c74401a7a8f4da6015737f09f557640c0cca
2014-01-08 12:43:58 +09:00
Tadashi G. Takaoka 385031557b Merge "Separate spacing and punctuation related settings values" 2014-01-08 02:41:51 +00: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
Keisuke Kuroyanagi c09fd175c3 Prepare using dictionaryFacilitator for amanatto updates.
Bug: 11736529
Change-Id: I0d9d9b1c1108b11064163df7c2089f53e92cd7ad
2014-01-07 18:11:23 +09:00
Keisuke Kuroyanagi 55713e3695 Update personalized dict only when single subtype is used.
Bug: 12424891
Change-Id: If041d1ab45988dbf9b878ae3367fee0fbc8a8988
2014-01-07 18:10:27 +09:00
Keisuke Kuroyanagi 8214a8c2cf Fix possible NPE.
Bug: 11933670
Change-Id: Ib0ce853e691bdadffb73874ea9f188cfbec8bc93
2014-01-06 17:56:49 +09:00
Tadashi G. Takaoka 3f8c6b8c54 Merge "Add description of disabled voice input key option" 2014-01-06 03:25:15 +00:00
Tadashi G. Takaoka 12ba821bfb Add description of disabled voice input key option
Bug: 12377179
Change-Id: I44d35c6fa82883710674ecca6f630d09076472fe
2014-01-06 12:11:55 +09:00
Tadashi G. Takaoka e91559a119 Merge "Update shortcut IME info before checking availability of it" 2014-01-06 03:07:23 +00:00
Tadashi G. Takaoka e9584a1612 Merge "Add DictionaryFacilitatorForSuggest constructor for testing" 2014-01-06 02:58:12 +00:00
Tadashi G. Takaoka b7c531b751 Update shortcut IME info before checking availability of it
Bug: 12377179
Change-Id: I4e2de78dc7e21f3f34eb56c790160b77cfc7584c
2014-01-06 11:54:46 +09:00
Tadashi G. Takaoka 49b5fadae1 Add DictionaryFacilitatorForSuggest constructor for testing
This change must be checked in together with I00b6e79d6b.

Change-Id: Id5f87a8d0286eb44958381fefd428f16896dc0d4
2014-01-06 11:00:51 +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 4970eda286 Fix a failing test
How/when did this happen? How was it not noticed?

Change-Id: I352a8dad65f8c27bf5120d567e96d9a12cfa8496
2013-12-27 20:04:41 +09:00
Jean Chalard d05ea8bd82 Merge "[IL48] Move onEndBatchInputAsyncInternal to InputLogic." 2013-12-27 08:06:48 +00:00
Jean Chalard af26a44102 Merge "[IL47] Inline getSuggestedWordsGestureLocked" 2013-12-27 08:04:51 +00:00
Jean Chalard 51e79fb4b2 Merge "[IL46] Remove a useless message passing." 2013-12-27 07:56:56 +00:00
Jean Chalard 2fc1cc099f Merge "[IL45] Remove lingering messages" 2013-12-27 07:56:44 +00:00
Jean Chalard c654fe57b1 [IL48] Move onEndBatchInputAsyncInternal to InputLogic.
Bug: 8636060
Change-Id: Idfabf7231a80e21786ce1910b5140bb3dddcac7d
2013-12-27 16:50:08 +09:00
Jean Chalard 4a144b9b4d [IL47] Inline getSuggestedWordsGestureLocked
This method is confusing with the *Locked convention, and
the two-step call creates a useless callback object. This is
better inlined both for readability and for performance.

Bug: 8636060
Change-Id: I7c427c3ca4e831388a6d54de6728b32206a45d80
2013-12-27 16:50:08 +09:00
Jean Chalard 71a3e96382 [IL46] Remove a useless message passing.
The only point of this message is to send the processing on another
thread. However, this will be accomplished later.
Here is the exact call graph:
0. onUpdateBatchInput
1. -> MSG_UPDATE_GESTURE_PREVIEW_AND_SUGGESTION_STRIP
2. -> updateBatchInputSync
3. -> getSuggestedWordsGestureLocked
4. -> MSG_GET_SUGGESTED_WORDS
5. -> LatinIME#getSuggestedWords

The point of both step 1. and step 4. is to make sure the processing
is happening on the InputUpdater thread. Thus, it's useless to do
it twice.

Bug: 11326092
Bug: 8636060
Change-Id: Iceebb9e8879a8f15b73c987f5fd3489f27699be4
2013-12-27 16:50:06 +09:00
Jean Chalard 0d21223521 Merge "[IL44] Some factorization" 2013-12-27 06:58:12 +00:00
Jean Chalard 31ff2a4335 [IL45] Remove lingering messages
Bug: 8636060
And possibly bug: 12085864

Change-Id: I867036bc3d8bd255dc8ceebdd30e28b4b3dc4b2d
2013-12-27 15:34:30 +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
Keisuke Kuroyanagi c197b9ed90 Merge "Make setAdditionalDictionaries private." 2013-12-27 06:22:18 +00:00
Keisuke Kuroyanagi 86da47e8d7 Fix possible NPE in FileUtils.
Change-Id: I503f91e266c71e2370a5807d171e2254c334f7cb
2013-12-27 14:58:38 +09:00
Keisuke Kuroyanagi abc3d0eb56 Make setAdditionalDictionaries private.
Bug: 8187060
Change-Id: I17be7b77ff89972d3ca6823b087b7bf35105af56
2013-12-27 14:49:32 +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
Jean Chalard 70433efc41 [IL41] Remove a useless call and trampoline.
No point in calling maybeRetrieveOlderSuggestions now that the
same work is done right here. The callback is also useless now.

Bug: 8636060
Change-Id: Ic14849cb6f6e6293a42cfe068f5c6b18b7677bc0
2013-12-26 21:58:41 +09:00
Keisuke Kuroyanagi be147f1fdc Remove DictionaryFacilitatorForSuggest.getMainDictionary().
Bug: 8187060
Change-Id: Ide087f1e39b24695b610bd2b3c464b7e3cb9cd29
2013-12-26 20:48:19 +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 5c45ff1214 [IL39] Change a test.
I don't see why we would want to remove other suggestions just because
the only suggestion happens to be a dictionary word. That's just
inconsistent.

Bug: 8636060
Change-Id: Ie2d990e5785273d625e6e5518026364165a8f2df
2013-12-26 18:44:17 +09:00
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
Keisuke Kuroyanagi 65e3ae6f15 Merge "Remove useless method call for spell checker." 2013-12-26 06:42:51 +00:00
Keisuke Kuroyanagi 7987afbea4 Remove useless method call for spell checker.
Bug: 8187060
Change-Id: I2f91da12ba2a9e7ce28abd06f314e0e6125d08dc
2013-12-26 14:51:05 +09:00
Tadashi G. Takaoka 3fbcf48591 Merge "Add BatchInputArbiter" 2013-12-26 05:50:07 +00:00
Tadashi G. Takaoka 4a4b6d42a7 Add BatchInputArbiter
Move the logic that determines how to handle gesture typing from
PointerTracker to BatchInputArbiter class.

This change must be checked in together with Ia7db8f4fb7.

Change-Id: I5e9f786de58d8a3cb0407ae562af707710ec37fb
2013-12-26 14:09:57 +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
Jean Chalard 0154609a2e Merge "[IL34] Introduce InputLogicHandler" 2013-12-25 13:21:54 +00:00
Keisuke Kuroyanagi 5c4bd20331 Remove "Boost personalization dictionary" from settings.
Change-Id: Iab05e42e947610f358472cd95d0319d0ab3f0b31
2013-12-25 19:02: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
Tadashi G. Takaoka d99d225f10 Merge "Separate GestureStrokeDrawingPoints from GestureStrokeRecognitionPoints" 2013-12-25 06:58:08 +00:00
Keisuke Kuroyanagi eea7122e5b Move dict operations to Suggest.
Bug: 8187060

Change-Id: Iabe13abcd43b381360f7080b3f4ee0533f246160
2013-12-25 15:26:50 +09:00
Tadashi G. Takaoka c3fe1425a5 Separate GestureStrokeDrawingPoints from GestureStrokeRecognitionPoints
This change must be checked in together with Ibed5330614.

Change-Id: I20ba79fd20e8ea0aa3ac596c011ec5bfea528ace
2013-12-25 15:19:00 +09:00
Jean Chalard 621dcbc31c [IL34] Introduce InputLogicHandler
Bug: 8636060
Change-Id: I5d08ed5d69cdb03bd188e36b7014de03f04fa72f
2013-12-25 14:20:19 +09:00
Keisuke Kuroyanagi 605caf1b5f Fix NPE in SettingsValues.
Change-Id: I96fc381d2b45881aeb342d33207cd7fe82f5077c
2013-12-25 14:00:16 +09:00
Tadashi G. Takaoka a801c8fd9b Merge "Rename gesture related classes" 2013-12-25 04:04:05 +00:00
Tadashi G. Takaoka e2a6253cb5 Rename gesture related classes
Change-Id: I5cb03576bb7221f1864e157857d872880a0a58f8
2013-12-25 11:52:54 +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
Tadashi G. Takaoka afca1ddd23 Comprehensive memory deallocation
Change-Id: I4673543c96eb342c3c977e00d44772a0d719a23e
2013-12-24 18:26:55 +09:00
Tadashi G. Takaoka cf915ddc87 Rename classes related to AbstractDrawingPreview
Change-Id: Ife2e2c08b2b6fbf9ec33cf259f276878816b291c
2013-12-24 18:17:00 +09:00
Tadashi G. Takaoka e82200787c Separate GestureStrokePreviewParams to top level class
Change-Id: I4c6ac12dac9636760128625bb5b7138b7d56f3d1
2013-12-24 17:27:15 +09:00
Tadashi G. Takaoka dc2ce72555 Merge "Make GestureStrokeParams as a top level class" 2013-12-24 06:40:29 +00:00
Tadashi G. Takaoka c845d4c664 Make GestureStrokeParams as a top level class
Change-Id: I540a2d3a6c6ce6ecdcccecd38df6b3c23fcf8d95
2013-12-24 15:29:10 +09:00
Jean Chalard 036930e80d Merge "[IL33] Opportunistically remove some KeyboardSwitcher" 2013-12-24 06:28:54 +00:00