Commit graph

5800 commits

Author SHA1 Message Date
Chieu Nguyen
e3ac02e796 Merge "Sync setting disabled if no account." 2015-03-06 17:40:47 +00:00
Tom Ouyang
8eb2fad570 Merge "Restart suggestions when backspacing into a reverted word." 2015-03-06 02:29:35 +00:00
Chieu Nguyen
b717f91ffa Sync setting disabled if no account.
Bug: 19361223

Change-Id: Id5e8d34920f5bf3bffb6d6d287557e85d7b72c79
2015-03-05 18:25:56 -08:00
Chieu Nguyen
c4f6a8dcd4 Make privacy policy link clickable in sync settings.
Bug: 19361223
Change-Id: I83128d771bf5214a446afd6a3d5244a184d0a4a8
2015-03-05 17:48:02 -08:00
Tom Ouyang
222f647137 Restart suggestions when backspacing into a reverted word.
This is required for the final corrected word to be learned,
as learning only occurs when suggestions are active.

Note: This is already happening when backspacing into a non-reverted
word

Bug: 19619907
Bug: 18465402
Change-Id: I99a1d4f0ca0d62a2cdfa24cc0833ce89391715d9
2015-03-05 17:42:35 -08:00
Dan Zivkovic
38b9bffa3f Handle words longer tha 256 characters.
Bug 19612315.

Change-Id: I75e84df88b4da5cfc6a39b956613972841342c4b
2015-03-05 10:56:14 -08:00
Dan Zivkovic
1ae16dc3db Next-word suggestion bit in keyboard settings.
This feature works in supported languages.
We don't need a user setting.

Bug 19596067.

Change-Id: Icdded772745f9816da47f8a5e3b87b733083b121
2015-03-04 15:02:53 -08:00
Dan Zivkovic
83e95e6018 Remove SHORTCUT column in FROM clause.
The column is no longer used, and is not available on pre-Jellybean devices.

Bug 19595958.

Change-Id: Ief54c7210698d6668b1b7815900a394cc7f27299
2015-03-04 10:16:28 -08:00
Mohammadinamul Sheik
6e29d261cb Introduce DictionaryHeaderUtils to get dictionary header values
Change-Id: I86cef6c7f2f68a75428bb2b9c4d5a1dc1876b541
2015-03-03 16:17:27 -08:00
Chieu Nguyen
2281ba7666 Merge "Add DictionaryFacilitator dump()." 2015-03-03 23:16:49 +00:00
Chieu Nguyen
c809dc26a1 Add DictionaryFacilitator dump().
Change-Id: I8b75aded3fc2b9b33128b6ba5a3e8d943dfca352
2015-03-03 14:36:47 -08:00
Jatin Matani
148aab1228 Merge "Add util method in ngramcontext for context array" 2015-03-03 21:59:52 +00:00
Jatin Matani
a568e0acb4 Add util method in ngramcontext for context array
Change-Id: I2e3e2ac7706be50ed2055b0c69b30e25a516a879
2015-03-03 13:20:53 -08:00
Dan Zivkovic
fbfc62209a Remove no-op broadcast receiver from LatinIME.
Bug 19583388.

Change-Id: Ia1ca481e2eae0c9791932f7f28a9072cc3dbbe7c
2015-03-03 11:03:11 -08:00
Chieu Nguyen
ddee491450 Merge "Move dictionary facilitator handling." 2015-03-02 23:30:42 +00:00
Chieu Nguyen
0103d75aaf Move dictionary facilitator handling.
Change-Id: Ibd42982996a36ac52b4c916035491b835f8d14f9
2015-03-02 15:24:51 -08:00
Jatin Matani
55d9651929 Merge "Turn off cloud sync if we have managed profiles" 2015-03-02 20:21:29 +00:00
Jatin Matani
854edce6dd Turn off cloud sync if we have managed profiles
UserManager#getUserProfiles > 1 implies managed
profile.

Workflow:
- Disable sync prefs
- Execute an async task to check for managed profile; if
  managed profile is found, remove the sync prefs. If not, enable
  the preference;
- Move the logging pref from Advanced to Account & Privacy.

Bug:19230544
Change-Id: I4dbd1fe8433b3263ccc74c35dc0ee0bb371122b3
2015-03-02 12:03:57 -08:00
Jatin Matani
8b2908066d Fix build breakage due to changed resource Id
Change-Id: I09ba038930416d1261ef095ec503f1ac68cd92ea
2015-03-02 09:44:19 -08:00
Dan Zivkovic
9770336a9b Merge "Label empty suggestions." 2015-02-27 21:33:02 +00:00
Chieu Nguyen
98886775cf Merge "Handle double space inserting a period." 2015-02-27 21:24:36 +00:00
Chieu Nguyen
fdf3cc41ee Handle double space inserting a period.
Change-Id: I109f0e9cf3e972bf60aa3fbbe817337aef70ea3c
2015-02-27 13:19:21 -08:00
Mohammadinamul Sheik
62cbaba715 Merge "Update the MAX supported file version for downloaded static Dictionaries." 2015-02-27 21:09:04 +00:00
Dan Zivkovic
24c275ccb9 Label empty suggestions.
When talkback is enabled, empty strings will have a content description.

Bug 19479836.

Change-Id: I25679a2bdeff238a5330ba406d5bc7e6e2868ba1
2015-02-27 12:44:28 -08:00
Mohammadinamul Sheik
377ba98b75 Update the MAX supported file version for downloaded static Dictionaries.
Change-Id: I72d37cc21585b18f4a41ff32627024502f10e993
2015-02-27 10:30:23 -08:00
Dan Zivkovic
69c04cadc7 Race condition in cursor move.
The method WordComposer.moveCursorByAndReturnIfInsideComposingWord() iterates
through all the code points in the word that's currently being composed, and
it tries to adjust the cursor position by a given amount (left or right).
It copies the code points to a new array while processing. But the code point
count comes from a member variable. If the member variable changes while the
method is processing the copy of the code points, it can run over the length
of the code point array.

Bug 18876474.

Change-Id: Ib3a2d90a4e82b76d381efa774e6b3d6bca99c869
2015-02-27 10:29:47 -08:00
Jatin Matani
c83352d527 Merge "Refresh pref settings for cloud sync" 2015-02-26 22:10:02 +00:00
Jatin Matani
8ec328fb2e Refresh pref settings for cloud sync
- Show the opt-in text
- Show the account picker if user presses 'enable sync'. Previously
  we disabled the sync pref which was confusing.
