Commit graph

1370 commits

Author SHA1 Message Date
Jean Chalard
7a408431fe Check the magic number of a decoded file
Checking the magic number of a file upon decoding is necessary,
because if the file is corrupt and we don't check it, we will
fall back to a simple copy of the corrupted file. Latin IME
would realize this and would not crash, but would not use the
corrupted dictionary. If this happened to be a main dictionary,
then the user would lose the ability to use the correct
built-in dictionary.

Not the same, but kinda similar to
Bug: 5223031

Change-Id: Ic2783dc9dd5f3dcf2865623d9452765fe3778db7
2011-08-31 14:37:11 +09:00
Tadashi G. Takaoka
b8dc674663 Get rid of MeasureSpec.UNSPECIFIED
Bug: 5023981
Change-Id: I14ded3c3d554ac72b66f190110652f54d91df954
2011-08-31 14:15:20 +09:00
Tadashi G. Takaoka
241f1cfdf6 Add outputText and icon to the Key constructor
This is a follow up change for I737bacb1.

Bug: 5023981
Change-Id: I980e3e993c81afe4fbdb95c9c263d7aa52aff66c
2011-08-30 21:47:12 +09:00
Tadashi G. Takaoka
39cc806605 Merge "Cleanup keyboard related code a bit" 2011-08-30 03:40:37 -07:00
Tadashi G. Takaoka
c06d0ef01d Cleanup keyboard related code a bit
Change-Id: I04f1014ab3b115bd457e25a267d2e46d306c8a0e
2011-08-30 19:16:46 +09:00
Tadashi G. Takaoka
392276d73d Add Key constructor for suggestions pane
Bug: 5023981
Change-Id: I737bacb1a6bb40f70be65d6eff85614afe6c79ed
2011-08-30 19:14:52 +09:00
Tadashi G. Takaoka
84b1284d01 Revert "Add hintLabel to Key constructor"
This reverts commit be34d97334.

Bug: 5023981
Change-Id: I34f75cde035f04a9a82c9259442ed0e255cb7118
2011-08-30 18:40:21 +09:00
Tadashi G. Takaoka
be34d97334 Add hintLabel to Key constructor
This change also partialy reverts I5832421c, because of incorrect
popup mini key width calculation.

Bug: 5023981
Change-Id: I1acde090c01d3d861fcc5559cad81e638de2c2bb
2011-08-30 16:48:38 +09:00
Tadashi G. Takaoka
619f707c95 Fix another mismatched attribute in KeyboardView
This is a followup of Iea7f8f34.

Bug: 5023981
Change-Id: I1135383ff0f0a2b8a5940d0d5c407fd01706a7f7
2011-08-30 15:19:42 +09:00
Tadashi G. Takaoka
3e63fbe400 Fix mismatched attribute in KeyboardView
This is a followup of Iea7f8f34.

Bug: 5023981
Change-Id: Ice6d949581aea7ca68799be2b91ff28234dd88d6
2011-08-30 14:55:56 +09:00
Tadashi G. Takaoka
3b71e5fae6 Merge "Add keyLetterSize and keyLabelSize as KeyboardView attribute" 2011-08-29 08:13:29 -07:00
Tadashi G. Takaoka
83da6c18fb Add keyLetterSize and keyLabelSize as KeyboardView attribute
Bug: 5023981
Change-Id: Iea7f8f340775cbb093c50d6e741b2f1476e9ac39
2011-08-29 23:45:05 +09:00
Tadashi G. Takaoka
2315bfc7c8 Clean up some MiniKeyboard.Builder code
Change-Id: I5832421cab3d496d4bb8a5e9902d0b5f4929fd0b
2011-08-29 21:15:05 +09:00
Tadashi G. Takaoka
a9311741b8 Merge "Add KeyboardActionListener.Adapter" 2011-08-29 03:19:04 -07:00
Tadashi G. Takaoka
e3be3bcebc Add KeyboardActionListener.Adapter
Change-Id: If13df42efffc7cef746c09d5abfe7a8619452a0b
2011-08-29 19:09:56 +09:00
Jean Chalard
5406d63d34 Merge "Fix a bug with synchronicity of spell checking/user dict" 2011-08-29 02:55:46 -07:00
Tadashi G. Takaoka
46286874f3 Add guard to prevent possible IllegalStateException
Bug: 5227682
Change-Id: Iff93b425f52981b5e2c65e309b07bcfe4485eeb1
2011-08-29 18:38:04 +09:00
Jean Chalard
f019d505d7 Fix a bug with synchronicity of spell checking/user dict
This fixes a race condition that would end up with the spell
checker not finding some words in the user dictionary when it
just booted.

