Commit graph

5139 commits

Author SHA1 Message Date
Tadashi G. Takaoka
62b8dddb6d Add gesture input enable settings
Bug: 6845325
Change-Id: I3165465b0b280e32a9288da16abb75baa67288dc
2012-07-20 19:26:36 +09:00
Tadashi G. Takaoka
cc3500b0c8 Disable gesture input detection when more keys keyboard is showing
Bug: 6852441
2012-07-20 18:40:31 +09:00
Tom Ouyang
b8bd45a22a Merge "Fix bug where key previews do not show up." 2012-07-20 02:06:29 -07:00
Tom Ouyang
c022a9f8d4 Fix bug where key previews do not show up.
Bug: 6852705

Change-Id: Ib90107a5dde774b4d6c1e570629ce7f7eaff44bc
2012-07-20 18:02:12 +09:00
Ken Wakasa
afed0567e9 Performance improvements - Avoid using iterators
Change-Id: Iab604aa1ef67acf5d54208a6bc44635632845ae0
2012-07-20 17:51:52 +09:00
Tom Ouyang
528738341d Merge "Add gesture trail feedback." 2012-07-20 01:26:30 -07:00
Tom Ouyang
4daf32b6c0 Add gesture trail feedback.
Change-Id: I32709fac0dec3165678a052aa286e2fb3d90721b
2012-07-20 17:09:23 +09:00
Tadashi G. Takaoka
2f6a90ac31 Merge "Implement ResizableIntArray.fill" 2012-07-20 00:33:07 -07:00
Tadashi G. Takaoka
7abdcf1ed3 Implement ResizableIntArray.fill
Change-Id: I570641bc2f32d016c247db6c065a138d8235ab8c
2012-07-20 16:05:37 +09:00
Tadashi G. Takaoka
732edc1ff1 Merge "Fix NPE where the current subtype is null" 2012-07-19 22:57:39 -07:00
Tadashi G. Takaoka
d6a18cdedb Fix NPE where the current subtype is null
Bug: 6847999
2012-07-20 14:51:41 +09:00
Kurt Partridge
48ded4e3b1 Merge "ResearchLogger: make logging more reliable (esp on startup)" 2012-07-19 21:31:41 -07:00
Tadashi G. Takaoka
19ac19e5fd Merge "Implement ResizableIntArray.setLength and .get" 2012-07-19 20:44:54 -07:00
Ken Wakasa
2fc127698a Make ALPHA_OPAQUE public
Change-Id: I904685be07e23292dd95296617a4b64c366f06f2
2012-07-20 12:17:31 +09:00
Tadashi G. Takaoka
c49c85f835 Implement ResizableIntArray.setLength and .get
This change revises ResizableIntArrayTests as well.
2012-07-20 12:02:38 +09:00
Tom Ouyang
a50ed0c56c Merge "Improve incremental gesture tracking." 2012-07-19 19:14:01 -07:00
Tom Ouyang
0c5f72e2bf Improve incremental gesture tracking.
Eliminates need to recreate batch InputPointers on each gesture move event.
Fixes issue where batch points from previous tapping input get mixed into next gesture.

Change-Id: I9ecac66db88f5a87c6dde2138408906dd3d11139
2012-07-20 10:44:37 +09:00
Ying Wang
721fd573f0 Import translations. DO NOT MERGE
Change-Id: I0122e62e7f9cf50d3987dc80018f2e9e78ed3f87
Auto-generated-cl: translation import
2012-07-19 14:56:45 -07:00
Kurt Partridge
0df487678e ResearchLogger: make logging more reliable (esp on startup)
Bug: 6188932
Change-Id: I692e427ba2e6da7bb15f48208304c4a034392a22
2012-07-19 09:00:21 -07:00
Tadashi G. Takaoka
9370ab9ada Make ScalableIntArray public as ResizableIntArray
Change-Id: Ibbbc117214912ffa192c694bde5b7d55154f40c4
2012-07-19 20:37:53 +09:00
Tadashi G. Takaoka
1e6f39a9f9 Tune the gesture detection logic a bit
Change-Id: Ia8e8c15fdbbd49768d57cafd50325e7e45af6251
2012-07-19 18:53:39 +09:00
Tadashi G. Takaoka
918e420d1b Gesture input should be turned off depending on the configuration
The gesture input will be disabled when
 * It is AOSP build.
 * Accessibility mode is on.
 * The input field is password mode.

Bug: 6844755
Bug: 6844763
Bug: 6845011
Change-Id: I74972cc765d15c08059e0c9014f863ffb2a57c6c
2012-07-19 16:33:09 +09:00
Tadashi G. Takaoka
57f7de0ba6 Add default capacity parameter to InputPointers' constructor
Change-Id: I02f23096f0682d30effe4dfc1ca57881a1e4aedc
2012-07-19 12:06:00 +09:00
Ying Wang
71b772ec58 Import translations. DO NOT MERGE
Change-Id: I4ba29a164c70eb3db5afbb502a81d32088813ba4
Auto-generated-cl: translation import
2012-07-18 17:05:01 -07:00
Tadashi G. Takaoka
9580c467f9 Consolidate GestureTracker into PointerTracker
Change-Id: Ib28fae10493a9142ba4dff6cf57f52c59766b209
2012-07-18 20:11:06 +09:00
Tadashi G. Takaoka
10102f02af Change the batch input methods of KeyboardActionListener
This change also removes the reference of SuggestedWords from
GestureTracker and KeyboardActionListener.

Change-Id: I25ef8756007986abf99a931afd665bbfe6fa387f
2012-07-18 18:53:36 +09:00
Tadashi G. Takaoka
f39fccbd0f Make GestureStroke as top level class
And make PointerTracker object has GestureStroke object.

Change-Id: Ibf5cfd593c4f13468368e01acb847589b0ab12e7
2012-07-18 17:32:17 +09:00
Tadashi G. Takaoka
3ec31f4971 A gesture should not start from the delete key
Change-Id: I5c8c7665454b7f10f944f307431dfffe20cf3134
2012-07-18 14:38:51 +09:00
Ying Wang
e3c0301b31 Import translations. DO NOT MERGE
Change-Id: If1f6cea5414e0033139babda4a8afc459fd656cc
Auto-generated-cl: translation import
2012-07-17 13:29:26 -07:00
Ken Wakasa
8788dffe6f Increase the config_key_hysteresis_distance value for tablet form factor devices
bug: 6745169
Change-Id: I4f0c018748b12d42d5ef587d93df3c5521623b36
2012-07-17 18:36:37 +09:00
Tadashi G. Takaoka
af2c115253 Opening punctuations have a priority in Spanish keyboard
Bug: 6737535
Change-Id: I87442eb978ac68be3d3df99eed8a92877a6f4ab0
2012-07-17 16:14:36 +09:00
Ying Wang
c21aca9006 Import translations. DO NOT MERGE
Change-Id: I2fcbc5265b155035b804cedc019646a239a4d0ad
Auto-generated-cl: translation import
2012-07-16 13:34:58 -07:00
Kurt Partridge
5e53542489 Merge "delete old ResearchLog files" 2012-07-16 09:41:10 -07:00
Kurt Partridge
d07fabcec1 Merge "researchLog records versionCode, versionName" 2012-07-16 09:41:01 -07:00
Kurt Partridge
81dae8d015 delete old ResearchLog files
cleans out the local directory of files that may have persisted
accidentally because of system crashes, etc.  default lifetime is
curently 1 day.

Bug: 6188932
Change-Id: I4b51169d6dd0eddb6bf8b661165f88e63782ce7d
2012-07-13 20:25:38 -07:00
Kurt Partridge
73c5dbd9d2 researchLog records versionCode, versionName
Bug: 6188932
Change-Id: I3d8502a5397035be5287ea720599e3fda4c669d6
2012-07-13 20:21:18 -07:00
Ying Wang
63b12362d6 Import translations. DO NOT MERGE
Change-Id: Ibb5bd0c2753e52dc3526ce859b0c108e189a605d
Auto-generated-cl: translation import
2012-07-13 13:52:11 -07:00
Tom Ouyang
eea34598bf Merging minimal gesture input
Change-Id: Iee6ae48bb6309c2867b5d2e344fe7d86dfabd654
2012-07-13 19:32:18 +09:00
Jean Chalard
e9808694fe Fix a bug where the word composer is not correctly reset
...upon commit