- Remove the debug tags from some prefs; and improve messaging overall

General rules;
- sync is turned ON : user checks 'enable sync' pref AND
  accepts the opt-in AND chooses an account
- sync is turned OFF: when user signs out

Demo link
https://drive.google.com/a/google.com/file/d/0B9tNQOWdRuiWSUdVVE5rVDJudlk/view?usp=sharing

Change-Id: I2e7933796b15e47005ba9970a8c1294416ef31a0
2015-02-26 11:43:42 -08:00
Dan Zivkovic
edd94a449e Ignore the Emoji key when not connected.
When the LatinIME does not have an active InputConnection, it will not try
to toggle the Emoji keyboard.

Bug 19513415.

Change-Id: I31f928cd7db1cddd771c548cd3dc42f8af64d0e2
2015-02-26 11:10:37 -08:00
Jatin Matani
48b071249c Merge "Share decoders among latinime components." 2015-02-26 17:54:26 +00:00
Dan Zivkovic
7d7f082075 Stop waking up to decay dynamic dictionaries.
Bug 19516048.

Change-Id: Ibc27a792b4fa80fa8c6af4721c47a617526e9584
2015-02-25 20:13:59 -08:00
Dan Zivkovic
e4619f029e Merge "Don't assume that correctable words are invalid" 2015-02-26 03:44:20 +00:00
Mohammadinamul Sheik
48ba1ea19f Merge "Make DictionaryFactory.killDictionary public" 2015-02-26 03:33:08 +00:00
Dan Zivkovic
5551302d27 Don't assume that correctable words are invalid
Currently, the Delight3DictionaryFacilitator sets a boolean flag when the top
suggestion score exceeds the auto-correction threshold. This flag is used to
trigger auto-correction of the typed word. Also, the existing logic assumes
that if allowsToBeAutoCorrected then the word is invalid, which is no longer
true after we stopped using whitelists.

Bug 19518376.

Change-Id: Ifa7f6a09c07d25ac68c6cf3aec91f358bd88689f
2015-02-25 17:59:58 -08:00
Mohammadinamul Sheik
20fb37afee Make DictionaryFactory.killDictionary public
Change-Id: I9a0733392651714b3ba232cdb805565a5238eb93
2015-02-25 17:53:35 -08:00
Jatin Matani
b684d2d2e4 Share decoders among latinime components.
Change-Id: I6c8d3cf10e05e606308cea42d1e935a415ada9f8
2015-02-25 17:48:30 -08:00
Mario Tanev
487e038ff3 Use Keyboard in several interfaces.
Simplify interfaces by passing Keyboard instead of
KeyboardLayout and ProximityInfo directly.  Also require
the Keyboard passed be non-null and change the SpellChecker
to bail out if there is no keyboard for the locale.

Change-Id: I960f15ff60171f55d3e0a96fd6469b7dc3a045e2
2015-02-25 17:20:00 -08:00
Dan Zivkovic
ed378c78a1 Auto-correct without whitelist in Delight3.
Bug 19390471.

Change-Id: Ie09b916ca80591c98f48ae1d74d4fd5b0c5d6b33
2015-02-25 11:47:43 -08:00
Martin Paraskevov
2b8d763c65 Pass ComposedData to the decoder instead of WordComposer.
Change-Id: I8bd544d03d9087a02294b08a9986cad229dae795
2015-02-24 17:59:47 -08:00
Mario Tanev
a3ac6f24cc Merge "Don't call resetDictionaries if DictionaryFacilitatorLruCache.get() hasn't been called yet. This breaks the AOSP SpellChecker. This seems to be a bug introduced recently, when the DictionaryFacilitatorLruCache was turned into a "cache" of 1 element." 2015-02-25 00:20:32 +00:00
Mario Tanev
1a6d01b61e Don't call resetDictionaries if DictionaryFacilitatorLruCache.get()
hasn't been called yet. This breaks the AOSP SpellChecker.  This seems
to be a bug introduced recently, when the
DictionaryFacilitatorLruCache was turned into a "cache" of 1 element.

Change-Id: I55f6c18b274c9a33fd62cb25bcd02f64788d5ff0
2015-02-24 15:56:43 -08:00
Mohammadinamul Sheik
24c282437d Do not crash when dictioanryInfo is NULL
Bug: 19417599
Change-Id: I82174401c595b57b42fc74bc478b551869729ba6
2015-02-24 15:45:10 -08:00
Jatin Matani
f7058c2a89 Merge "Pass long timestamps to DictionaryFacilitator" 2015-02-24 20:57:34 +00:00
Tom Ouyang
edb2d23802 Check for null TextRange in InputLogic.unlearnWordBeingDeleted
Change-Id: Ia0df0ab740c76185f94966f59a74a6ebdd1cffe8
2015-02-24 11:30:42 -08:00
Mohammadinamul Sheik
1d5ec6136c Use DECODER_DICT_SUFFIX on fallback to the default main dict resource.
Change-Id: Icec45c364732c0aa9ac713846cad23439b9e42b5
2015-02-23 17:25:08 -08:00
Jatin Matani
94b8523566 Pass long timestamps to DictionaryFacilitator
Change-Id: I95500f210ed409c0ff254b08b68fe3b5b59ba4f4
2015-02-23 16:50:02 -08:00
Mohammadinamul Sheik
bae3c4bac5 Merge "Make checksum and header checks decoder dependent." 2015-02-23 21:47:28 +00:00
Chieu Nguyen
53b4bfdba0 Merge "Add StatsUtils method for handling subtype change." 2015-02-23 19:11:15 +00:00
Dan Zivkovic
08f3cdb3c8 Hide app icon when keyboard is a system app.
The objective is to show an app icon when the user installs the keyboard from
the Play Store, but not show the icon when it comes from the system image.
The latter rule applies to AOSP keyboards and to the Google Keyboard on a
Nexus device.

This change partially reverts ag/613096.

Bug 19001197.