Bug: 5194627
Change-Id: I1ba911cc53e6ae3b111d54a6f91d1d5feef3f5de
2011-08-29 18:33:20 +09:00
Tadashi G. Takaoka
ed23cc7f0b Merge "Make PopupPanel decoupled with LatinKeyboardView and Keyboard" 2011-08-29 01:27:07 -07:00
Tadashi G. Takaoka
f44a01b408 Make PopupPanel decoupled with LatinKeyboardView and Keyboard
Bug: 5023981
Change-Id: Ib4fd55d52718aa244178ca2313f5e8487378324f
2011-08-29 17:07:48 +09:00
Jean Chalard
940514989a Merge "Move locale-related utility methods to LocaleUtils." 2011-08-28 20:34:02 -07:00
Jean Chalard
ef35cb631c Move locale-related utility methods to LocaleUtils.
Change-Id: I7e9e6e5bc4486d8618d0213b112308c3d305c15e
2011-08-29 12:29:35 +09:00
Tadashi G. Takaoka
85b4752270 Merge "Move debug information back to suggestions strip" 2011-08-26 04:07:00 -07:00
Tadashi G. Takaoka
013ba3e3e7 Move debug information back to suggestions strip
Change-Id: I8cfad5f780a481a251cc4f752bff3cda5ae3ffbe
2011-08-26 20:05:19 +09:00
satok
add3e05379 Do not put the suggestion span for obsolete suggestions.
Bug: 5219037

Change-Id: I0300fbc7e1cc97f0f8ba4d21e0e699d9fe66ed76
2011-08-26 19:12:18 +09:00
Tadashi G. Takaoka
7fe084a856 Merge "Fix "touch to save" colors" 2011-08-26 03:06:40 -07:00
Tadashi G. Takaoka
c04bbc1ae9 Fix "touch to save" colors
Bug: 5218662
Change-Id: I094b2ceb7438148eb5bdf620b188f598e8442a07
2011-08-26 18:55:36 +09:00
Tadashi G. Takaoka
f3f3189adb Wrap up popup mini keyboard
Bug: 5218641
Change-Id: I88b3e7efa1f7c009c8a8e4f5453a5c4df2f91cfc
2011-08-26 15:45:05 +09:00
Jean Chalard
de4e8dedcc Allow sharing dictionaries between similar locales.
Bug: 5058488
Change-Id: Ib12013f58afad957a8205b439f87480cc12ea06f
2011-08-25 19:42:06 +09:00
Jean Chalard
a16621ada4 Add a debug variable
...that was missing

Change-Id: Ia3b17909f295e0a93dee633c8d67c0e03840023e
2011-08-24 21:36:18 +09:00
Jean Chalard
20973de72b Avoid unnecessary output to the system log.
The message this removes gets printed under normal conditions.
Normally dictionary files are compressed then crypted, but not
compressed a second time; however LatinIME tries to open a
compressed-crypted-compressed file first, because it could not
do it afterwards and we want to support this case. So under
normal operations, the first method LatinIME tries is actually
expected to fail.
Also, if we decide to stop compressing or/and encrypting dicts
LatinIME supports it as a valid use case. It should not print
errors to the log.

If the file cannot be open at all, then it is an unexpected
case, and Latin IME still reports to the log.

Change-Id: Ic5228c51365a101af1d03e2c893484d3050b5a1c
2011-08-24 20:27:04 +09:00
Tadashi G. Takaoka
1d59e0dbdf Merge "Fix suggestions strip press state to align vertically" 2011-08-24 03:35:57 -07:00
Tadashi G. Takaoka
580e1d7ac0 Fix suggestions strip press state to align vertically
This change also tweaks more_suggestions_hint drawables to eliminate
unnecessarily padding at the bottom.