Change-Id: I1fea87cb4c133a0884329eb9b61bf3053c36cd1b
2012-07-13 13:31:27 +09:00
Tadashi G. Takaoka
7247bff6d6 Fix InputPointers.append
Change-Id: I6995f9b2ed00b9f948e1299e576a5e24725d58f8
2012-07-13 11:46:03 +09:00
Ying Wang
fa2287f86c Import translations. DO NOT MERGE
Change-Id: Ie03bf1e866e2b93cade6f02ce3ce14fa4864097d
Auto-generated-cl: translation import
2012-07-12 13:53:24 -07:00
Jean Chalard
c7387a4fd0 Add values for suggestion types (A120)
Also, use it in getBigrams.

Change-Id: Ia0be9b57d1b7effcd8a936e01e957d1195b39c68
2012-07-12 19:21:44 +09:00
Jean Chalard
6931df9c17 Pass an array to output suggestion types (A119a)
This needs the matching A119b change to not break the build.
The array is passed, but not used yet.

Bug: 6166228
Change-Id: Ia91d658461d989ee8c94e9b31bb06f4a36f4c5b6
2012-07-12 19:21:42 +09:00
Jean Chalard
2c5cf744e5 Increase encapsulation (A118)
showSuggestions is only ever called by updateSuggestionsOrPredictions.
It only feels natural that, when called with a 0-sized or null
suggestion list, it clears the suggestions.

Change-Id: I5b52bc9151afca1bb6c6f0a7f81e3255add92177
2012-07-12 15:58:16 +09:00
Jean Chalard
1343d27de3 Readability improvement (A117)
Change-Id: I6f8bb05a23edb40a079da60b7136170ec9043282
2012-07-12 15:58:16 +09:00
Jean Chalard
24a63b5537 Simplification (A116)
Change-Id: I97cf92a7b0dabc251dd241b24978ea00d1e5f047
2012-07-12 15:58:16 +09:00
Jean Chalard
f5b55cb70c Compute variables closer to where they are used (A115)
This improves locality, it's better for readability/performance

Change-Id: Ibb1efaf86e362dd2c9398722d0da2144df96b333
2012-07-12 15:58:09 +09:00
Jean Chalard
2549b4978e Cleanup (A114)
Change-Id: I7e24e0aeae7c004cae310ae9f46cf90dac2d4d14
2012-07-12 15:09:57 +09:00
Jean Chalard
02f1c1534c Cleanup (A113)
If not composing a word, then consideredWord is always the empty
string.
Hence, it's never whitelisted, but it's also always "NotAWord",
so isWhitelistedOrNotAWord returns always true, so
allowsToBeAutoCorrected is always true. Which means that
isPrediction implies allowsToBeAutoCorrected == true.
Thus, !isPrediction && !allowsToBeAutoCorrected is strictly
equivalent to !allowsToBeAutocorrected.

Change-Id: I4ad7a7c3447851c539646d97cf55ff065e6ee115
2012-07-12 15:09:48 +09:00
Jean Chalard
ae13061245 Simplification (A112)
If we are not composing a word, that isFirstCharCapitalized
and isAllUpperCase are guaranteed to return false.

Change-Id: Ic4a0be9574acf4653c729a9594f963f5bcf0c757
2012-07-12 14:30:33 +09:00
Jean Chalard
d8afa2fbe1 Remove the ultimate code duplication (A111)
Change-Id: I7c76613df8f148feb02765f187db3ca6dc577977
2012-07-12 14:30:33 +09:00
Jean Chalard
3b57631b60 Resolve a TODO: bury some implementation detail in native (A110)
The fact that prediction does not accept a null argument is an
implementation detail, it should not be visible to Java code.

Change-Id: I3a156b323b6db9353de898d33f3f7c81751cecb1
2012-07-12 14:30:30 +09:00
Jean Chalard
18d76afa91 Remove an unused method (A109)
Change-Id: Ib785b7e8c554d030395e2c0ca92edb44eb2b245f
2012-07-12 14:30:03 +09:00
Jean Chalard
251f302985 Stop using a redundant method (A108)
Change-Id: Iffc0bae0a273419e7c50d69526c0c8e402c6461c
2012-07-12 14:30:00 +09:00
Jean Chalard
6a5d17cd2f Remove a useless parameter (A106)
Change-Id: Ic0ecea22212fd1a098a3a168da460374e446f4a3
2012-07-12 11:28:16 +09:00
Jean Chalard
b7d7c5a369 Make a constant really constant (A104)
Change-Id: Ied1f9f96a574b1e6a8ee0a71bfb1604d9c962e1c
2012-07-12 11:16:30 +09:00
Ying Wang
8f7f04fead Import translations. DO NOT MERGE
Change-Id: I056d8d8d630a2b3576462f7900bc39a7f19f5aa0
Auto-generated-cl: translation import
2012-07-11 15:33:02 -07:00
Jean Chalard
e4e7e5fc82 Cleanup (A103)
Change-Id: Ib5ebddfdb87ef71a2f8d859fb45d3ac78040e97a
2012-07-11 16:14:58 +09:00
Tadashi Takaoka
5e21ea1a35 Revert "Workaround to avoid a bug in the batch input bigram dictionary lookup"
This reverts commit 1250cdeab2
2012-07-11 00:07:08 -07:00
Tadashi G. Takaoka
1250cdeab2 Workaround to avoid a bug in the batch input bigram dictionary lookup
Change-Id: I8a5641c88c45918d6bed81a0b03efdcff0b380c5
2012-07-11 15:38:13 +09:00
Jean Chalard
9c09fd02eb Inline a method to be able to factorize code (A102)
Change-Id: I121071f80c8af3c1053968dc76aaeca3352ca9a8
2012-07-11 14:57:51 +09:00
Jean Chalard
d6c610400e Inline a wrapper method (A101)
Change-Id: I6ce856ff49a8f8c696851b2487590704010fc758
2012-07-11 14:57:51 +09:00
Tadashi G. Takaoka
eb1443883f Support batch input
Change-Id: Ibe63212fe71cdebb5b897bc5018ae75b2a87555a
2012-07-11 14:53:20 +09:00
Jean Chalard
21e5759e8e Merge "Small readability improvement (A100)" 2012-07-10 22:49:25 -07:00
Jean Chalard
27207eaa04 Merge "Pull up some common code again (A99)" 2012-07-10 22:49:06 -07:00
Jean Chalard
722b00275d Merge "Pull up some identical code (A98)" 2012-07-10 22:48:58 -07:00
Jean Chalard
8b166465b0 Merge "Inline a method to avoid confusion (A97)" 2012-07-10 22:48:52 -07:00
Jean Chalard
fd9b485111 Merge "Remove parameters for easier inlining (A96)" 2012-07-10 22:48:44 -07:00
Jean Chalard
0b329fd0d1 Merge "Pull up some more common code (A95)" 2012-07-10 22:48:38 -07:00
Jean Chalard
a5acd68caa Merge "Pull up common code in the caller (A94)" 2012-07-10 22:48:33 -07:00
Kurt Partridge
0d54692ce4 Merge "intentional logging" 2012-07-10 21:20:47 -07:00
Jean Chalard
82d5ed6fcd Small readability improvement (A100)
Change-Id: I6340748654a95d203ed43ceb9a7e6468b5b8ab1c
2012-07-11 11:19:50 +09:00
Jean Chalard
860a9f85ff Pull up some common code again (A99)
Change-Id: I9e9f5664bb12bb25d74c8a076a6ee1024c708145
2012-07-11 11:19:50 +09:00
Jean Chalard
8eaeb60e7f Pull up some identical code (A98)
Change-Id: I6c265956394cf49e74b0256dfa5af06fe6b30467
2012-07-11 11:19:33 +09:00
Jean Chalard
e77f2996ea Inline a method to avoid confusion (A97)
Change-Id: I3c3ffcd3d40493f4bfa0f6596f923b3430e605aa
2012-07-11 11:19:18 +09:00
Jean Chalard
cfae32c610 Remove parameters for easier inlining (A96)
Change-Id: Ied2e291393609300173681e26e82b7dd36b41bd0
2012-07-11 11:16:22 +09:00
Jean Chalard
ea98e026f1 Pull up some more common code (A95)
Change-Id: I3ac7ee823471a6d1da8031e064bce38b0e5a8f5c
2012-07-11 11:15:18 +09:00
Jean Chalard
b4b93dbf3e Pull up common code in the caller (A94)
Change-Id: I84b97886280eca75d5f2b7546f20f8b1bced55bc
2012-07-11 11:13:56 +09:00
Kurt Partridge
223d671ffc intentional logging
- separate ResearchLog from ResearchLogger
- fix abort menu to explicitly indicate re-enabling of logging
- auto flush entries every 5s
- conform to new suggestedWords class