Change-Id: Icb202deffe9f1ab2bde9b3c9d221347da6793a19
2015-02-23 10:21:20 -08:00
Mohammadinamul Sheik
eeeec21bac Make checksum and header checks decoder dependent.
Change-Id: I0ec4aa69d9b5f013ae926cc368e25225d9d3073b
2015-02-20 18:30:23 -08:00
Jatin Matani
1c11f3fe0e Merge "Remove unused APIs in DIctionaryFacilitator" 2015-02-21 01:17:25 +00:00
Jatin Matani
83e9a29c33 Remove unused APIs in DIctionaryFacilitator
Change-Id: Iae20a0a3b7c1aa0c2f6d29cef780fb50dc9010cb
2015-02-20 11:19:27 -08:00
Dan Zivkovic
fe3c4ef940 Merge "Spell checker uses cache of size 1." 2015-02-20 19:06:48 +00:00
Dan Zivkovic
29aa3df3da Spell checker uses cache of size 1.
This is a step in the direction of removing the LRU cache completely.

Change-Id: I8886f7ef74e6b1b35135e68f169cb461682964e9
2015-02-20 11:05:44 -08:00
Jatin Matani
01b023730e Add tests for Contact* classes
Also add empty implementation for dictionary
facilitator iteration APIs
Change-Id: Ia847e3faa75075c819fcfda89193d1024d2d5aca
2015-02-20 09:14:27 -08:00
Dan Zivkovic
40b754565c Rename in preparation of caching an instance.
Change-Id: I112c957e20d4573daaa71aa218b575037585385c
2015-02-19 15:41:58 -08:00
Dan Zivkovic
3bfc9d4692 Merge "Schedule with 0 delay is the same as execute." 2015-02-19 22:42:55 +00:00
Dan Zivkovic
6a000183c5 Schedule with 0 delay is the same as execute.
Change-Id: Ifadae8aee668edbe2b507735d3ed6e68d52ef329
2015-02-19 14:19:23 -08:00
Dan Zivkovic
7041313f71 Merge "If contacts observer is running, return early." 2015-02-19 22:16:33 +00:00
Tom Ouyang
076f76cc12 Merge "Add more options for calling removeWordFromPersonalizedDicts." 2015-02-19 21:31:38 +00:00
Tom Ouyang
edea47ff2e Add more options for calling removeWordFromPersonalizedDicts.
Bug: 19441205

Change-Id: I41aff536a64271d2dc9489a20df33d64170756cc
2015-02-19 12:03:42 -08:00
Dan Zivkovic
705b118672 If contacts observer is running, return early.
Change-Id: I084a251b0f72288243c73b6166d992b427449635
2015-02-19 11:54:18 -08:00
Dan Zivkovic
0b03f13cab Sanitize the usage of executors.
There should be 1 executor each for static and dynamic language models.
This prevents too many dynamic LM updates from running in parallel,
competing for resources.

Change-Id: I8ec439e0ea2d92fba275bc20a0b8c9193346a0c1
2015-02-19 11:40:57 -08:00
Chieu Nguyen
40833d2dd7 Add StatsUtils method for handling subtype change.
Change-Id: I0f334ab5e6f5aa41ad780641276dc3d2aa232f48
2015-02-18 16:00:59 -08:00
Mohammadinamul Sheik
95711bfcee Add Decoder specific dictionary suffix to resource lookup
Change-Id: Ia2c74acdc8ac6f7b605bb06a1078d23b32f388a1
2015-02-12 19:56:46 -08:00
Dan Zivkovic
cf84f8ce0c Switch from script to language codes.
Unfortunately, our Locale objects don't always have a script code.
But we can get almost the same functionality by specifying script
codes for some languages, and defaulting the rest to Latin.

Change-Id: Id81ff67bf44c84f44707a2e167c2787c60c6ecee
2015-02-12 15:42:25 -08:00
Dan Zivkovic
98596e51a1 Map ISO 15924 codes to internal IME script codes.
This way we can support all the languages for which we define a script code.

Bug 19340741.

Change-Id: Ia80eca4cc2511b70f11058f73bd31746948ded19
2015-02-12 11:00:06 -08:00
Jatin Matani
4084fa5cae Refactor content provider code from ContactsDict
Break contacts binary dictionary into two parts
- one that talks to contacts content provider and maintains
  local state. Includes a manager class and a content observer
- other one that just manages the dict code.

Change-Id: Ie8f89ac9ce174c803ff3168ee0bee5cbe7721d5b
2015-02-11 16:29:14 -08:00
Dan Zivkovic
5254c01d4c Fix master build.
For some reason, we can't import android.os package in our Constants.

Change-Id: I357ed72d13c5039a83c6e2489cdf5ef74d0ffea8
2015-02-11 13:32:13 -08:00
Dan Zivkovic
12d80ebead Remove shortcut support from LatinIME.
Note this change does not affect the native decoder interface.

Change-Id: I73b7dc008a5acaf75a31a36a2d332b5afabd82d0
2015-02-11 13:02:41 -08:00
Mario Tanev
2979fad213 Merge "Add new class spellcheck.UserDictionaryLookup that can look up the system "Personal dictionary" in the event that the DictionaryFacilitator doesn't." 2015-02-10 23:25:50 +00:00
Jatin Matani
a7805e9870 Add a addOrIncrement term api to DicFacilitator
The API is used by the decoder to add term to the
dictionary.

Change-Id: I607c8c676b7650f3052b2d3ed3f7f656573fca45
2015-02-10 11:45:54 -08:00
Mario Tanev
8aa310aa5a Add new class spellcheck.UserDictionaryLookup that can look up the
system "Personal dictionary" in the event that the DictionaryFacilitator
doesn't.

Change-Id: Ib4f15ec4d8f06ea43c2e063f5a13a2f699afbb8a
2015-02-10 10:56:35 -08:00
Dan Zivkovic
644a709a5f Remove distracter filter from client.
Bug 19296201.

Change-Id: Ic834e5956347cd86a96bd14024c42ad8ee258659
2015-02-09 11:52:12 -08:00
Mohammadinamul Sheik
aadfef6ffa Merge "Move decoder specific constants to DecoderSpecificConstants.java" 2015-02-06 22:46:08 +00:00
Dan Zivkovic
d6a8adcb04 Cleanup in preparation of distracter change.
Bug 19296201.