Bug: 5204563
Change-Id: If5ec731c9a490da0116a020e8fd405c7d025d707
2011-08-24 18:15:19 +09:00
Jean Chalard
38d512c0b2 Call the decrypt/unzip routines upon copying a dictionary.
Bug: 5095140
Change-Id: I7000f752bc9b7fd6a7af4839b2f225c085300128
2011-08-24 17:12:12 +09:00
Jean Chalard
8b21eb2507 Merge "Refactoring: cut out a method for caching a word list" 2011-08-23 23:17:31 -07:00
Jean Chalard
7b1f74bb9d Refactoring: cut out a method for caching a word list
This is preparation to have the decrypting/unzipping code
moved over to LatinIME.

Bug: 5095140
Change-Id: Ic3fdcc3de673b46cef2eb9ebe6a52cbdd614e50a
2011-08-24 15:09:57 +09:00
Tadashi G. Takaoka
fd47b5d09c Merge "Move some static methods from SubtypeSwitcher to Utils" 2011-08-23 22:39:51 -07:00
Tadashi G. Takaoka
af52c0ea04 Implement "forceAscii" private IME option
This change also introduces "AsciiCapable" extra value for subtype
that indicates the subtype can input any ASCII code point from its
keyboard layout.

Only if the input field has "forceAscii" private IME option and the
current subtype doesn't have "AsciiCapable" extra value, the en_US
keyboard layout will be used for the input field.

Bug: 3384942
Change-Id: I25e2553e37ecb5002df1164e45f6273845fe463b
2011-08-24 13:19:56 +09:00
Tadashi G. Takaoka
57f05f4412 Move some static methods from SubtypeSwitcher to Utils
Change-Id: I3ea8ffcdefcefaa82ae76a31bb65977009d8a040
2011-08-24 12:54:53 +09:00
Jean Chalard
1616e2e96e Merge "Fix an excessive fallback problem." 2011-08-23 02:12:17 -07:00
Tadashi G. Takaoka
c84bc3460d Rename LatinKeyboardBaseView to LatinKeyboardView
Bug: 5182291
Change-Id: I5089a14902b9f4ff1ab4f34e3f7a42aca5040d3e
2011-08-23 17:57:02 +09:00
Jean Chalard
0ee3b69483 Fix an excessive fallback problem.
LatinIME has several fallbacks to ensure a dictionary is used.
However, it should now be possible to deactivate the main dictionary
through the dictionary pack settings. In this case, Latin IME should
not fallback to the built-in dictionary.

Change-Id: Ibd992ad89793169f04a968b40781fce819b87b6f
2011-08-23 17:55:46 +09:00
Tadashi G. Takaoka
32572948d7 Refactor and rename popup mini keyoard related classes
Change-Id: Ia92ec4612090b03829db9a87ce68d701db6e15bc
2011-08-23 17:51:57 +09:00
Tadashi G. Takaoka
2d306a225c Merge "Extract sudden jumping touch event hack into separate class" 2011-08-23 01:49:38 -07:00
Tadashi G. Takaoka
c403a46f6d Extract sudden jumping touch event hack into separate class
Bug: 5182291
Change-Id: I6a88ed4df3ec98e31ea4966d82da56f7fca342ac
2011-08-23 17:44:41 +09:00
Tadashi G. Takaoka
2b27f3e698 Merge "Remove password field special handling" 2011-08-23 01:29:11 -07:00
Tadashi G. Takaoka
f9da4c548f Remove password field special handling
Change-Id: Iaf1b4bbb54be7a4cade856d1ba363e976774f442
2011-08-23 16:49:35 +09:00
Tadashi G. Takaoka
0940093c30 Merge "Remove screen orientation confirmation hack" 2011-08-23 00:39:19 -07:00
Jean Chalard
d6834c8125 Merge "Fix a bug with the string pool." 2011-08-22 23:05:51 -07:00
Tadashi G. Takaoka
f94df382fb Remove screen orientation confirmation hack
Bug: 4311428
Change-Id: Ie7e094ded9c7c1fe811b7eb97bc33ffecb29a73c
2011-08-23 14:58:45 +09:00
Jean Chalard
a6e912cf98 Fix a bug with the string pool.
This also adds some optional debug code to detect more easily possible
future occurrences of the same problem.