multi-project change with I9fe1f8fe59d5891daa4ca84af157f36fb1bb17dc

Bug: 6188932

Change-Id: I7e99390f934481c6ed9cea2b259944583edda5bb
2012-07-10 18:44:18 -07:00
Ying Wang
60baf00b3a Import translations. DO NOT MERGE
Change-Id: I0376c38451de66ff8c40b488ed3a8599326755ad
Auto-generated-cl: translation import
2012-07-10 14:20:17 -07:00
Jean Chalard
ff730dbd14 Merge "Remove useless member variables (A93)" 2012-07-10 04:33:32 -07:00
Tadashi G. Takaoka
20823b4623 Merge "Register the key when the finger slides off it in multitouch" 2012-07-10 04:19:40 -07:00
Jean Chalard
6f233f7ba1 Remove useless member variables (A93)
Change-Id: Iff0a0e8835f4d630b51a15c0d91881437094e785
2012-07-10 20:18:10 +09:00
Tadashi G. Takaoka
5e06b8534f Register the key when the finger slides off it in multitouch
Moved from jb-dev branch (I807fd6f4).

Bug: 6722867
Change-Id: I9764ac72f726396caaac819675d440372c882981
2012-07-10 20:14:29 +09:00
Jean Chalard
2ae75ed56b Start converging two identical methods (A92)
Change-Id: I3c85a80610fde664a328f5606d0724f00d445ebe
2012-07-10 20:13:54 +09:00
Tadashi G. Takaoka
d82dcdc924 Add batch input dictionary lookup
Change-Id: I4da3c976838e8eb56c9ec80aafaaf54d759b7981
2012-07-10 20:01:28 +09:00
Jean Chalard
5e573a1f0a Remove a useless parameter (A91A)
Change-Id: I1d1758048649ef337875a5141d825569af7ad38c
2012-07-10 19:31:36 +09:00
Jean Chalard
f5943153ad Cleanup old methods (A90)
Change-Id: I5435cef8ac6be523934ffa394952cb120c8e89d6
2012-07-10 19:30:46 +09:00
Jean Chalard
b30d2185f2 Implement the common Dictionary interface (A89)
This will de-duplicate a lot of existing code.