Change-Id: If016da2b7f4b3ecb9afd6d7aed9d19fbd4938758
2015-02-06 14:25:37 -08:00
Mohammadinamul Sheik
0f7d881dc7 Move decoder specific constants to DecoderSpecificConstants.java
Change-Id: Ie4d325b3152e1e7e424b8b436e222e194e4d9da0
2015-02-05 13:27:36 -08:00
Chieu Nguyen
608ef4729c Merge "Add accessor methods for typed word info to SuggestedWords and for word and source dictionary to SuggestedWordInfo." 2015-02-05 03:16:45 +00:00
Dan Zivkovic
23d19626f3 Use shared constants in old+new facilitators.
Change-Id: I18b701df6ecbcc20ff0c664c218289179c4b2b2d
2015-02-04 18:55:39 -08:00
Chieu Nguyen
4e94109031 Add accessor methods for typed word info to SuggestedWords and for word
and source dictionary to SuggestedWordInfo.

Change-Id: Ic3bdf67a9edd5352f3b911f5cb72a25986e31e2c
2015-02-04 18:35:20 -08:00
Dan Zivkovic
6e0467c20e Fix accidentally inverted if check.
Change-Id: I9c28f4154f69c63564a2bda357c16cef4e68dc0d
2015-02-04 18:23:38 -08:00
Dan Zivkovic
c0eb57124f Don't check user dictionary, except for spelling.
We check different lists of dictionaries based on the use case.

Bug 19270992.

Change-Id: Ide69f2855978ebad32a58e9689b3a8d47e095994
2015-02-04 18:23:38 -08:00
Dan Zivkovic
c4977b5f89 Merge "Removing code from RichInputConnection." 2015-02-05 01:14:46 +00:00
Dan Zivkovic
a6d2cf5ec7 Removing code from RichInputConnection.
Followup CL that removes some more unused methods and variables.

Change-Id: I4163c7cd017f59d1fd445adb6294fc89dcaafe6e
2015-02-04 16:47:56 -08:00
Dan Zivkovic
7b2646dd58 Merge "Selections spans should not split surrogate pair." 2015-02-05 00:47:29 +00:00
Mohammadinamul Sheik
bae6848434 Merge "AOSP changes to use KeyboardLayout to support the new DictionaryFacilitator" 2015-02-05 00:44:10 +00:00
Dan Zivkovic
f3c319fb8a Selections spans should not split surrogate pair.
When committing a span after a revert, the offset logic was such that it
split a surrogate unicode pair used to express an emoji.
Checking the last character of the span lets us avoid this problem.

Fix for bug 19255233.

Change-Id: I07d18d9002b5075f7925319dd05962011656c311
2015-02-04 16:35:18 -08:00
Mohammadinamul Sheik
b00c054125 AOSP changes to use KeyboardLayout to support the new DictionaryFacilitator
Change-Id: Ie0c9ce805d9ad009fc9bbaac37b715aff90cd844
2015-02-04 12:50:31 -08:00
Dan Zivkovic
c71e4d6534 Remnant of green [+] feature.
Change-Id: I059b1062e1d73b2fa439d9d4ee04ff0182795335
2015-02-04 11:57:16 -08:00
Dan Zivkovic
0d3f01f301 Remove last vestiges of contextual+personal dictionary.
Change-Id: I20746381583ee8a4d7d42b1243f5c7ba45529e5e
2015-02-04 11:38:19 -08:00
Dan Zivkovic
23574d1231 LatinIME portion of "green plus" feature.
Removes the feature that adds strings to the user dictionary,
aka the "green highlight with a plus sign".

Bug 19237189.

Change-Id: I2387129a3add2d69d625f2ff16ed8cab3f10a735
2015-02-03 15:12:01 -08:00
Jatin Matani
48cc0d6420 Merge "Nuke Amanatto" 2015-02-03 19:20:40 +00:00
Jatin Matani
15acbdc905 Nuke Amanatto
Change-Id: Ieff2cd37f869dca69abf53ac32a576c2e45cc1e3
2015-02-02 17:10:38 -08:00
Dan Zivkovic
77e0fa1d67 LatinIME portion of multi-lang option removal.
Bug 19188067.

Change-Id: Ic9a3637f59dda30c699141222b9dcac3cd624b99
2015-01-29 15:57:03 -08:00
Dan Zivkovic
e1758feeff Disable the Burmese keyboard.
We'll resurrect this effort in the new code base.

Bug 16900511.

Change-Id: Iae4cd27cb29cb8f991e97cffd88ed59c30d66628
2015-01-29 10:17:33 -08:00
Mario Tanev
ab6f3b36d0 Change DictionaryFacilitator.java to an interface, create its
implementation DictionaryFacilitatorImpl.java and add a java-overridable
factory DictionaryFacilitatorProvider.java used to create a
DictionaryFacilitator.

Change-Id: Id4a58ae31feaa4d12a048a772c8d76ff82fdee45
2015-01-27 21:38:32 +00:00
Chieu Nguyen
d523bacebc Merge "Add a method for handling for words not found in dictionary." 2015-01-23 16:35:16 +00:00
Dan Zivkovic
fc47007674 Merge "AOSP change for showing the app icon." 2015-01-16 17:49:37 +00:00
Dan Zivkovic
d913617e0c AOSP change for showing the app icon.
This change deletes a bunch of code that was used to conditionally show/hide
the keyboard app icon given system states and user preferences.

Bug 19001197.

Change-Id: I69a57aa21872a571af87a193b3e52b7f985e5168
2015-01-16 09:37:30 -08:00
Jean Chalard
9fe700ec4f Merge "Fix moving the cursor inside composition in lang w/o spaces" 2015-01-16 03:22:18 +00:00
Chieu Nguyen
2e8d536678 Add a method for handling for words not found in dictionary.
This is apparently called only once for every unique word, so repeated instances
of the same word are not handled separately. Upon changing orientation of the
device, however, all invalid words in the textbox are underlined again and this
method is called for each unique instance in order.

Change-Id: Ic57e4b9e5675bd7abd723644aa318d964f7f875f
2015-01-14 16:20:42 -08:00
Dan Zivkovic
303a2ae5c9 Fix NPE in PunctuationSuggestions.
The NPE happens when the keyboard doesn't specify any punctuation suggestions.

Bug 18047927.