Bug: 5195017
Change-Id: I2558b468e46f7090de868f1ec2dc9e24895d670f
2011-08-23 14:55:34 +09:00
Tadashi G. Takaoka
6dde878d51 Move some methods from LatinKeyboardView up into LatinKeyboardBaseView
Bug: 5182291
Change-Id: I699ecef6fb8ea492d96fca1939f51faf0aac7fa6
2011-08-23 12:22:24 +09:00
Tadashi G. Takaoka
9f31575045 Merge "Fix suggestions strip text colors" 2011-08-22 03:32:05 -07:00
Tadashi G. Takaoka
d47a955610 Fix suggestions strip text colors
This change also shows the valid typed word in bold face.

Bug: 5161713
Change-Id: I15355a11888fc8ef90ecc8b64a52eb08c1a2b367
2011-08-22 18:56:54 +09:00
Jean Chalard
70a92a33f8 Merge "Remove duplicates from the spell checker suggestions." 2011-08-22 02:49:33 -07:00
Jean Chalard
6b166a1933 Remove duplicates from the spell checker suggestions.
Bug: 5175740
Change-Id: I592401b3b8c3074d70e06dc3a9919cc3cb47ba49
2011-08-22 18:44:04 +09:00
Tadashi G. Takaoka
b39f612d97 Remove hacks related to determine window width
Bug: 4311428
Change-Id: Ic93f264101d13963503fcd447a69bbffd06e69f3
2011-08-22 17:17:42 +09:00
Jean Chalard
5d4c5692f1 Fix case sensitivity for the spell checker.
The new behavior is as follows:
- If the word in the dictionary is not fully lower case, then the
exact case is required to match.
- If the word in the dictionary is fully lower case, then any of
the following patterns match:
  - fully lower case
  - only the first char capitalized
  - all caps
Any other capitalization is rejected.

This is probably what people want. If you type a name in all lower
case, it should be marked as a typo, but if you type a word with a
capital for emphasis or just because it's the start of the sentence,
it should match a lower case word in the dictionary. If you have
a spurious capital letter in the middle of a word because of a typo,
it should be marked as such.

Accents are not affected, and should not be. An accented letter
is a different letter and a missing accent should be reported.
We should maybe consider again for some common transpositions
like the "ue" digraph for German, which is now considered a typo,
but will suggest the correct diacritics as the first suggestion.

Bug: 5145751
Change-Id: I651e24f13c90fb94700a1674ad380e95336e7dca
2011-08-22 14:02:57 +09:00
Ken Wakasa
cee174b8cc Settings key visibility should always follow the system default value,
by ignoring its preference value, when the "show settings key option" in
the settings is disabled.

Change-Id: I934be2d9eb0bf6bf731e03f5d9b752de4a7a1c7c
2011-08-22 12:21:25 +09:00
Jean Chalard
6da8b74582 Move the dupes-removing method to the Utils class
This is preparation for bug: 5175740

Change-Id: I18b2042317f740cb1e021d3dfbf90ecfbb1a1d37
2011-08-19 19:49:59 +09:00
Jean Chalard
150bad6fd4 Have the spell checker use the User dictionary.
Bug: 5175868
Change-Id: I165eee4c865caa5ee1daf3e0b1acde8788b996ef
2011-08-19 17:19:49 +09:00
Jean Chalard
1e841de2ce Merge "Check the main dict id to be able to fallback." 2011-08-18 19:55:16 -07:00
Ken Wakasa
e56e88beff A follow up to I830de4d1
bug: 5130446
Change-Id: Ib1a4603590387c30be7555b8386f5e0607ea7249
2011-08-18 21:51:04 +09:00
Jean Chalard
ee7daefd97 Check the main dict id to be able to fallback.
Bug: 5095140
Change-Id: I02032923ca2a65bd8fbabc0abbe6a476f7542187
2011-08-18 20:09:35 +09:00
Jean Chalard
89fdb82753 Merge "Move the settings test to a more appropriate place." 2011-08-18 03:39:08 -07:00
Jean Chalard
83207fb482 Move the settings test to a more appropriate place.
This change refactors the dictionary selection code so that the
cached dictionary files list and the settings tests are more
cleanly separated.
This will also help with future refactorings that will test for
the presence of the main dictionary and insert the fall back if
it's not supplied by the dictionary pack.