Change-Id: Idaffb2fde23b9741f057bcb2ecb3dde9d12ea5c5
2012-07-10 19:30:42 +09:00
Jean Chalard
a69f12a246 Reduce method visibility (A88)
Change-Id: I29d6afbcba0998558c9b19287a460d9f0e410994
2012-07-10 19:19:47 +09:00
Jean Chalard
0f57bdc0e5 Factorize code (A87)
Why was this copy-pasted :(

Change-Id: I6a537c56425ad039d7301a5fe1e0485784f07914
2012-07-10 19:19:43 +09:00
Jean Chalard
4e42e378fa Move stuff around for readability (A86)
Change-Id: I5f4a18e43f3012acf96978d625325bf7c69c9c80
2012-07-10 18:57:57 +09:00
Jean Chalard
82009901ea Add a consolidated method to the Dictionary interface (A85)
Change-Id: I5d79021e69cc738e3013e31764ab0a59e15decdf
2012-07-10 18:57:12 +09:00
Jean Chalard
2a37fb9d30 Refresh the cached single quotes count on commit
Change-Id: I9df5cf95c14da2e11ac709ca5e32dc7db3b02c37
2012-07-10 18:43:42 +09:00
Jean Chalard
a9632d8173 Merge "Enhance behavior consistency (A84)" 2012-07-10 02:31:40 -07:00
Jean Chalard
184c552917 Merge "Refactoring for whitelist (A83)" 2012-07-10 02:24:58 -07:00
Jean Chalard
b53e96813c Merge "Refactoring (A82)" 2012-07-10 02:24:47 -07:00
Jean Chalard
50d1b7902f Merge "Fix a bug with suggestion behavior (A81)" 2012-07-10 02:24:36 -07:00
Jean Chalard
a4d346c37a Merge "Cleanup visibility in LatinIME (A80)" 2012-07-10 02:21:46 -07:00
Jean Chalard
c677b0071d Enhance behavior consistency (A84)
Use the word the same way for suggestion and prediction. It makes
little logical sense that the trailing single quotes be removed
for suggestion lookup but not for prediction lookup.

Change-Id: I0de4b5f7c5b4c1b4ba1817ff9653d7c03967146d
2012-07-10 18:05:20 +09:00
Jean Chalard
1c6693a219 Refactoring for whitelist (A83)
Avoid special casing the whitelist dictionary by having it implement
the interface it pretends it implements

Change-Id: I8b873cb0f3fe13cefd32c8cb756a25c8ae16a2b4
2012-07-10 18:05:20 +09:00
Jean Chalard
fb6eeeb35a Refactoring (A82)
The user history dictionary should be the one knowing it does not suggest words
beyond 2 characters, not Suggest.

Change-Id: Ie85ec6116eb495e0c7f51108e4620c5ae536f4bf
2012-07-10 18:05:20 +09:00
Jean Chalard
966efe4889 Fix a bug with suggestion behavior (A81)
Bug: 6788235
Change-Id: I5a4212872e0fd3f9e80168fd3abd5c2b3bc4110f
2012-07-10 18:05:19 +09:00
Jean Chalard
a5bb353de9 Cleanup visibility in LatinIME (A80)
Many methods were public but could have been private: change them
to private. Also, add a comment above public methods that don't
come from the IMF to make it clearer why they are necessary.

Change-Id: I574154b015d09c0f8542b81763f497691afdc3c1
2012-07-10 18:05:15 +09:00
Satoshi Kataoka
7fcad7b9b6 Separate ICS-dependent code from the spell checker service
Bug: 6789576
Change-Id: Ia768258f6fa121c7a7757093eb8a20e665580865
2012-07-10 17:45:26 +09:00
Jean Chalard
b98414f8fd Merge "Remove useless code (A79)" 2012-07-10 00:47:56 -07:00
Jean Chalard
29540b25f0 Merge "Simplification (A78)" 2012-07-10 00:47:10 -07:00
Jean Chalard
728c0cb251 Remove useless code (A79)
We postUpdateSuggestionStrip right away anyway - this only
makes the suggestion strip blink

Change-Id: I2ebd933e9a4c804ef1e8c62ccdaf4953a98a792e
2012-07-10 16:41:49 +09:00
Jean Chalard
09fdd30e52 Simplification (A78)
Change-Id: I622503af858ef419e94a17f182253cb03da00462
2012-07-10 16:41:47 +09:00
Satoshi Kataoka
74620f449e Merge "Create AndroidSpellCheckerSessionFactory" 2012-07-10 00:26:00 -07:00
Satoshi Kataoka
37b19ffe6c Create AndroidSpellCheckerSessionFactory
Bug: 6789576
Change-Id: I6de1e1aa64cf14f38ecb250579418bc518f0d838
2012-07-10 16:16:53 +09:00
Satoshi Kataoka
759778a751 Merge "Separate SpellCheckerSession from SpellCheckerService" 2012-07-09 23:42:15 -07:00
Satoshi Kataoka
84ed096641 Separate SpellCheckerSession from SpellCheckerService
Bug: 6789576
Change-Id: I7c55d36afad7ef6046353b3c9e849a54a6dc83ae
2012-07-10 15:34:40 +09:00
Jean Chalard
fed702a0ad Merge "Move a test (A77)" 2012-07-09 23:01:33 -07:00
Jean Chalard
75e605f7ca Merge "Pull up common code in the consolidated method (A76)" 2012-07-09 22:41:33 -07:00
Jean Chalard
c466cd3f99 Move a test (A77)
Change-Id: I417bd5f1318696aaa39fee18f3e750ea5c231f6b
2012-07-10 14:24:33 +09:00
Jean Chalard
32f5384fc9 Pull up common code in the consolidated method (A76)
Change-Id: I3ebecec37b49e139c243cf9da8bfe491e7ddada1
2012-07-10 14:22:12 +09:00
Ken Wakasa
1e8fb312bf Fix app name case
Change-Id: Id568adac98135cffceb111000e80f77928c045ea
2012-07-10 14:10:30 +09:00
Tadashi G. Takaoka
80973dc76f Merge "A little optimization of InputPointers.copy" 2012-07-09 21:09:13 -07:00
Tadashi G. Takaoka
2ad6d12a30 A little optimization of InputPointers.copy
Change-Id: Id83b34e076ef91e06d7c1dd2b3ee7bb64d01b8cb
2012-07-10 13:05:43 +09:00
Jean Chalard
24e8a06f98 am 949d2ae5: am 4bcf70c9: Fix a bad interaction with mmap
* commit '949d2ae5788977c5e87e35e1bd1770f54ac88f5b':
  Fix a bad interaction with mmap
2012-07-09 20:24:01 -07:00
Ying Wang
59205dd270 Import translations. DO NOT MERGE
Change-Id: I48fd690e9368a6637c7fa93c15b6ecadcbe47ce8
Auto-generated-cl: translation import
2012-07-09 13:56:48 -07:00
Satoshi Kataoka
14ec214132 Merge "Separate string resource of IME name" 2012-07-09 02:26:35 -07:00
Satoshi Kataoka
69aef47e23 Separate string resource of IME name
Change-Id: Ib4afefac0e87c814c9e54cb65e78ee584c3f954c
2012-07-09 17:48:39 +09:00
Tadashi G. Takaoka
7389c601e3 Merge "Add InputPointers.append() method" 2012-07-09 01:39:38 -07:00
Tadashi G. Takaoka
1087c53f5a Add InputPointers.append() method
Change-Id: Id2b0e242f7e9ce0ca888067857f8b64c02fde84e
2012-07-09 17:33:10 +09:00
Jean Chalard
e4498929b0 Simple refactoring (A75)
Change-Id: Id19efc5d279616da52667fa70326b86aba70d4a0
2012-07-09 15:06:16 +09:00
Jean Chalard
d579f1aefc Consolidate methods that do the same thing (A74)
Change-Id: I6e7c3aba2b40ecefa483c9680978bc806368e96e
2012-07-09 15:06:16 +09:00
Jean Chalard
347a80f793 Tiny refactoring (A73)
If !mWordComposer.isComposingWord(), then mWordComposer.getTypedWord()
will always return an empty string.

Change-Id: Ife66d0abc44c743cbc30d31724e833cda168fd5c
2012-07-09 15:06:16 +09:00
Jean Chalard
7a422a0142 Cleanup again (A72)
Change-Id: Id3765bf9826cc2c7ca70158cda53c75dc58f51c6
2012-07-09 15:06:16 +09:00
Jean Chalard
37eaa24b5a Simplification (A71)
Change-Id: I7a91d84291bea581ecc8ec5b29b9a87ccec76e7d
2012-07-09 15:06:16 +09:00
Jean Chalard
dc1b84d96c Defer testing composition to a later time (A70)
This is not exactly the same logically speaking, because it's
theoretically possible that the composing state changed in between
the message enqueueing and it's retrieval. However in the practice,
if the composing state changed the message *must* have been
cancelled and resent, else the behavior breaks. So this actually
is more robust, and removes some obscure requirements on the
calling code.

In the practice, it should also make the cancelUpdateSuggestionStrip
message useless, although this change does not yet remove it.

Change-Id: I75141920ce64e38e2f92e9c02b6c979936eee9a9
2012-07-09 15:06:16 +09:00
Jean Chalard
a6757f400a Code simplification (A69)
Change-Id: I2a77e437795fbbea47fd2e604ee6c26f8d0e458a
2012-07-09 15:06:16 +09:00
Jean Chalard
8f9c9377fc Consolidate two methods (A68)
Change-Id: I4b91414190b3786065ebd962a76299b605e5797e
2012-07-09 15:06:15 +09:00
Jean Chalard
146bd2e456 Pass the value we really want to pass to update functions (A67)
Change-Id: Ica9b875d119dea2f8dc237fd63e5b4eaa5e1c400
2012-07-09 15:06:15 +09:00
Jean Chalard
60dbe0be43 Preparative change to pass a boolean with known value (A66)
Change-Id: Iff03fe7c4a8eec17c00a2fe99197e0cf21a0630a
2012-07-09 15:06:15 +09:00
Jean Chalard
853f4221ab Merge "Remove useless processing (A65)" 2012-07-08 23:05:11 -07:00
Tadashi G. Takaoka
9c0ddb5988 Merge "Remove unused WordComposer.init method" 2012-07-08 18:33:56 -07:00
Ken Wakasa
1a9ef01187 Add a copyright header to AndroidManifest.xml
Change-Id: I588d7acc6f64360404440ad8dc2c00296046b09d
2012-07-06 20:29:08 +09:00
Tadashi G. Takaoka
6b4ce58fc6 Remove unused WordComposer.init method
Change-Id: I46c6a6e1c1536599cb909bf81297001b238f2ec8
2012-07-06 20:12:14 +09:00
Tadashi G. Takaoka
36311cacd6 Merge "Extend onTextInput to be able to inject suggestions" 2012-07-06 03:40:03 -07:00
Tadashi G. Takaoka
4be03befe3 Extend onTextInput to be able to inject suggestions
Change-Id: I1061da0edfdb05c64c5711717d4ef9fa9681e568
2012-07-06 19:36:11 +09:00
Jean Chalard
a3dee0d062 Merge "Fix a bug where spaces would be forgotten" 2012-07-06 02:09:28 -07:00
Jean Chalard
4fde56b818 Fix a bug where spaces would be forgotten
Bug: 6785706
Change-Id: Ic7bf242ef058d116b986d47ad197b6d2802e2342
2012-07-06 17:51:10 +09:00
Jean Chalard
8e36e5102e Remove useless processing (A65)
We just resetted the composing state - updating suggestions
is sure to yield no results. We may as well not call
updateSuggestions at all.
We should however still cancel any lingering timer from a
previous input field, to avoid this useless processing.

Change-Id: Ic1a19d577903d792bb797c837cc517ea8d430e75
2012-07-06 16:28:42 +09:00
Jean Chalard
449be371ae Refinement (A64)
Change-Id: I7c16e28ffce4fe0965b756bf2b00ee63b77dd039
2012-07-06 16:28:42 +09:00
Jean Chalard
43193ad60f Remove useless code (A63)
If the separator is not a space, then we will always call
setPunctuationSuggestions and reset the suggestion strip anyway.
If the separator is a space, then the cursor has a space on
the left, which means isCursorTouchingWord depends only on
whether it touches a word on the right. If we were displaying
the "add to dictionary hint", it means a suggestion was just
chosen, so it had to be displayed, and that requires a composing
word and no non-separator at the right of the cursor.

In the end, if we go through this postUpdateSuggestions call,
we are sure we will reset the suggestions later in this method,
either by calling postUpdateBigramPredictions, or
setPunctuationSuggestions.

Change-Id: I95d5f77a5d0ac6d1a6ced8d67d6ac8f650db4a32
2012-07-06 16:28:42 +09:00
Jean Chalard
8ba33c1a49 Simplification (A62)
Change-Id: I606270a0387787445b7cd6b94e4830bfc144b49e
2012-07-06 16:27:55 +09:00
Jean Chalard
66a2e96fb4 Remove useless code (A61)
Just after this, clear() will be called, removing the suggestion
strip from the screen. It will later be displayed again through
onStartInputView, which will update its content.

Change-Id: I15c23ad2adecab76b0791d7fc222d15b6533f3bd
2012-07-06 13:07:48 +09:00
Jean Chalard
b1dc8ad5f2 Simplification (A60)
Change-Id: I99e912d3edfc7dd3f17ee835331d5fcba976750c
2012-07-06 13:07:48 +09:00
Jean Chalard
663dbfd1cc Simplification & UI improvement (A59)
The responsivity is better like this. This does not seem to
feel slow as the previous comment seemed to indicate.

Also remove a stale comment.

Change-Id: I4e7bf9fe28716e112db182e44b3fa88ee4526bb4
2012-07-06 13:07:48 +09:00
Jean Chalard
746e014eb5 Show predictions in the right cases (A58)
After reverting an auto-correct we always have a separator after
the previously inserted word, and the cursor is never touching
a word. Showing predictions is the right thing to do, while
calling postUpdateSuggestions will invariably yield an invariably
blank suggestion strip, which is not very helpful.

Likewise, after we pick a suggestion, we should be showing the
predictions unless showing the addToDictionary hint. There was
a bug here in the corner case that the word would be a candidate
for user dictionary, but the user dictionary provider is not
available: in this case we should be showing predictions, but
we were showing an unhelpful empty suggestion bar.

Change-Id: I287bb5eb4af762bd5a433e85e185fab6d203e91a
2012-07-06 13:07:48 +09:00
Jean Chalard
0e9e7e337d Cleanup (A57)
We stopped cancelling manual picks a few weeks ago. This code
is dead.

Change-Id: I4032fcc3c95e9379f1839fe860a1b8a9bd7d0bc7
2012-07-06 13:07:30 +09:00
Jean Chalard
29eeef75ec Merge "Fix a bug where the caps mode would not be changed" 2012-07-05 19:11:28 -07:00
Jean Chalard
f254e3fec7 Fix a bug where the caps mode would not be changed
Bug: 6766059
Change-Id: I378f9d35c4904c4f373260bda5863235d833eb31
2012-07-06 11:08:20 +09:00
Jean Chalard
d81e7d24d3 Simplification (A56)
If suggestion and prediction messages both happen to be in
the queue, the latest one will win (update the suggestion strip
later than the other, overwriting any previous suggestions).
So when we enqueue either one, it is always safe to cancel
all messages of both types.

Change-Id: Iad9dd06d08c49f60cac16b88edcc9531a18ec02e
2012-07-05 18:19:51 +09:00
Jean Chalard
414f14436e Remove an unused method (A55)
Change-Id: I9974b88923b85cd6bec74f7607067c660f36f040
2012-07-05 18:10:37 +09:00
Jean Chalard
c84f178cd9 Merge "Remove a useless method, rename another. (A54)" 2012-07-05 02:05:50 -07:00
Tadashi G. Takaoka
92d2f7e03b Merge "Initialize SubtypeLocale from Settings" 2012-07-05 02:04:35 -07:00
Jean Chalard
792e7ddc24 Merge "Remove a redundant test (A53)" 2012-07-05 01:57:04 -07:00
Jean Chalard
9636735c0a Merge "Small simplification (A52)" 2012-07-05 01:56:55 -07:00
Jean Chalard
21524c755c Merge "Put some more code in common (A51)" 2012-07-05 01:50:44 -07:00
Jean Chalard
71d7fc91b7 Merge "Pull up a common variable into the wrapping method (A50)" 2012-07-05 01:47:59 -07:00
Jean Chalard
ac3ad6ef9f Merge "Factorize some common code (A49)" 2012-07-05 01:45:08 -07:00
Tadashi G. Takaoka
d6ac0443f0 Initialize SubtypeLocale from Settings
Bug: 6781106
Change-Id: I22f04af4fabf93346ab6f72c1841f096afaccb96
2012-07-05 17:39:30 +09:00
Tadashi G. Takaoka
15d3532170 Merge "Fix tab key's navigation behavior" 2012-07-05 01:24:00 -07:00
Jean Chalard
3d8e7a62fc Remove a useless method, rename another. (A54)
Change-Id: If36b5375b04f68deeb72bcece3cb8d37aed57f59
2012-07-05 17:22:15 +09:00
Jean Chalard
0783366036 Remove a redundant test (A53)
Change-Id: If711074fdcb586e35d02e421c845f2c9024ca718
2012-07-05 17:22:04 +09:00
Jean Chalard
4cba560dbb Small simplification (A52)
Change-Id: I56bc5b9b584de5a14b41fc32c19f7fefb3b12e88
2012-07-05 17:22:00 +09:00
Jean Chalard
ea80794dd4 Put some more code in common (A51)
Change-Id: If1589e29728df20713c75e08df7f47f0de9202d4
2012-07-05 17:21:55 +09:00
Jean Chalard
cbfd2e1fdb Pull up a common variable into the wrapping method (A50)
Change-Id: I0b62098308169b5c44ced25ffb902766e3732fbf
2012-07-05 17:21:51 +09:00
Jean Chalard
7ed22f1f72 Factorize some common code (A49)
Also add some comment to clarify what's happening inside those
methods

Change-Id: I5b9b1e105b3145f0b050f35d12c5b6ca6e4a4d8c
2012-07-05 17:21:44 +09:00
Tadashi G. Takaoka
b28934adac Fix tab key's navigation behavior
Bug: 6435484
Change-Id: Iffe459c117ad438e96ec6f5c7e64fb80b32d227e
2012-07-05 16:57:14 +09:00
Tadashi G. Takaoka
133bb8544a Merge "Fix upper case Eszett more key" 2012-07-05 00:52:08 -07:00
Tadashi G. Takaoka
5946838b8e Fix upper case Eszett more key
Bug: 6773873
Change-Id: I1a533c729c312a53663fb142cb6fcb4915b53206
2012-07-05 16:13:52 +09:00
Jean Chalard
0726f466f7 Merge "Add a wrapper to updateSuggestions / Predictions (A48)" 2012-07-04 21:08:21 -07:00
Tadashi G. Takaoka
7aeb7ef1ab Merge "Fix Keyboard.getKey as thread safe" 2012-07-04 19:58:17 -07:00
Tadashi G. Takaoka
8f6c603b3b Fix Keyboard.getKey as thread safe
This is a follow up of Id962e670.

Change-Id: I9e8542bff9e8faf57f934051fe612463c99ad61f
2012-07-05 11:43:43 +09:00
Jean Chalard
e47c728dd5 Add a wrapper to updateSuggestions / Predictions (A48)
The goal is to have those converge, as they contain almost 100%
duplicated code.

Change-Id: I6921791d47efce9fb396efd9626839d706664a91
2012-07-05 11:10:04 +09:00
Jean Chalard
7b40c68277 Refactoring which will help with future changes (A47)
Change-Id: Ibc2d28f9f95966f77d4d7bdf9ae4688baaed5989
2012-07-05 11:10:02 +09:00
Jean Chalard
e9a86e2cdb Search bigrams for the lower case version of the word (A46)
...if there aren't any for the exact case version.

Bug: 6752830
Change-Id: I2737148b01ba04a64febe009ceb2ef53c265d224
2012-07-04 20:12:58 +09:00
Jean Chalard
4bcf70c931 Fix a bad interaction with mmap
Bug: 6761221
Change-Id: I7e6d98dc9d7cb34a6163c3957e401ff97abb975c
2012-07-04 17:57:06 +09:00
Tadashi G. Takaoka
ac3bd96192 Merge "Remove WordComposer.add(int, int, int, KeyDetector) method" 2012-07-04 01:48:42 -07:00
Tadashi G. Takaoka
5c641a9f59 Remove WordComposer.add(int, int, int, KeyDetector) method
Change-Id: Ie6af46acba18a2d1cf3ddd1578d60ded4c90f89a
2012-07-04 17:29:47 +09:00
Tadashi G. Takaoka
5c98206dc5 Merge "Use Keyboard.getKey" 2012-07-04 01:12:02 -07:00
Tadashi G. Takaoka
adc80eef15 Use Keyboard.getKey
Change-Id: I722b9e981389f660db928b7fd5ced1b82371fbf3
2012-07-04 16:31:57 +09:00
Tadashi G. Takaoka
040aa28ed4 Merge "Get rid of redundant CharSequence member from SuggestedWordInfo" 2012-07-04 00:27:07 -07:00
Tadashi G. Takaoka
f3897fb54e Get rid of redundant CharSequence member from SuggestedWordInfo
Change-Id: Ie8792f4f5d3593c25c992fc72cf219daeaa70beb
2012-07-04 16:04:59 +09:00
Jean Chalard
c5e911c06b Consolidate a method inside another (A45)
It's simpler to check the safety net directly inside the
function that checks for auto-correction threshold.

This introduces one very slight change in behavior. The value
checked by the safety net is not any more the "typed word" but the
"considered word", the difference being any possibly appended
single quotes.
E.g. the user types "this'''" : the typed word is "this'''" but
the considered word is "this".
This change in behavior can be considered a bugfix.

Change-Id: Ia7ab4bc933183dfbd41bb00328e4c0b5ab76bc63
2012-07-04 11:51:51 +09:00
Jean Chalard
f72b8f5662 Move the safety net function to AutoCorrection (A44)
Change-Id: Iec791d061f237f60992dd6048c4a37b46f4cb9aa
2012-07-04 11:51:46 +09:00
Jean Chalard
accd63f35f Merge "Refactoring (A43)" 2012-07-03 19:40:19 -07:00
Ying Wang
b0593636b1 Import translations. DO NOT MERGE
Change-Id: I9c9bbd6dda1e978e29e985296cb624035d45497d
Auto-generated-cl: translation import
2012-07-03 14:21:10 -07:00
Jean Chalard
b87b23eb75 Merge "Remove useless code (A42)" 2012-07-02 18:56:41 -07:00
Jean Chalard
6547f43666 Merge "Clarify some code and fix a bug (A41)" 2012-07-02 18:52:56 -07:00
Eric Fischer
d0ba95678e Import translations. DO NOT MERGE
Change-Id: I13c7109bb886ef2860cbb4fc24650dd2b8badbcb
Auto-generated-cl: translation import
2012-07-02 14:37:28 -07:00
Jean Chalard
d6496c0913 Merge "Fix a bug with the user dictionary locale." 2012-07-02 02:57:50 -07:00
Jean Chalard
d113fd0be4 Fix a bug with the user dictionary locale.
We internally use the string "zz" to mean no locale, but
the user dictionary service does not understand that and
words added with this locale pitifully end being added to
a "zz" user dictionary, which makes no sense to the user.
This change fixes things so that words added when the
keyboard is in a "no locale" layout, the words are added
to the global, all-locales user dictionary.

Bug: 6645306
Change-Id: Iec3cdd1fe3d5bc43427a43ef9ae9bf89e12be1f2
2012-07-02 17:14:47 +09:00
Jean Chalard
4ca05e2474 Refactoring (A43)
Change-Id: Ib0b6f36999518096819ada2f19365767cb5f9931
2012-07-02 15:46:11 +09:00
Jean Chalard
7ad088a4cf Remove useless code (A42)
If allowsAutoCorrected is false, there is no point in making
hasAutoCorrection true, since in the only place where we use
it again, it's &&'ed with allowsAutoCorrected !

Well that was extremely obscure, good thing refactoring allowed
to realize this was useless >.>

Change-Id: I34936d445f1ced17c7bd04a9524bf608f9e8b9c8
2012-07-02 15:46:08 +09:00
Jean Chalard
90d300c770 Clarify some code and fix a bug (A41)
The test against hasMainDictionary is a test to know if we should
auto-correct or not. Its result should be recorded in
hasAutoCorrection, not in allowsToBeAutoCorrected.

Actually, this value being inserted in allowsToBeAutoCorrected was
causing a bug that nobody noticed: when typing in a language with
no dictionary, the word in the middle of the suggestion strip would
always be bold, as if it was going to auto-correct to itself !
This change fixes this bug.

Change-Id: Ia1f08efd7089b9c5cbede910c5b0951d83e698d2
2012-07-02 15:46:03 +09:00
Jean Chalard
2631e3b195 Small refactoring (A39)
Change-Id: I3c45b5a6571f986acc7adb3a8fe17b210303f7ea
2012-07-02 15:45:58 +09:00
Jean Chalard
79f5317848 Match calls for future consolidation (A38)
Change-Id: I2b2ab99e801fa8b4b30eab16a8aefb8cfe104ba9
2012-07-02 15:45:54 +09:00
Jean Chalard
cd288620ea Make the autocorrection scheme more straightforward (A37)
Change-Id: I4833ca7e057b8c1f1f22390673cbca0d2433b1bd
2012-07-02 15:45:34 +09:00
Jean Chalard
bd1d711488 Merge "Remove a duplicate method (A36)" 2012-07-01 22:36:38 -07:00
Jean Chalard
654d5ba165 Merge "Update log and make a variable private (A35)." 2012-07-01 22:30:36 -07:00
Jean Chalard
3ca3afe971 Merge "Update dictionaries." 2012-07-01 20:55:47 -07:00
Jean Chalard
aba432bf8d Remove a duplicate method (A36)
Bug: 6705473
Change-Id: Ib6260034b09739b60071e90a018b2dc6be3815d7
2012-07-02 12:12:16 +09:00
Jean Chalard
84074cf503 Update log and make a variable private (A35).
Change-Id: Ib4a8f41dc5941bce46402e1a41a6c21dccb0601f
2012-07-02 12:11:27 +09:00
Ying Wang
26c45718a5 Import translations. DO NOT MERGE
Change-Id: I1c7b1b7877fdbf6963b7a034a8ec197004f97b0e
Auto-generated-cl: translation import
2012-06-29 14:05:31 -07:00
Jean Chalard
1842fbba93 Remove old debug code that has been long broken (A34)
Change-Id: I9b5a0e34529724984aad1e2bf99b3e00f8ed0dd7
2012-06-29 19:47:00 +09:00
Jean Chalard
6f7b1ff468 Update dictionaries.
- English : some words caught through regression tests
- English : some words externally reported
- French : some words externally reported
- French : finished review of all accented words

Bug: 6726969
Bug: 6730031
Change-Id: I37d0dc310db2c79e03ac7ad452391e92d9b13357
2012-06-29 19:30:01 +09:00
Satoshi Kataoka
105069a15f Merge "Add input pointers" 2012-06-29 03:03:01 -07:00
Satoshi Kataoka
71538b08e4 Add input pointers
Change-Id: I95300bf0a847fb86d026e846ff4ad723bb45284f
2012-06-29 18:58:51 +09:00
Jean Chalard
f2af726f79 Merge "Add a more synthetic variable (A33)" 2012-06-29 02:22:05 -07:00
Jean Chalard
aa246f23ce Merge "Remove cruft (A32)" 2012-06-29 02:12:47 -07:00
Jean Chalard
defc2e2efa Merge "Simplification (A31)" 2012-06-29 02:09:16 -07:00
Jean Chalard
7a6ac44f5f Merge "Small refactoring (A30)" 2012-06-29 02:09:06 -07:00
Tadashi G. Takaoka
e0b7359126 Merge "Use SparseArray<E> instead of HashMap<Integer,E>" 2012-06-29 02:05:39 -07:00
Tadashi G. Takaoka
56853c1e48 Use SparseArray<E> instead of HashMap<Integer,E>
Change-Id: Id962e670ee1a5164e6c69deb84625139bf5e7974
2012-06-29 17:56:31 +09:00
Jean Chalard
1b2e2d893d Add a more synthetic variable (A33)
The goal here is to disambiguate TypedWordValid and
HasAutoCorrectionCandidate. Ultimately, HasAutoCorrectionCandidate
will disappear.

Bug: 6705473
Change-Id: I1acbd0a5efc7f4bf7b0bdb12839fe3d84e9d1dda
2012-06-29 17:00:57 +09:00
Jean Chalard
9011b89f4e Remove cruft (A32)
Change-Id: I35c2ba4caf6be4ba0449e11c0597ae8e468c0e6e
2012-06-29 17:00:57 +09:00
Jean Chalard
2cda148fd5 Simplification (A31)
Change-Id: I9e4d030974ccec1a6256de6ca87610870e404149
2012-06-29 17:00:57 +09:00
Jean Chalard
deb2d88245 Small refactoring (A30)
Change-Id: I41b413986a3c5bb6697bb7bbced17ed1e361913c
2012-06-29 17:00:57 +09:00
Jean Chalard
9e0af57736 Optimization (A26)
Change-Id: I1d7790289635729645995fb8c38868259ab1b3be
2012-06-29 17:00:56 +09:00
Jean Chalard
0a63111821 Remove a useless parameter (A29)
Change-Id: I52625e707abf61da9b95e542f0814c66b532f483
2012-06-29 17:00:56 +09:00
Jean Chalard
4f444410f2 Remove a useless variable (A28)
Change-Id: I1058123d233540fb72a94028987a43740224f635
2012-06-29 17:00:56 +09:00
Jean Chalard
f4267c0521 Fix a small bug (A27)
TypedWordValid and AllowsToBeAutoCorrected are almost the
same thing; the difference is whether the word is also a
whitelist entry or not. In this case, TypedWordValid was
the right one to test.

Change-Id: I695fe5b9f6bbe9d3ba314c646da3a25742c9f4ed
2012-06-29 17:00:56 +09:00
Jean Chalard
7a94cbd2a4 Remove useless code (A25)
isWhitelistedOrNotAWord takes an 'ignoreCase' argument. By looking
at the contents of the wordcomposer here, there is only one case
where its output will be different : when the word is typed with a
capital, but the lower case version exists in the dictionary.
E.g. the user typed "This".

In this case, isWhitelistedOrNotAWord in line 235 will return false
instead of true, so the test will score a true instead of a false,
so hasAutoCorrection may be true instead of false in this specific
case and that's the only case where it's different.

But in this case, allowsToBeAutoCorrected is certain to be false,
which means the result will not have changed if hasAutoCorrection
was true in the first place. So in the end this change is sure not
to change the behavior.

Change-Id: Ic41cf959c20c19165f84d9b8ff006731fa595d84
2012-06-29 16:57:56 +09:00
Jean Chalard
b3cfde2cbb Add a few comments for future reference (A24)
Change-Id: Ia356130b8a95ec9cf676bc6be05d801c13f14b64
2012-06-29 15:45:27 +09:00
Jean Chalard
e398c6c024 Rename a method for readability (A23)
Change-Id: I6f569322e645d36bc82fddf4ec2fd621972e3b47
2012-06-29 15:45:24 +09:00
Jean Chalard
ea578f6b1d Revert a test for readability (A22)
Change-Id: I1df4cef5ae2736a22273843dce67f0012181bfd3
2012-06-29 15:44:55 +09:00
Jean Chalard
19d02c19d0 Remove a useless variable (A21)
Change-Id: I901e6b0e2b994128da19d68233b9f68bb308cb95
2012-06-29 15:44:17 +09:00
Jean Chalard
1333579b4b Don't special-case 1-letter words (A13)
There is no reason to prevent 1-letter words to auto-correct
to themselves, or to dictionary words. Don't do it.

Change-Id: Iceada847ae632336026ada29afed0353cd9c51b5
2012-06-29 15:12:51 +09:00
Jean Chalard
4d5e7235c5 Remove a useless variable (A20)
Change-Id: Ifc37462f5243563693c8cd7cbeb401ff054daa52
2012-06-29 15:12:51 +09:00
Jean Chalard
d426941ee8 Fix a theoretical bug (A12)
If a word is a dictionary word but still has no suggestion,
this method should return true. In the practice, it makes
no difference since a word without suggestion won't be changed
anyway.

Change-Id: Ib1f5ef254b7da7e5cedb2f973529ad431beb93f9
2012-06-29 15:12:51 +09:00
Jean Chalard
739683dcfb Rename a method for readability (A19)
Change-Id: I0b8c06d1fd0bfb3caf363c048acc7048abed1752
2012-06-29 15:12:51 +09:00
Jean Chalard
31b346aac6 Remove a useless test (A18)
allowsToBeAutoCorrected always returns false if the word is empty.
This is because the whitelist never contains an empty string,
and isValidWord returns false if the word is empty.

Change-Id: I34ecc2a1563aea6db5b2f12796f251f6598576a2
2012-06-29 15:12:51 +09:00
Jean Chalard
b01cdb975a Inline a method (A17)
This will allow us to remove unnecessary processing

Change-Id: I251dfdaffb077906186686ebe65fd82e1e360bd2
2012-06-29 15:12:51 +09:00
Jean Chalard
42dde06782 Make a function a one-liner (A16)
...to better inline it

Change-Id: I88496b8f18b81f0c05e4bbf2d1039de1f93e0c25
2012-06-29 15:12:51 +09:00
Jean Chalard
a96a11949f Inline a simple method (A15)
Change-Id: Ib74fcbf33c680bf02c39a9896e30e3afbcfd149a
2012-06-29 15:12:51 +09:00
Jean Chalard
074c90af98 Inline a method (A14)
The new code is worse than the old one, but this is a necessary
step to make things prettier.

Change-Id: If6e8a139bb85e6920c749743c78792a22a8acb45
2012-06-29 15:12:51 +09:00
Jean Chalard
9701b360d9 Rename a terribly-named method for clarity (A11)
Change-Id: Id180000404dc6929d80f98c0e9cd2026230ad2d1
2012-06-29 15:12:50 +09:00
Jean Chalard
6b911c27a3 Merge "Small readability improvement (A10)" 2012-06-28 23:11:23 -07:00
Jean Chalard
f89a75134b Small readability improvement (A10)
Change-Id: Iba326921711e1c4eab38264e66b6b44a64fec398
2012-06-29 15:05:08 +09:00
Jean Chalard
305326e789 Refactoring and add debug prints (A9)
Change-Id: I46497bff107f0def0dfa2b043b20d9a0b0cde040
2012-06-29 14:24:54 +09:00
Jean Chalard
5110e2cb51 Optimization (A8)
Change-Id: I2b9e8cc6a13fd9af84a5189e4d3fbb2b05c68d46
2012-06-29 12:54:11 +09:00
Ken Wakasa
8fcd7694ae Update LatinIME native Makefile for gesture code
Also, a small clean up in the proguard.flags file

Change-Id: I860034c51a2abf448f7ecc250ed35687b1f1dd82
2012-06-29 00:06:14 +09:00
Jean Chalard
4847a27f74 Cleanup (A7)
Change-Id: Iba97e0062b702c005ab3ff9ce59f181d19ab7c98
2012-06-28 19:13:16 +09:00
Jean Chalard
ed83d4b143 Stop special-casing a single suggestion (A6)
Treat it like the others

Change-Id: Ic24e40ada0e75773c3ece9470ab61c350697be5d
2012-06-28 19:12:37 +09:00
Jean Chalard
251bb70f08 Cleanup (A5)
Change-Id: I06134145b47c46bbc6c340ca539f34a01e2ca163
2012-06-28 19:12:37 +09:00
Jean Chalard
4c4e3a0949 Transform the whitelist suggestion like the others (A4)
...instead of having a different code path

Change-Id: Icd177e2151e45d25300000d4b63d4fba1f52b6a8
2012-06-28 19:10:32 +09:00
Jean Chalard
33b3805e79 Small refactoring (A3)
This will help make upcoming changes clearer

Change-Id: Ida8d4935f7315e5da6007ad364124694da3112d0
2012-06-28 19:10:24 +09:00
Jean Chalard
b7cdafd78a Don't pass everything to a function that needs only the head (A2)
Change-Id: Ic367836202ab8071c1a9a02eaf0651b0da947d51
2012-06-28 19:10:13 +09:00
Jean Chalard
09b30ac954 Merge "Use a TreeSet to sort suggestions instead of doing it by hand (A1)" 2012-06-28 03:08:26 -07:00
Jean Chalard
2d2e348033 Use a TreeSet to sort suggestions instead of doing it by hand (A1)
Change-Id: I16ba39321107e87ad48a99c2410a15995a66f23c
2012-06-28 18:54:14 +09:00
Tadashi G. Takaoka
69527d4d60 am 5e5cf045: am 7f7947c9: Keep subtypes in method.xml the same as pre-JellyBean
* commit '5e5cf045ca6debafcc29ae1c47afda4a3a152326':
  Keep subtypes in method.xml the same as pre-JellyBean
2012-06-27 21:58:53 -07:00
Tadashi G. Takaoka
7f7947c97b Keep subtypes in method.xml the same as pre-JellyBean
This change prevents Android Keyboard subtypes being mistakenly
disabled when upgrading from pre-JellyBean to JellyBean.

Bug: 6750906
Change-Id: I05de6c512e7aa17356e415476e5248986c7d4253
2012-06-28 13:44:09 +09:00
Ying Wang
ca5449bf4f Import translations. DO NOT MERGE
Change-Id: I3d022f22729b758a73352f0e7361e3aead0ef062
2012-06-27 17:16:15 -07:00
Jean Chalard
10abf10c1f Convert local members to local variables
Change-Id: I852787986c79502a4de7effe9c8281a4cf2d519d
2012-06-27 19:54:29 +09:00
Jean Chalard
3ecb2747b3 Optimization.
It's useless to do this for all suggestions including those
that will be ousted from the list.

Change-Id: I7bd63d783e21984a269e4b1ae17e9b9d8c0859e3
2012-06-27 18:55:43 +09:00
Jean Chalard
3705ef407b Read the suggestion type from the suggestion
...instead of dirtily passing it from the dictionary loop

Change-Id: I92ddbd7451609b69f6d4dc31bf89d614423b2016
2012-06-27 18:18:35 +09:00
Jean Chalard
24eec0fa68 Remember the source dictionary for each suggestion.
Change-Id: I3c63372bd5572a479a67eaecfe8c8ea1cabc70d9
2012-06-27 18:17:28 +09:00
Jean Chalard
d8f0caa406 Move constants to a better place.
Change-Id: I5c27a3ed99b17f850e26a8503de16f001c7111c1
2012-06-27 18:08:08 +09:00
Jean Chalard
089c11a086 Cleanup
Change-Id: I575f22330bf6881af1d9a35f22b51b7bf2198113
2012-06-27 17:59:58 +09:00
Jean Chalard
b5afd3de0c Remove unused stuff.
Change-Id: Ifd0d5b6978f76b841574a6e10157c32d0cd656b6
2012-06-27 17:44:16 +09:00
Jean Chalard
05efe576f9 Cleanup the dictionary type.
Stop storing an int in each of the different class types, and
just store a string in the top class.

Change-Id: I2af1832743e6fe78e5c1364f6d9cc21252bf5831
2012-06-27 17:31:09 +09:00
Jean Chalard
c356df8e08 Merge "Update the prototype of onAddSuggestedWord - calling side." 2012-06-27 01:25:59 -07:00
Ken Wakasa
e55c23e4b0 Small cleanups
Change-Id: Ic1a198ab1b4f0323fde9e4245729fd0e6011b914
2012-06-27 16:54:37 +09:00
Jean Chalard
32ff2504a0 Update the prototype of onAddSuggestedWord - calling side.
We want to get rid of all those IDs in Latin IME.

Change-Id: Ibe08100a5e2976c80abb049889233b4047a686f3
2012-06-27 16:17:14 +09:00
Jean Chalard
2db27bcd06 Merge "Use binarySearch instead of a hand-written linear search" 2012-06-26 23:55:46 -07:00
Jean Chalard
78a8d5b6bc Merge "Implement a comparator for SuggestedWordInfos." 2012-06-26 22:55:51 -07:00
Jean Chalard
56beb9e321 Use binarySearch instead of a hand-written linear search
Yay.

Change-Id: Icf686eb2d675da959f19edc856b521e6288dcea3
2012-06-27 14:17:29 +09:00
Jean Chalard
9da0027b38 Implement a comparator for SuggestedWordInfos.
Change-Id: Ic4b0ae05cd98a1aec5806c5e4b744158e73aea7a
2012-06-27 14:16:23 +09:00
Kurt Partridge
30447239e8 Merge "only output every kth word to log" 2012-06-26 20:49:03 -07:00
Jean Chalard
4ef01c51f8 Merge "Remove some special casing" 2012-06-26 20:33:43 -07:00
Kurt Partridge
e961188e9f only output every kth word to log
multi-project CL with Ib5b544b9b2d8b0e4419238976b2e274e5ac564f8

Bug: 6188932
Change-Id: Iea68cf36924d6fda126130a98431a6ce02ba251e
2012-06-26 16:15:20 -07:00
Jean Chalard
7e49a2b6b8 Remove some special casing
This special casing is useless. If the word is the same as what
user typed, the scoring algorithm already ensures that it comes
out at the top. Actually, as is written in a comment here, code
executed later is actively relying on this suggestion having
the top score ! There is no need to test it for equalness and
inserting it at the top then.

Change-Id: I263a6de59b77ec72a2dcbb933361b8e16fca0681
2012-06-26 20:40:42 +09:00
Jean Chalard
a3f5f51ec4 Fix a bug where a log would mysteriously not work
Change-Id: I5ca77ed65e95a6d357215c0e730238fb463986bb
2012-06-26 20:36:51 +09:00
Jean Chalard
22657dcba0 Optimization.
We already had that computed

Change-Id: I2a9742eaee2e9db1f73aeddda7bae7e237b4d15c
2012-06-26 20:02:07 +09:00
Jean Chalard
ec8b27fe49 Cut out a method for clarity
Change-Id: I1dc668698a5cd840297e713a26a525f5e32d35d6
2012-06-26 19:49:01 +09:00
Jean Chalard
0131170da9 Merge "Avoid string conversions when possible." 2012-06-26 03:48:01 -07:00
Jean Chalard
5953dc93cf Avoid string conversions when possible.
Change-Id: Ibf5f3e40da55998364d0d835ecf283f32c80fcf5
2012-06-26 19:45:52 +09:00
Jean Chalard
5d218bc029 Merge "Simplify a method call." 2012-06-26 03:45:02 -07:00
Jean Chalard
bed514bd90 Simplify a method call.
Change-Id: Ieede787a13cef79353f13af52488ef3732ac9850
2012-06-26 19:33:16 +09:00
Jean Chalard
61c1002b6b Merge "Refactor and squash long-standing bugs (A2)" 2012-06-26 03:19:20 -07:00
Tadashi G. Takaoka
abf81192ff Merge "Remove unnecessary variables" 2012-06-26 03:16:17 -07:00
Tadashi G. Takaoka
342ea3d324 Merge "Pass MotionEvent to PointerTracker" 2012-06-26 03:16:12 -07:00
Jean Chalard
9433ce86b7 Refactor and squash long-standing bugs (A2)
This is awesome.
- Improve performance by stopping useless string/array conversions.
- Simplify method interface.
- Fix localization bugs - we now know our locale
- Fix bugs with surrogate code points

Bug: 4769095
Change-Id: I8a8ee224b713429ee0a4ce5bd52f1b63378cf56f
2012-06-26 19:12:07 +09:00
Tadashi G. Takaoka
3314d38daf Pass MotionEvent to PointerTracker
This is a one of groundwork to integrate gesture input.

Change-Id: I5b75c6978b51df91fdc384a9f6d1d5a5ddc563e2
2012-06-26 19:05:47 +09:00
Jean Chalard
a8c9946b44 Merge "Remember the locale in the Suggest object (A1)" 2012-06-26 03:05:05 -07:00
Tadashi G. Takaoka
7bb8e95b52 Merge "Cleanup PointerTracker debug method" 2012-06-26 03:03:49 -07:00
Tadashi G. Takaoka
0d9d37cec2 Remove unnecessary variables
Bug: 6722052
Change-Id: I92e85b3e49b8f4b228f0cf0994216c5050e0865c
2012-06-26 19:01:59 +09:00
Jean Chalard
8e17f6d93a Remember the locale in the Suggest object (A1)
This will be necessary for uppercasing and titlecasing words
correctly.

Change-Id: I0f446a4c82bc482240ff730a2ad6586a61571d6b
2012-06-26 18:55:18 +09:00
Jean Chalard
a5cfeeb6ef Merge "Remove a useless member (A2)" 2012-06-26 02:46:48 -07:00
Jean Chalard
0f455ae2a6 Merge "Convert a member to a local variable (A1)" 2012-06-26 02:46:39 -07:00
Jean Chalard
bf0cae3695 Merge "Reword the 'word prediction' option" 2012-06-26 02:45:49 -07:00
Jean Chalard
6cad198d9c Remove a useless member (A2)
Change-Id: Ia727ffc2946352bbf79e0c97684f8fa98f428cef
2012-06-26 18:42:06 +09:00
Jean Chalard
0da9a7c094 Convert a member to a local variable (A1)
Change-Id: I9eab910989443704f83711cf4fb0070c5987a13a
2012-06-26 18:41:49 +09:00
Tadashi G. Takaoka
d7edd1cbb5 Cleanup PointerTracker debug method
Change-Id: Ib3bfa0a46f5814a6df838005d7243e2f536a98a0
2012-06-26 18:36:30 +09:00
Jean Chalard
8d076be2d1 Reword the 'word prediction' option
Bug: 6694141
Change-Id: Ic8fd902554cdf81998f3806a58484d9733848d99
2012-06-26 18:23:06 +09:00