Change-Id: I9f8aa35df4f163b527dc6580a99afc6da45a96b8
2015-01-13 13:24:16 -08:00
Jatin Matani
a1a9896b42 Rename production flag for cloud sync feature
Change-Id: I24cbe94f128f54fb9bfeeef78cf271fee2216c8e
2014-12-29 12:45:27 -08:00
Jean Chalard
8e235191dd Fix moving the cursor inside composition in lang w/o spaces
Also introduce the cursor move event, which we needed to do
anyway

Bug: 18827118
Change-Id: I30e994764c095b4423b874dc05d1bbedc0de592f
2014-12-22 17:47:33 +09:00
Jatin Matani
3e35b8712c [3]Ping dictionary stats:Pass DictionaryFacilitator
Pass dictionaryFacilitator to StatsUtilsManager from
LatinIME
Bug:16553957

Change-Id: I912a0b447e5684909ff67e3653a4bd8649cd03c5
2014-12-18 13:42:41 -08:00
Jatin Matani
20469a8779 Merge "[2]Pass context to StatsUtilsManager for alarms." 2014-12-18 21:35:45 +00:00
Jatin Matani
2b69244555 [2]Pass context to StatsUtilsManager for alarms.
Change corresponding to ag/605384

Bug:16553957

Change-Id: I77024957b9497c45296bbbb24ca972b26348a8c3
2014-12-17 12:16:02 -08:00
Tadashi G. Takaoka
dbdc81a36a Merge "Cleanup InputMethodInfoCache" 2014-12-17 06:39:19 +00:00
Tadashi G. Takaoka
4077a7e52f Merge "Remove SubtypeSwitcher" 2014-12-17 06:39:07 +00:00
Jatin Matani
bc4ae6bdc0 Passing account info to dictionaryFacilitator
Attempt to use dictionary facilitor without invoking
preference manager. Instead use account from settings only when
things are being reset/changed. Discussion forked from ag/591663

Overall, the idea here is to maintain an account information
inside dictionary groups. Reset the dictionary groups if
account changes (the way we do for locale). Since only user
history dictionary is currently affected, the check to reset user
history dictionary also includes the check to verify the account.
For other things remain the same.

SettingsValues holds the current account (and is updated if prefs change
due to change in account settings). The updated settings are then
propagated to dictionary facilitator via LatinIME#loadSettings.

Bug:18104749,18469539
Change-Id: I553e776e7ea125d0fb7a1fe70a4c7eb0b2277fb8
2014-12-16 15:56:00 -08:00
Jatin Matani
25daca0053 Merge "Provide a preference to delete data from cloud." 2014-12-12 19:43:16 +00:00
Tadashi G. Takaoka
afd52dfc60 Cleanup InputMethodInfoCache
Change-Id: I40afeb4557c3b1ad32bd90f67502a625df2bc3fb
2014-12-12 13:53:13 +09:00
Tadashi G. Takaoka
31a10e226d Remove SubtypeSwitcher
Change-Id: Ic4def69a9f742f13c98bc3e518c406658b52797d
2014-12-12 13:45:46 +09:00
Tadashi G. Takaoka
8cfad7ed64 Merge "Make LanguageOnSpacebarHelper as utility class" 2014-12-12 04:42:09 +00:00
Jean Chalard
498dbfbd9d Disable multiple language input
Bug: 18705799
Change-Id: I73730ccf59e2697acfb3fe436c01b94c40307f2f
2014-12-11 14:50:03 +09:00
Tadashi G. Takaoka
4934a88b61 Make LanguageOnSpacebarHelper as utility class
Change-Id: I546f3b1943999a41803222bd14f9ddd23aa87a51
2014-12-11 14:22:21 +09:00
Tadashi G. Takaoka
2b25f674f2 Add NetworkConnectivityUtils class
Change-Id: I7bd71f1d4ef0fc0fe21ddfd9f3e11463f53ac4e7
2014-12-11 01:37:44 +00:00
Jatin Matani
6814e7aa87 Provide a preference to delete data from cloud.
For now, it is a debug preference, but we may make this a proper
user setting in the future. Thus note that the messaging is not
final.

Pref looks like :
1. https://screenshot.googleplex.com/OLxW0myWD9.png
2. https://screenshot.googleplex.com/YeqWYXGstw.png

Bug: 18106936
Change-Id: I88bbc1a2ee0c23a48ff3972a91d57c218b10bb65
2014-12-09 12:45:34 -08:00
Keisuke Kuroyanagi
52e92f812b Merge "Quit auto-correct explicit accented letters to base letters." 2014-12-09 10:24:56 +00:00
Keisuke Kuroyanagi
515c508135 Quit auto-correct explicit accented letters to base letters.
Bug: 7677193
Change-Id: I66eddbf27a9db8682c0347a1be19922792a3bea7
2014-12-09 19:23:27 +09:00
Tadashi G. Takaoka
be819dbe2b Revert "Add keyboard margin options to place the keyboard dynamically."
This reverts commit 8584db1461.

Bug: 18675223
Bug: 18675476
Change-Id: I4e25d87ac261c44b1943df832115f8cca690103a
2014-12-09 17:53:24 +09:00
Jatin Matani
88cd34f8f8 Rename variable name to remove ambiguity
Change-Id: If95c34c9eab09cbc941bef5ee3d34b9048bf3bf9
2014-12-08 19:27:25 -08:00
Jatin Matani
2bdd5290a9 Merge "Hook for fetching sync content from UserHistoryDict" 2014-12-08 20:00:10 +00:00
Tadashi G. Takaoka
5ac8b040e8 Merge "Remove RichInputMethodManager.updateShortcutIME call from SubtypeSwitcher" 2014-12-06 01:44:54 +00:00
Andy Wang
8584db1461 Add keyboard margin options to place the keyboard dynamically.
Keyboard location and location can now be set in the debug options
section.