Bug: 5095140
Change-Id: I8d7caad7c054031df71fe78b043801a774d50f65
2011-08-18 19:35:52 +09:00
Jean Chalard
4e01afc520 Make the string builder pool in Suggest a singleton.
This is internal refactoring, done as preliminary work to fix
Bug: 5175740

Change-Id: I21bd4c001c27e7b925ddb87a152105b4dcab320a
2011-08-18 18:41:57 +09:00
Jean Chalard
5ba5ff9b80 Merge "Exception refactoring" 2011-08-18 02:36:42 -07:00
Jean Chalard
03c3b64ee5 Merge "Refactor string removal to make it static" 2011-08-18 02:36:32 -07:00
Jean Chalard
3016863f86 Refactor string removal to make it static
The next step is to move this over to the Utils class.
The ultimate goal is to make use of the duplicate removal code
also in the spell checker as per
Bug: 5175740

Change-Id: Ica36691b843b0713b832c56ffc65e5b2ec427c4a
2011-08-18 15:16:59 +09:00
Jean Chalard
80e0bf0429 Exception refactoring
Now that the dictionary pack can return several files, it's better
to handle IO exceptions for each file rather than globally. This
also will help with next implementation steps.

Bug: 5095140
Change-Id: I5ed135ad2ad4f55f61f9b3f92c48a35d5c24bdb2
2011-08-18 15:11:19 +09:00
Jean Chalard
091bbf85d8 Merge "Factor dict pack settings reading into a static inner class" 2011-08-17 19:34:31 -07:00
Jean Chalard
c11c4fd61b Factor dict pack settings reading into a static inner class
This is essentially refactoring to help next steps

Bug: 5095140
Change-Id: Ic97044d2ed354027bac4f84e6ce69d20ef6da092
2011-08-17 11:25:21 +09:00
Tadashi G. Takaoka
961453c3b3 Merge "Get rid of auto correction flash animation in the suggestion strip" 2011-08-16 18:49:36 -07:00
Ken Wakasa
e486175987 Merge "Fixed speaking keys when editing password fields" 2011-08-16 18:45:26 -07:00
Tadashi G. Takaoka
bea6b72106 Get rid of auto correction flash animation in the suggestion strip
This change also reverts I1350ad3d.

Bug: 5156762
Change-Id: I047e75699e8eea02204ad95e12dcc0aefe49ac34
2011-08-16 17:47:23 -07:00
Tadashi G. Takaoka
5cb10f78ed Fix possible NPE
Bug: 5171442
Change-Id: I280f6a0ef5fb06f1e03e17c0065d078604e4747a
2011-08-16 17:36:13 -07:00
Jean Chalard
c160373b6a Close dictionary pools when they are not used any more.
Bug: 5156851
Change-Id: Icaba54734eb790b40dc2012aac25df5b2af71dbb
2011-08-16 20:04:57 +09:00
Jean Chalard
29ea7b79c7 Merge "Have a pool of dictionaries to check spelling." 2011-08-16 03:05:50 -07:00
Yusuke Nojima
dbf4f2a552 Merge "Pass the touch event in the top padding of keyboard." 2011-08-16 03:04:30 -07:00
Yusuke Nojima
5ec13092a5 Pass the touch event in the top padding of keyboard.
Bug: 5139932
Change-Id: Id176f92f69160f76ae7e0d46cb3d639080779497
2011-08-16 18:33:40 +09:00
Jean Chalard
a562767a14 Have a pool of dictionaries to check spelling.
The dictionaries and proximities are not thread-safe. In order to
be able to check spelling in parallel, make a dictionary pool to
call upon when a spelling check is necessary.