Change-Id: I87c5a1d679489e12dccf26632c399af28087629e
2014-12-05 16:21:20 +09:00
Keisuke Kuroyanagi
e79d504cf5 Merge "Cancel interval alarm for dictionary decaying in onDestroy." 2014-12-03 02:32:52 +00:00
Keisuke Kuroyanagi
47ae0c3af4 Cancel interval alarm for dictionary decaying in onDestroy.
Bug: 18528171
Change-Id: I6e12c006bd9eff15f3fa9cfd335bdd9fa081be61
2014-12-02 15:10:10 +09:00
Andy Wang
d179e40899 Stop passing through keyPrefs as it's already available.
Change-Id: I43a56beba0cf0fdf5f93c5c764edbd279ee033b2
2014-12-02 05:17:51 +00:00
Adrian Velicu
11a3965f8c Fix a misspelled method name
Change-Id: I1151dc1d5db3986a97daf68c1e387dbc2e4610dc
2014-12-02 12:53:56 +09:00
Tadashi G. Takaoka
4486314225 Remove RichInputMethodManager.updateShortcutIME call from SubtypeSwitcher
Change-Id: I5661a7926cf5a404788516c542b25cc0707bb417
2014-12-01 12:16:10 +09:00
Jean Chalard
949045b6a3 Merge "Be always confident in the current language when only one" 2014-11-28 03:25:29 +00:00
Jean Chalard
2d81c1f183 Be always confident in the current language when only one
Change-Id: I7ea289f7e78aa33562c7737e91024a25c02333b6
2014-11-28 12:22:16 +09:00
Tadashi G. Takaoka
063b2e8d71 Merge "Make LocaleUtils.constructLocaleFromString as @Nonnull" 2014-11-28 03:02:20 +00:00
Tadashi G. Takaoka
b0a0ce0b31 Remove unused import and local variable
Change-Id: I256d1c6bf96c07b10d2d063d7935e20e0ab8ea17
2014-11-28 11:53:12 +09:00
Tadashi G. Takaoka
60d880cf5e Remove unnecessary code of CustomInputStylePreference
Change-Id: I68d2c85139e01684d5f0705f621ba223fc5e4425
2014-11-27 17:05:37 +09:00
Tadashi G. Takaoka
2ffcad113a Merge "Remove unused code from DictionaryFactory" 2014-11-27 03:01:46 +00:00
Jatin Matani
12d63820d4 Hook for fetching sync content from UserHistoryDict
Add API to ExpandableBinaryDictionary to dump content
from a given dictionary. We use this for dumping data
for sync process.

Refactored UserHistoryDictionaryTests to scrap out the util
methods for testing. These utility methods would be used
for testing sync + user dictionary code in LatinIMEGoogleTests

Bug:18106539
Change-Id: I357f9192ea1bd69a526d0b620c25616a2e8e9d5b
2014-11-26 11:17:24 -08:00
Jean Chalard
56577461d6 Allow whitelist changes when no close word
When there isn't a close word in another language of the
current multi-language set, we allow whitelist entries
to take force even if we are not confident in the current
language.

Bug: 18063142
Bug: 18130489
Bug: 18132240
Bug: 18136721
Bug: 18200415
Change-Id: I044674ba7b70aa86ab2a48d2e4d53a1c8007b62c
2014-11-26 18:43:22 +09:00
Jean Chalard
e752aab70d Use confidence to fix whitelist
With this the most obvious problem is fixed. However there
are two remaining items : we should still enforce whitelist
when there are no close candidates at all, and we should
start in confident mode when pressing the globe key.

Bug: 18063142
Bug: 18130489
Bug: 18132240
Bug: 18136721
Bug: 18200415
Change-Id: Ibc0571ae35fc28f8d13760aa86b25db1163d3e31
2014-11-26 17:29:59 +09:00
Jean Chalard
d06dd0ca12 Add confidence.
Bug: 18063142
Bug: 18130489
Bug: 18132240
Bug: 18136721
Bug: 18200415
Change-Id: Ica09d11cb95308dd014c4e4e0d99a30dd66bfea9
2014-11-25 14:41:27 +09:00
Tadashi G. Takaoka
a414b81a6c Remove unused code from DictionaryFactory
Change-Id: I666308ada968ee7993235ad98b92f2ad522af122
2014-11-21 17:58:50 +09:00
Tadashi G. Takaoka
8a711f2a54 Remove unneeded Context argument
Change-Id: Ib34931836a617d0dc049fb3c9ae6686374ec8c12
2014-11-21 12:49:04 +09:00
Tadashi G. Takaoka
ebe5b42f71 Make LocaleUtils.constructLocaleFromString as @Nonnull
Change-Id: I82d574c67b25239510f3ecc8882efe46e40677eb
2014-11-21 12:02:06 +09:00
Jean Chalard
a7efe06208 Annotate the typed word with its source dictionary
...when applicable of course. This will allow for informing the
language switching authorities that the typed word was a
specific language, instead of leaving them in the dark.

Bug: 18063142
Bug: 18130489
Bug: 18132240
Bug: 18136721
Bug: 18200415
Change-Id: Ice3e7026a68c3018f54d730ec84f6762bf55899b
2014-11-20 18:31:01 +09:00
Jean Chalard
a94733cbca Fix an NPE.
Change-Id: Ie5ab5cc716ef1211eb9ad76baa0467455e1f1a71
2014-11-20 14:48:33 +09:00
Jean Chalard
1d80cb2301 Merge "Fix a NPE" 2014-11-20 05:28:47 +00:00
Jean Chalard
a2cb2f36a6 Make the typed word a SuggestedWordInfo
That allows to carry the language information in an
accurate manner.

Bug: 18063142
Change-Id: I0bca8981372ae10648274095b18b26a3686b762b
2014-11-20 13:57:01 +09:00
Jean Chalard
0e00f5fe3a Fix a NPE
Bug: 18451316
Change-Id: Ia20bf388471f84c963354df050182e722d966a02
2014-11-20 13:50:27 +09:00
Jean Chalard
8736f2d719 Merge "Fix oscillations on ICS" 2014-11-19 10:23:28 +00:00
Jean Chalard
9444d70514 Fix oscillations on ICS
Bug: 18181427
Change-Id: Ib4dd62037b1f7b2d10496ee3e45b4a138e29f90a
2014-11-19 19:22:04 +09:00
Jean Chalard
fde0cce103 Merge "Remove the other deprecated constructor to SuggestedWords" 2014-11-19 08:30:03 +00:00
Tadashi G. Takaoka
b9116af29f Fix SubtypeLocaleUtils.getSubtypeNameForLogging accepting null
Change-Id: Ic5cb55e24a2d843027ccc4e8e5d6954f9391c125
2014-11-19 11:57:49 +09:00
Jean Chalard
6d1201915d Rename a confusing method name
...and fix a bug that happened because of it.

Bug: 18417740
Change-Id: I7a33780adcb8f4e2625abcd3eec906dfee1f5dcf
2014-11-18 11:52:35 +09:00
Jean Chalard
83f9524b87 Remove the other deprecated constructor to SuggestedWords
Change-Id: Ied821df01e032ebc913d2f15dffdf41a51372ea4
2014-11-17 16:23:52 +09:00
Adrian Velicu
91a81a2790 More verbosity when reporting broken dictionaries
Also added toString for AssetFileAddress for easier debugging.

Change-Id: Ie5d15d12bae46c31b28d8c67002e627f4c6690e3
2014-11-14 13:42:24 -08:00
Adrian Velicu
39d50e7e7a Merge "UpdateHandler to support v202 dicts." 2014-11-14 03:45:32 +00:00
Jatin Matani
d60f9c046e Merge "Implement UserHistoryDictionary for each user account." 2014-11-14 00:46:37 +00:00
Jatin Matani
5365191a9d Implement UserHistoryDictionary for each user account.
UserHistoryDictionary currently uses locale to determine the
UserHistoryDictionary on the filesystem. With this change we
use the account name as well. Thus each UserHistoryDictionary
would following the following spec:

UserHistoryDictionary.<locale>.<account>.dict.
In case no account is selected, we default to the existing
spec:
UserHistoryDictionary.<locale>.dict

Example
UserHistoryDictionary.en_US.testaccount@example.com.dict

Bug: 18104749
Change-Id: Iab031e166b55cf2ded68275a7e9be22475737b37
2014-11-13 14:21:38 -08:00
Tadashi G. Takaoka
d6e367ff5b Move isRtlLanguage method to LocaleUtils
Change-Id: I485a076b81927fed0da593216fea2c740449ef4c
2014-11-12 16:47:38 -08:00
Tadashi G. Takaoka
63e076764b Merge "Add RichInputMethodSubtype.getKeyboardLayoutSetName" 2014-11-13 00:41:10 +00:00
Tadashi G. Takaoka
6de31466b0 Add RichInputMethodSubtype.getKeyboardLayoutSetName
Change-Id: I90cc74ee882e8aa2b243885d3b994223ca3b6f44
2014-11-12 15:41:38 -08:00
Tadashi G. Takaoka
1dfdd9b509 Clean SubtypeLocaleUtils a bit
Change-Id: If8b981715983e3a12867c9b7c53bfa5effaddd39
2014-11-12 15:14:52 -08:00
Adrian Velicu
de29278592 UpdateHandler to support v202 dicts.
Change-Id: Ib61a5005a82927f5e12a19c9c14f20d46572cf31
2014-11-12 12:04:38 -08:00
Tadashi G. Takaoka
0d6ce46528 Move logic to determine spacebar text to LanguageOnSpacebarHelper
Change-Id: Ib9dbbb4bd4e35c15fd752c364d3012e8a7da2410
2014-11-08 18:50:59 -08:00
Tadashi G. Takaoka
ec0d6bb9b7 Merge "Move current subtype management code to RichInputMethodManager" 2014-11-07 18:02:22 +00:00
Jean Chalard
5c4f642df6 Merge "Move util classes under common" 2014-11-07 09:15:35 +00:00
Jean Chalard
5b91b551e5 Move util classes under common
Also why did we have two copies of LocaleUtils >.>

Bug: 18108776
Change-Id: I03b4403dfd51934e66b567f2f8b87da419cfb3ab
2014-11-07 18:00:03 +09:00
Jean Chalard
e0c2e5b2f7 Merge "Remove a deprecated constructor to SuggestedWords" 2014-11-07 08:49:26 +00:00
Jean Chalard
c3e211bd6b Remove a deprecated constructor to SuggestedWords
Change-Id: If4d358b3a11fb25fc214c728269519d8c25f9adc
2014-11-07 16:40:24 +09:00
Tadashi G. Takaoka
7286667754 Merge "Move shorcut IME related code from SubtypeSwitcher to RichInputMethodManager" 2014-11-07 06:20:07 +00:00
Jean Chalard
536bf61658 Merge "Remove dicttool dependency to NativeSuggestOptions" 2014-11-07 06:00:40 +00:00
Tadashi G. Takaoka
7fb0ed58ed Move current subtype management code to RichInputMethodManager
Change-Id: I82d5a17a5ec96f26047d29e79f3f28850fc5b3bb
2014-11-06 11:51:07 -08:00
Tadashi G. Takaoka
8a2c4afad4 Move shorcut IME related code from SubtypeSwitcher to RichInputMethodManager
Change-Id: I0f95f603d80570c937e8c38ded88df341c11795e
2014-11-06 11:51:07 -08:00
Tadashi G. Takaoka
2a7da0ab87 Move some methods out from SubtypeSwitcher
Change-Id: I89aaf87d7d0cc204b0ca0f61c2f64d15e2df848e
2014-11-06 11:51:01 -08:00
Jean Chalard
03eb9de961 Remove dicttool dependency to NativeSuggestOptions
Bug: 18108776
Change-Id: I0f57594617f8d5080aea9002b2356d18bfe97043
2014-11-06 21:38:11 +09:00
Jean Chalard
ab68143ad0 Fix a bug where LatinIME would recorrect with no input view
Bug: 18071127
Change-Id: I634d1f63f7d5c5b7453ed7559f9b65fa0433dcd8
2014-11-05 17:41:15 +09:00
Tadashi G. Takaoka
98dfa6e334 Fix MainKeyboardView visibility must be aligned with main keyboard frame
Bug: 18105755
Change-Id: Ifdcaded538d0eac3b100486ddf27ae4314293792
2014-11-04 13:17:07 +09:00
Ken Wakasa
f296e7cdfa Small comment fixes
Change-Id: Iecb432c414eadf13ee6a57fb21fc02d1c27e777f
2014-11-02 23:54:20 +09:00
Keisuke Kuroyanagi
b3bae2e89b Merge "Update v4 format version from 402 to 403." 2014-10-31 14:19:44 +00:00
Tadashi G. Takaoka
ef8068f9a8 Merge "Add helper methods to convert flags to readable text" 2014-10-31 10:12:37 +00:00
Keisuke Kuroyanagi
ea468cc9de Update v4 format version from 402 to 403.
Without personalization:
Total words: 1134774, Success Num: 899230, Success Percentage: 79.243%
Bad Failures, with auto-correction (typed word == expected word, output word != expected word): 1871, Bad Failure Percentage: 0.165%
Failures, with auto-correction (F-C): 29084, F-C Percentage: 2.563%
Max Keystrokes: 6072959, Min Keystrokes: 4436090, Keystroke Saving Percentage:26.953%