Bug: 5156851
Change-Id: Ie3796164187dd7b7abf5ccd5d014073d43d74408
2011-08-16 18:13:12 +09:00
Ken Wakasa
f18bda60aa Code cleanup
Change-Id: I7df8c813038adec750eda260740bcc8a4da41acf
2011-08-16 17:32:37 +09:00
Jean Chalard
70b9c5d991 Make the spell checker re-entrant.
Until the dictionary itself is re-entrant, unfortunately we have
to synchronize accesses to it.

Bug: 5156851
Change-Id: I1629a160d707e6fa1ad80cba828798abb24b68b1
2011-08-16 13:58:37 +09:00
Yusuke Nojima
8f7f406c5b Merge "Add a margin between "123" and the mic icon." 2011-08-15 18:17:48 -07:00
Yusuke Nojima
35775197aa Add a margin between "123" and the mic icon.
Bug: 5161711
Change-Id: I04c777c24b9aac4d82eb3adff8e077640a866f61
2011-08-16 10:07:34 +09:00
Ken Wakasa
e8bbc54e74 Merge "Update shift state in onSizeChanged()" 2011-08-15 04:12:24 -07:00
Ken Wakasa
286a5bf1c6 Update shift state in onSizeChanged()
bug: 5130446
Change-Id: I830de4d184dffa2b263206c3f078de054e227b9e
2011-08-15 20:10:28 +09:00
Jean Chalard
7674f869dc Remove the "Touch to correct words" option.
Bug: 5113009
Change-Id: Idc4a464e499a2530f517bf7fa449326779129371
2011-08-15 16:38:00 +09:00
Jean Chalard
ab791d0bbc Revert "Remove the "Touch to correct words" option."
This reverts commit 8e69dd80d8

...since it breaks the build
2011-08-14 23:49:01 -07:00
Jean Chalard
8e69dd80d8 Remove the "Touch to correct words" option.
Bug: 5113009
Change-Id: Iae8a64e22cf618f4533f966feaf0b5a76725d551
2011-08-15 15:02:51 +09:00
Ken Wakasa
bb5504c47d Merge "Get rid of auto correction flash animation in the suggestion strip" 2011-08-12 07:19:50 -07:00
Ken Wakasa
59f5cc8572 Get rid of auto correction flash animation in the suggestion strip
bug: 5156762
Change-Id: I1350ad3d7125f8ecdfc699233ed05e253cc3f010
2011-08-12 23:14:34 +09:00
Jean Chalard
b6b7d81f5d Merge "Add a settings activity for the spell checker." 2011-08-12 03:11:33 -07:00
Jean Chalard
31fd54c53f Add a settings activity for the spell checker.
Bug: 5156940
Change-Id: I762de1296f861abce2d0413404bca54571e0ea0a
2011-08-12 19:07:51 +09:00
Jean Chalard
86e517fe4a Read shared prefs from the dictionary pack.
Bug: 5095140
Change-Id: I227fbd95d8a0330b6dede6de99fde3a5a715fe2d
2011-08-12 17:31:24 +09:00
Ken Wakasa
7fca6a5357 Merge "Key click sound volume fix" 2011-08-11 10:06:49 -07:00
Ken Wakasa
bf7dd47329 Key click sound volume fix
bug: 5145886
Change-Id: Ic599373ee17423ef9c61b3dd5177c3763aa31015
2011-08-12 02:02:03 +09:00
Jean Chalard
08868624ed Use the dictionaries cached LatinIME-side
Dictionaries are now copied over from the dictionary pack to Latin IME.
This change enables Latin IME to use all dictionaries that have been
cached until now.

Bug: 5095140
Change-Id: Id9a2bacf9dc1c693189b0ac8aa3f75756dc1e3e6
2011-08-11 18:15:39 +09:00
Jean Chalard
2896673461 Rename a function and update a comment
Bug: 5095140
Change-Id: Idf66a04c6a1a05015f94187a8dbce3d443bbf38b
2011-08-11 17:07:28 +09:00