Before:
Total words: 1134646, Success Num: 925194, Success Percentage: 81.540%
Bad Failures, with auto-correction (typed word == expected word, output word != expected word): 1316, Bad Failure Percentage: 0.116%
Failures, with auto-correction (F-C): 28288, F-C Percentage: 2.493%
Max Keystrokes: 6072831, Min Keystrokes: 3946188, Keystroke Saving Percentage:35.019%

After
Total words: 1134659, Success Num: 944746, Success Percentage: 83.263%
Bad Failures, with auto-correction (typed word == expected word, output word != expected word): 1258, Bad Failure Percentage: 0.111%
Failures, with auto-correction (F-C): 28016, F-C Percentage: 2.469%
Max Keystrokes: 6072844, Min Keystrokes: 3387333, Keystroke Saving Percentage:44.222%

Change-Id: I3af42ec37a11847c0429c28616e726f6a339247f
2014-10-31 17:23:39 +09:00
Jean Chalard
5840a7c6e7 Merge "Remove Dict dependency on WordComposer and ProximityInfo" 2014-10-31 07:59:12 +00:00
Tadashi G. Takaoka
9dc3ae84ee Add helper methods to convert flags to readable text
Change-Id: I23608927cef8a897ff4ad8c938560cc78093ddac
2014-10-31 16:20:20 +09:00
Ken Wakasa
ed575b62da Merge "Add documentation for CollectionUtils#arrayAsList" 2014-10-31 07:07:07 +00:00
David Faden
d443146c34 Add documentation for CollectionUtils#arrayAsList
(This is a cherrypick of http://ag/576739)

Also, modify the IllegalArgumentException to capture the
values passed for start, end, and array.length to make
debugging easier in the unlikely event that it is thrown.
Add corresponding tests for the exceptions.

Tested:
tapas LatinImeGoogle LatinImeGoogleTests userdebug
make -j30 && \
adb install -r \
out/target/product/generic/data/app/LatinImeGoogleTests/LatinImeGoogleTests.apk && \
adb install -r \
out/target/product/generic/system/app/LatinImeGoogle/LatinImeGoogle.apk && \
adb shell am instrument -w -e class \
com.android.inputmethod.latin.utils.CollectionUtilsTests \
com.google.android.inputmethod.latin.tests/android.support.test.runner.AndroidJUnitRunner

Change-Id: I0c579ca4f4f2a9b2575aa6f8fa75e3ee4a21cf8a
2014-10-31 06:18:35 +00:00
Adrian Velicu
88480f39f6 Update unit tests for new static dict version.
Bug: 11031090
Change-Id: Ifd7b241f1a0a30678ca7de97cc6e96927a9b5c8f
2014-10-31 14:50:18 +09:00
Adrian Velicu
7c87859d4c Using "blacklist" flag as "possibly offensive"
Bug: 11031090
Change-Id: I5cc0d006ab003656498eb82b0875eb9c051d331e
2014-10-31 14:33:05 +09:00
Andy Wang
0ca400c827 Merge "Add a preference to resize the keyboard height." 2014-10-30 03:37:26 +00:00
Andy Wang
bb9400aebc Add a preference to resize the keyboard height.
The keyboard height is controlled by a slider in the debug preferences.
Without access to debug preferences, this change is a no-op.

Bug: 6867494
Change-Id: I984064ed1cab752876615f5ed582818474d6041b
2014-10-30 11:45:41 +09:00
Tadashi G. Takaoka
051f8b1442 Consolidate similar methods
This CL consolidates similar methods in MainKeyboardView.
- startWhileTypingFadeinAnimation and startWhileTypingFadeoutAnimation
- showSlidingKeyInputPreview and dismissSlidingKeyInputPreview

Change-Id: I607ab74683820de2456af3e75663cf8cf358ab38
2014-10-30 11:15:59 +09:00
Tadashi G. Takaoka
4e0149c22a Merge "Remove DrawingHandler" 2014-10-29 13:42:44 +00:00
Jean Chalard
93e5cdea71 Merge "[CS8] Add explanations" 2014-10-29 12:26:23 +00:00
Tadashi G. Takaoka
2ad6d9cda3 Remove DrawingHandler
Change-Id: I658a5b16cca1e56f0b944009b8aef09e0a97a0db
2014-10-29 18:51:41 +09:00
Tadashi G. Takaoka
ca6e5dfedb Remove DrawingHandler.Callbacks.dismissAllKeyPreviews()
Change-Id: I2b11ca0dec0f3522648557a9a909f305cc4170fb
2014-10-29 15:25:09 +09:00
Jean Chalard
ecab6aff59 Remove Dict dependency on WordComposer and ProximityInfo
Bug: 18108776
Change-Id: I9b399a44241e05a7add9bb8094263aa76de37880
2014-10-29 12:27:24 +09:00
Jean Chalard
36799b2aa2 Move InputPointers and ResizableIntArray to common
Bug: 18108776
Change-Id: Ie5c0430aa41a8d6c58bf510a10173223d7dfe9fe
2014-10-29 12:09:11 +09:00
Jean Chalard
4beeb9253a Move StringUtils under common.
Bug: 18108776
Change-Id: Ia46a4102a0e86e71118ca5e641f9f531998e166b
2014-10-28 22:44:30 +09:00
Jean Chalard
ca724ef71f Reduce StringUtils dependency on the Android libs
Bug: 18108776
Change-Id: I43feb25d79f89276d44462ba71788a14c4583277
2014-10-28 22:03:18 +09:00
Tadashi G. Takaoka
fec5219974 Fix Serbian Latin subtype handling
This CL also adds unit tests for Hinglish and Serbian Latin.

Bug: 9687668
Bug: 17169632
Change-Id: Ib9aa1bcdf5b390a9d8c61f07165beacf850e2692
2014-10-28 18:36:16 +09:00
Tadashi G. Takaoka
395009c03e Fix NPE in AppearanceSettingsFragment
Bug: 18147440
Change-Id: I7a7a47b3484e54146d34d11b5bd9c1305421d829
2014-10-28 15:02:31 +09:00