satok
db1939dbaa
Reorder suggestions result according to auto correction threshold
...
Bug: 5413904
Change-Id: I3aa3a8109ba45d2129b58d8242866fd3dd3473cb
2012-05-16 19:58:48 +09:00
satok
6804b8e0fd
Fix a bug of handling single quote in the correction algorithm
...
Bug: 6096247
Change-Id: I5490bbdee4ce1e3e0729ec1510a2baab85eeaf05
2012-05-15 15:12:55 +09:00
Tom Ouyang
4d289d39ae
Contacts dictionary rebuilds only when contact names have changed.
...
Bug: 6396600
Change-Id: Iad693ec4bab6351793d624e5c5b0a9f5c12a60e3
2012-05-11 18:43:53 -07:00
Jean Chalard
49ba135fde
Perform the actual bigram frequency lookup.
...
This still returns the unigram frequency, because the values stored
for bigrams in the dictionary are not ready to be returned in-place
instead of unigram values. Aside from this, the code is complete.
Bug: 6313806
Change-Id: If7bb7b644730782277f0f6663334c170b7fe13fb
2012-05-10 20:01:44 +09:00
Jean Chalard
8950ce6c44
Replace the bigram list position with the map and filter
...
Passing the position will not allow us a reasonable lookup
time. Replace this with a map and bloom filter for very fast
lookup.
Bug: 6313806
Change-Id: I3a61c0001cbc987c1c3c7b8df635d4590a370144
2012-05-07 17:15:21 +09:00
Jean Chalard
f1634c872c
Fill in the bloom filter for bigram lookup.
...
Bug: 6313806
Change-Id: Ib79e14f6f8b241f053da6069c15f19c71084317e
2012-05-07 15:38:43 +09:00
Jean Chalard
1ff8dc47be
Fill up a map of bigram addresses for lookup.
...
We don't want to do a linear search on each terminal when there
may be 100+ bigrams for a given word because that would be
disastrous for performance. Also, we need to resolve each bigram
address anyway.
This change resolves the addresses at first and puts them in a
balanced tree so that lookup will be O(log(n)).
Bug: 6313806
Change-Id: Ibf088035870b9acb41e948f0ab7af4726f2cee24
2012-05-02 17:50:44 +09:00
Jean Chalard
351864b38a
Fetch and pass the bigram position on suggestions.
...
This is a cherry-pick of change I2d81742f
Bug: 6313806
Change-Id: Ic1190b7980d032bc11b57841bca040d980889b6b
2012-04-26 15:24:42 +09:00
Jean Chalard
4d9b202c40
Pass the bigram list position from the top level
...
The position itself is still a const int = 0 until we have the previous
word passed to the function. This basically does the plumbing.
Bug: 6313806
Change-Id: Ib58995f334fe93e3ff5704d7c79f332017f101ac
2012-04-24 16:47:09 +09:00
Jean Chalard
171d1809ff
Add methods to inverse compute the probability.
...
For now the probability is just returned with the same
value it had, but this is some ground work that needs to be
done anyway.
Bug: 6313806
Change-Id: I9bb8b96b294109771208ade558c9ad56932d2f8e
2012-04-24 09:40:44 +09:00
Jean Chalard
522a04ea5b
Pass words as int[] to the native code.
...
We need to get the bigrams during the call to getSuggestions for
bug#6313806. We already give an int[] to getSuggestions and we
wanted to get rid of char[]'s anyway because it doesn't work with
surrogate pairs, so here we go.
Bug: 6313806
Change-Id: I56ce99f1db6b3302cdf42f0527343bded837091e
2012-04-23 16:05:36 +09:00
Tadashi G. Takaoka
a58ebc73ae
Fix typo of some methods' name
...
Also changes some methods' argument type from Locale to String.
Change-Id: Ib68b528a450dc68a01546483403230f76500bee4
2012-04-18 16:40:50 +09:00
Jean Chalard
bde232dcaa
Merge "Pass the previous word down to native code in getSuggestions"
2012-04-17 18:01:05 -07:00
Jean Chalard
80111f08e2
Pass the previous word down to native code in getSuggestions
...
Change-Id: I477b631d81ef58461e44954f3ae5fd895928bb97
2012-04-17 20:07:10 +09:00
Jean Chalard
fec6837ae1
Fix debug compilation + small cleanup
...
Change-Id: Ia89d84f62ba38dee05d25fbc94698e889cf27d2c
2012-04-17 17:33:25 +09:00
Jean Chalard
ee396df162
Fix a native crash
...
This was introduced by Ieb2e306a which failed to keep the return
behavior in case the word doesn't have a bigram.
Change-Id: I6d2f0b79d41c4335e94696690c8331e314961133
2012-04-17 16:57:42 +09:00
Jean Chalard
9c2a96aa6c
Preparatory refactoring
...
Split out getting the pointer to the bigrams to a separate
function. This is a preparative change to bug#6313806
Change-Id: Ieb2e306a1151cd95dc1a16793c8dc2f7fed8b654
2012-04-17 11:46:20 +09:00
Ken Wakasa
db87fe4d5c
Just cosmetic changes in jni code
...
Change-Id: I8628131b5a7ccdee4c158e891002c8b86623b0cd
2012-04-16 19:16:05 +09:00
Jean Chalard
3f675f7060
Fix a large native memory leak.
...
This leak was about 500k and would happen whenever a new binary
dictionary was opened/closed.
Bug: 6299535
Change-Id: I4fad5b4d9c556ca889f5ef62d9d083a2eff6346a
2012-04-16 16:48:53 +09:00
Jean Chalard
338d3ec725
Replace the flags in getSuggestions with a boolean.
...
Change-Id: I0ec44df1979cb1dc21017ea290d2151a2af0e7cd
Conflicts:
java/src/com/android/inputmethod/latin/Suggest.java
2012-04-06 19:34:48 +09:00
Jean Chalard
aa8df59914
Enable using the flags read from the binary file.
...
Change-Id: Ib420c3e174ccc1a80c4b6fd066de3b7a2b6fb290
2012-04-06 18:54:20 +09:00
Jean Chalard
cd274b1469
Save the flags in a member in the unigram dictionary.
...
Change-Id: Ic8fad9110db6b97f98ace27af0f347b4e69de8c8
2012-04-06 18:34:59 +09:00
Jean Chalard
e81ac8baa0
Add a method to get the flags from a binary dictionary.
...
This method is not used yet
Change-Id: Ic15d3d423aff2c83c712bc0aa56571d30755e663
2012-04-06 18:34:22 +09:00
Jean Chalard
5b0761e6a9
Remove write-only stuff
...
Change-Id: I5ac8ab64c77a298502b3d063ea70db9b4da41716
2012-04-06 17:52:18 +09:00
Jean Chalard
9a933a742d
Read shortcuts as strings in the dictionary.
...
This has no impact on performance.
Before:
(0) 9.61 (0.01%)
(1) 57514.58 (56.70%)
(2) 10.55 (0.01%)
(3) 10.79 (0.01%)
(4) 133.20 (0.13%)
(5) 43553.87 (42.94%)
(6) 10.03 (0.01%)
(20) 47.20 (0.05%)
Total 101431.47 (sum of others 101289.84)
After:
(0) 10.52 (0.01%)
(1) 56311.16 (56.66%)
(2) 13.40 (0.01%)
(3) 10.98 (0.01%)
(4) 136.72 (0.14%)
(5) 42707.92 (42.97%)
(6) 9.79 (0.01%)
(20) 51.35 (0.05%)
Total 99390.76 (sum of others 99251.84)
The difference is not significant with regard to measure imprecision
Change-Id: I2e4f1ef7a5e99082e67dd27f56cf4fc432bb48fa
2012-04-06 16:22:08 +09:00
Ken Wakasa
0c1a3ec629
Make LatinIME's native Makefile NDK-friendly
...
Change-Id: I55d430756b3a8251c9ff49dfabfcecb047d979a4
2012-03-31 05:07:32 +09:00
Ying Wang
32f0e24b33
Remove ".." in the native LOCAL_SRC_FILES.
...
The build system does not work well with ".." in the path of native
source code.
".." causes the object files to spill out of the module's intermediate
directory.
Change-Id: Ib4a473426be296a738e7facbaa091e56f0b7c5b8
2012-03-30 10:50:26 -07:00
Ken Wakasa
3ef3e24a12
Move the "src" directory as a preparation for Ib4a47342 and I66f6c5b9
...
Change-Id: I3ab65059f6e356530484bfd0bba26a634a4cba65
2012-03-30 09:53:51 +09:00
satok
6ba8de2a60
Good bye the proximity logic in Java code
...
Bug: 4343280
Change-Id: I82f7d08703647a3492ce6e2d3b741146df58927e
2012-03-28 18:42:30 +09:00
Tom Ouyang
aeda8a7798
Change the first character check in bigram dictionary to be case insensitive.
...
Bug: 6188977
Change-Id: I121c1abf245c7f8734730810c07d3351b1ec581a
2012-03-24 15:31:27 +09:00
satok
acb6c5445f
Fix build breakage
...
Change-Id: Ic4d3cf6932dcd57c1040c7877ab7c7f48cd6c408
2012-03-23 20:58:18 +09:00
Jean Chalard
350ffc879a
Merge "Fix a bug with negative coordinates, step 3"
2012-03-23 04:04:48 -07:00
Jean Chalard
e2222b78d3
Merge "Fix a bug with negative coordinates, step 2"
2012-03-23 03:50:21 -07:00
Jean Chalard
7f18f44461
Merge "Fix a bug with negative coordinates, step 1"
2012-03-23 03:48:53 -07:00
Jean Chalard
52612a0d1b
Fix a bug with negative coordinates, step 3
...
This implements the actual change, now that indentation is okay
Change-Id: Idd897f988394125611516431711c1e575df871df
2012-03-23 19:38:23 +09:00
Jean Chalard
3094d12cdc
Fix a bug with negative coordinates, step 2
...
Indentation changes only
Change-Id: I95011e7d3f787ae6749b826af627f9acaed34e97
2012-03-23 19:37:13 +09:00
Jean Chalard
88ec125cfc
Fix a bug with negative coordinates, step 1
...
This breaks style guidelines but for some reason git diff gets
so lost on this re-indent that it's better to do it like this
Change-Id: Ie0a603eb0739704894a5adc25f9d527b37bdf151
2012-03-23 19:34:53 +09:00
satok
8980bd4a25
Merge "Cleanup jni 1"
2012-03-23 03:24:08 -07:00
satok
9df4a4527a
Cleanup jni 1
...
Change-Id: Ieb6af8385356e259720b50f1fe46a694a098b30f
2012-03-23 19:03:20 +09:00
Jean Chalard
2b5b6388d6
Merge "Fix a typo"
2012-03-23 02:48:15 -07:00
Jean Chalard
bbc25607f0
Fix a typo
...
Change-Id: If794344629e93b558d60b023ae70b703f9c039ab
2012-03-23 17:05:03 +09:00
Jean Chalard
cc78d03a62
Add processing for French ligatures.
...
Bug: 5140033
Change-Id: I1c2751fc617e662aad9f67506e28a622f81d0bc9
2012-03-23 16:50:59 +09:00
Jean Chalard
081616cd2f
Send correct coordinates for the spell checker
...
This results in the computation being done in native code
and the correct proximity being used.
Bug: 6181080
Change-Id: I08fa05c781d607e4feca2caeda353ec19c133a3d
2012-03-23 13:02:58 +09:00
Jean Chalard
d30433837d
Add a replacement character to digraphs system
...
The digraphs system used to allow only the replacement of
a pair (A, B) by (A). This change allows the replacement to
be any character.
Bug: 5140033
Change-Id: Icf5995f0ec553f7b7989af9902cbb2c4c6b51009
2012-03-22 11:37:26 +09:00
Jean Chalard
9c4396abb3
Merge "Generalize the digraph code"
2012-03-21 18:47:10 -07:00
Jean Chalard
6c30061c70
Generalize the digraph code
...
Bug: 5140033
Change-Id: I19c8c89f79f7c1ce1fba58d50bc2697747052599
2012-03-21 17:50:55 +09:00
Jean Chalard
9715cc4ed5
Fix a bug where the returned number of bigrams was incorrect
...
Bug: 6191885
Change-Id: I1daa4d2eaeec5f5c1a4eef79221fd7de357763e9
2012-03-21 16:55:04 +09:00
satok
1caff47ecd
Calculate proximity characters in the native code
...
Bug: 4343280
Change-Id: I6adaf560f7a4f1f96dcb6ec2f61f20ee3001167e
2012-03-16 17:26:36 +09:00
satok
0cb2097a45
Fix additional proximity in the native code
...
Bug: 4343280
Change-Id: I4164bb916b2dbdfb6bdc151b99d46a6171d9c355
2012-03-14 11:17:59 +09:00
satok
5eec574cf0
Use additional proximity chars in the native code
...
Bug: 4343280
Change-Id: Ida690fe246cea80a82fcdb3ad0c28e2907b882ac
2012-03-13 19:00:16 +09:00
satok
552c3c27f0
Implement additional proximity characters in the native code
...
Bug: 4343280
Change-Id: I9bbc5cab2fef1ee80c1fe32017df811ef8af10bc
2012-03-13 17:38:50 +09:00
Ken Wakasa
951ab9d7eb
Fix typo.
...
Change-Id: Ia18cd090fd81022041854ce190e36eca49c6b04a
2012-03-09 19:18:59 +09:00
satok
f0d5a78388
Merge "Add functions to calculate proximity characters in the native code"
2012-03-07 23:31:17 -08:00
satok
219a514082
Fix a bug on German umlaut digraph correction
...
Bug: 6129372
Change-Id: I2d629735028c35bf12289f381ada2f4ffe8d7ad3
2012-03-08 13:55:34 +09:00
satok
a70ee6e3b3
Add functions to calculate proximity characters in the native code
...
Bug: 4343280
Change-Id: I17f8f6295b01900948b98680d0267753f33a46cf
2012-03-08 12:55:15 +09:00
Jean Chalard
46a1eec4d8
Add a variable-length header region to the binary format.
...
Also bump up the format version to 2.
Bug: 5686638
Change-Id: I3aafdd7e42c422202122998ec093280051aa8e07
2012-03-06 17:37:28 +09:00
Tadashi G. Takaoka
d1dbdb6b20
Make some debug aid functions to inline
...
Change-Id: I973f9d4a3989f3d2b797ad26f9d006c0f2c613b5
2012-03-06 15:51:32 +09:00
satok
bb0bd66942
Fix correction utility
...
Bug: 6096247
Change-Id: Ie17c60dde9bd081790b79312ce8d96d292c5128c
2012-03-02 12:34:17 +09:00
Jean Chalard
ad290d6505
Activate bigram predictions from the binary dictionary
...
Change-Id: If1cc50539d7677b854b1cd3bea3423c8c0865de5
2012-02-15 19:51:24 -08:00
Jean-Baptiste Queru
26e315785d
resolved conflicts for merge of 3ad1145a
to master
...
Change-Id: I13159b95f90c5095373951bf9e91b7dbf8b14558
2012-02-14 13:09:49 -08:00
satok
a85f4929cd
Support multi words suggestion
...
result: I4d097612db2f2a93522
Change-Id: Iedbb24f431dac43e52b6dcce8cb610a75e0ca46e
2012-02-08 13:00:31 +09:00
Ken Wakasa
4c5daa8a55
Fix indent
...
Change-Id: I77b4fb3a47faae7d4ad45d9903556e77a2fc7163
2012-02-06 21:51:31 +09:00
Tadashi G. Takaoka
a27cb62390
Merge "Use C++ template for min/max"
2012-02-05 17:38:30 -08:00
Tadashi G. Takaoka
09baa36f7d
Use C++ template for min/max
...
To be more friendly for off-device regression test.
Change-Id: I7edf4c9de73915aad9c1760ace7df3177ed3c4e9
2012-02-06 09:41:41 +09:00
satok
1b9fa942b4
Support correction conversion from skip to additional proximity
...
Result: I34bedff6149a6a4e01
Change-Id: I46d528f228a969a0a996299221622627f43c55ec
2012-02-03 20:00:15 +09:00
satok
04fd04d6ff
Separate the logic for touch caribration again
...
Change-Id: I59c6244674caa899af559402290160ad411d1bb5
2012-02-02 19:03:04 +09:00
satok
e05b3f4b3a
Support additional proximity characters
...
Change-Id: Ifbe0d7e4eafea1926bbce968eae4724dd5769689
2012-02-02 16:07:16 +09:00
Bhanu Chetlapalli
b093cc4824
[MIPS] Remove reference to NDK
...
Change-Id: I6137c4a93b29a8906abb5bd0f320dd3f37fdea08
Signed-Off-By: Bhanu Chetlapalli <bhanu@mips.com>
2012-01-31 12:08:27 -08:00
satok
1f6b52e76c
Implement multi words suggestions step1
...
Change-Id: I96e8e1b0d9ccc0ed13d53c40300d8c19bcb7af5b
2012-01-30 18:01:25 +09:00
satok
9955716d0b
Merge missing space and mistyped space correction algorithm
...
Change-Id: Idd64d38d3d29be24748f9c0359667883698a5756
2012-01-27 16:54:15 +09:00
satok
3c09bb18d9
Merge multiple words suggestions algorithm
...
Change-Id: I70d85b90ddaa28a41e9679f445bc14ef9ff50f16
2012-01-26 18:59:51 +09:00
satok
7409d151a1
Refactor words priority queue
...
Change-Id: I14b7ef39263ad2b1d5ec087bc80b7b8d7c30abe7
2012-01-26 16:13:25 +09:00
satok
f8ce19c29d
Merge "Cleanup unused code"
2012-01-25 22:12:52 -08:00
satok
1c03306994
Cleanup unused code
...
Change-Id: I6c840f9ed170919e48d1c576cd0a48777ad44030
2012-01-26 14:56:52 +09:00
satok
61b31a646e
Merge "Do other error correction for the second word of two word correction"
2012-01-25 05:48:15 -08:00
satok
8330b488e9
Do other error correction for the second word of two word correction
...
result: I4e0b68a12190933f9
Change-Id: I98afce6fe4d5bde97392146d204370ba31a72566
2012-01-25 22:30:37 +09:00
Jean Chalard
0bfe359ee4
Add a test for auto-correction.
...
Fix two related subtle bugs:
- Stop singling out fat-finger-only corrections for rejection
when touch coordinates are not available.
- Remove a racy check that would happen only in debug mode
Change-Id: Ic904f9b27c091ca6b369052c4e65a630bff81257
2012-01-25 19:29:40 +09:00
Jean-Baptiste Queru
11c41216f1
Merge 2577fca1
...
Change-Id: Ie2c9f6c2eafb59dff95db8954481ce49c87a6d44
2012-01-23 09:06:00 -08:00
satok
bd6ccdd5f0
Clean up two word correction
...
Change-Id: I5cd2697d7f61b81aff0c249df01479d86ad0fba5
2012-01-23 15:35:03 +09:00
satok
54af64ae92
Two words error correction with other error correction for the first word
...
+1 26
-1 5
+2 0
-2 0
+3 0
-3 0
+4 9
-4 25
+5 20
-5 21
+6 13
-6 6
+7 15
-7 26
Change-Id: Iad682d417a6bb42b11ca6e60157698ca66fef3ff
2012-01-19 19:17:29 +09:00
Robert CH Chou
bd1ed5b859
Make the JNI lib an optional module
...
Make it a user module will force it installed no matter the
IME is actually required by the product or not. Replace the
user by optional and add requiring the libjni_latinime by using
LOCAL_REQUIRED_MODULES
Change-Id: Ibfc37cf2e2391021d45538c7cea342894b56fbf8
2012-01-19 10:02:25 +08:00
satok
29dc80614b
Prepair for advanced two words error correction
...
Change-Id: I4c8a21f0f6e349ddafd9b402583321a60855cfe8
2012-01-17 16:00:55 +09:00
satok
a161a4afd6
Use edit distance for transposing correction
...
+1 73
-1 4
+2 0
-2 0
+3 0
-3 0
+4 11
-4 19
+5 9
-5 3
+6 2
-6 63
+7 2
-7 8
Change-Id: I269cd2386f451f8932e4e0ae66223e794fdfa862
2012-01-17 13:14:35 +09:00
Jean Chalard
82ddd16889
Stop avoiding adding what the user typed to candidates
...
There does not seem to be any reason other than a historical
one to avoid doing this, but it takes processing power and
makes things more complicated.
This has a very limited impact on regression tests:
5 -> 3 [He, the]
5 -> 3 [An, an]
5 -> 3 [Where, where]
5 -> 3 [This, this]
7 -> 1 [wAtch, watch]
6 -> 4 [oveNs, oceans]
5 -> 1 [Ahere, Where]
7 -> 1 [Hast, Hast]
7 -> 5 [bjp, bill]
5 -> 1 [What, What]
5 -> 3 [Sound, So und]
7 -> 3 [causalities, casualties]
7 -> 3 [discontentment, discontent]
7 -> 3 [irregardless, regardless]
5 -> 1 : 2
5 -> 3 : 5
6 -> 4 : 1
7 -> 1 : 2
7 -> 3 : 3
7 -> 5 : 1
+1 4
-1 0
+2 0
-2 0
+3 8
-3 0
+4 1
-4 0
+5 1
-5 7
+6 0
-6 1
+7 0
-7 6
Change-Id: I6407cf922f27bbd3992df11d63690e71fc61111b
2012-01-16 18:58:10 +09:00
satok
67e13976b7
Merge "Store suggestions for each input length for missing space algorithm etc."
2012-01-16 00:18:37 -08:00
satok
6ad15fcd15
Store suggestions for each input length for missing space algorithm etc.
...
Change-Id: Ief8f6ddd29e043744863e5b9be3a51a70987291c
2012-01-16 17:11:17 +09:00
Jean Chalard
4c0eca6e41
Read multi-byte char group counts
...
Change-Id: Idc62382f1c814e9bd1466c9f7dda1fcc8ba4137d
2012-01-16 15:59:33 +09:00
Jean Chalard
6d4198107b
Remove a bunch of obsolete methods.
...
Change-Id: I218007bf411489d1d648fd9b8b408c5d27c41811
2012-01-16 15:19:47 +09:00
Jean Chalard
512c669fee
Fix a native crash with shortcuts
...
Creation of the TerminalAttributes object failed to take into
account that there may be children on this node.
Change-Id: I8224a1a51532d1a40a8555f46425e3744388326b
2012-01-13 20:50:43 +09:00
satok
9fb6f47a6a
New LOG lib
...
Change-Id: I977e7e10fa58c0a64ca0c3c7b5cb2272446e3efe
2012-01-13 18:04:15 +09:00
satok
b960477952
Use placement new to construct the queue
...
Change-Id: I455f9954165bd4524f2883db7ea24a6fed3015f9
2012-01-13 17:32:55 +09:00
satok
be0cf72253
Move auto correction thresthold to the native code
...
bug: 5858137
Change-Id: Ic4b6270c6e51ef4ed25a6a1d8ddd7fdfa70fd78d
2012-01-12 19:56:15 +09:00
Jean Chalard
b0c49b7684
Actually add shortcut targets to the suggestions (A4)
...
Change-Id: Ia6f551d36b2897863e7faf5143bc319522b0668e
2012-01-06 15:21:11 +09:00
Jean Chalard
e1e5a3fa2f
Merge "Fill in the format-specific shortcut reading methods (A3)"
2012-01-05 21:36:20 -08:00
Jean Chalard
8e464d41cc
Fill in the format-specific shortcut reading methods (A3)
...
Change-Id: Ie5d8b344ed46873c92f3ef878a1e45017eb699c6
2012-01-06 14:09:54 +09:00
Ken Wakasa
ecbf3f2cbc
Merge "Fix indentations."
2012-01-05 19:29:22 -08:00
Ken Wakasa
e12e9b5b69
Fix indentations.
...
Change-Id: I25c26e2fe50427d11d97b6204174a4f651963d24
2012-01-06 12:24:38 +09:00
Jean Chalard
cf9dbbdd1a
Add methods to read shortcuts from the binary dict (A2)
...
This contains stubs only, it does not work yet, however it
doesn't break anything.
Change-Id: If912ae84ff3ccd7a2d6588ffd6fbb9974f87ef3d
2012-01-06 12:24:30 +09:00
Jean Chalard
c8c6585f21
Add a forgotten constant
...
This fixes the build.
A constant was used before it was declared in another file.
Change-Id: I72dfca2f76f0c3b7dd64072d062cd48c9bfcbd56
2011-12-27 12:58:49 +09:00
Jean Chalard
e0e339699a
Skip shortcut targets if any. (A1)
...
Change-Id: I1e83bba2b36bdc0429debb22425ce75001e61c81
2011-12-27 12:22:20 +09:00
satok
1a6da631ab
Prepare for proximity + two word correction No2
...
Change-Id: Idfa1413e853299f1db459ef07da3efa932047981
2011-12-19 17:12:20 +09:00
satok
744dab691e
Prepare for proximity + two words suggestion
...
Change-Id: I3637f9bec1f4a3c5953498c4562e1f17a7bf593c
2011-12-16 17:32:53 +09:00
satok
a7e5a5a6b9
Add words priority queue pool
...
Change-Id: I152df7b876a1756b69ded2ca4fb3ee26b38c971f
2011-12-15 19:20:28 +09:00
satok
4d355989bd
Add a functionality to limit the max correction errors
...
Before
==== test finished, terminate logcat =====
(0) 121.97 (0.28%)
(1) 42032.07 (95.46%)
(2) 11.03 (0.03%)
(3) 12.19 (0.03%)
(4) 10.02 (0.02%)
(5) 1417.41 (3.22%)
(6) 258.43 (0.59%)
(20) 50.20 (0.11%)
Total 44033.07 (sum of others 43913.32)
After
==== test finished, terminate logcat =====
(0) 110.81 (0.29%)
(1) 36416.11 (94.47%)
(2) 10.06 (0.03%)
(3) 9.45 (0.02%)
(4) 9.83 (0.03%)
(5) 1535.52 (3.98%)
(6) 290.25 (0.75%)
(20) 40.57 (0.11%)
Total 38546.83 (sum of others 38422.60)
Change-Id: Iffd24ce0b2dc422c8c6085d5be5f6bfdaf59ca7d
2011-12-15 16:00:08 +09:00
satok
d03317c4be
Prune traversing a bit agressively and add a flag not to do auto completion
...
+1 1
-1 2
+2 0
-2 0
+3 0
-3 0
+4 6
-4 1
+5 4
-5 3
+6 3
-6 10
+7 7
-7 5
Before:
Total 42936.28 (sum of others 42814.63)
After:
Total 40860.56 (sum of others 40733.92)
Change-Id: I6a3d52f31ec181970083358280c3ebaca0a1f63e
2011-12-15 12:09:25 +09:00
satok
1147c7bac9
Unbundle members in unigram_dictionary
...
Change-Id: Id737d943d20e3de3db568162caf40d3e956c7fae
2011-12-14 19:45:51 +09:00
Ken Wakasa
d5e35acffb
Reorganize LatinIME native build directory structure. Now it got NDK friendly.
...
Change-Id: I0f62ce8a6a4d2b6134db698f8b8d0576616e524d
2011-12-13 21:16:20 +09:00
satok
16379df633
Use priority queue for native string buffer
...
+1 2
-6 2
Performance
before
==== test finished, terminate logcat =====
(0) 100.34 (0.26%)
(1) 37149.26 (95.30%)
(2) 8.43 (0.02%)
(3) 11.18 (0.03%)
(4) 9.92 (0.03%)
(5) 1330.60 (3.41%)
(6) 250.46 (0.64%)
(20) 12.41 (0.03%)
Total 38982.50 (sum of others 38872.59)
after
==== test finished, terminate logcat =====
(0) 97.65 (0.26%)
(1) 35427.43 (95.32%)
(2) 10.30 (0.03%)
(3) 8.95 (0.02%)
(4) 11.01 (0.03%)
(5) 1224.67 (3.30%)
(6) 243.76 (0.66%)
(20) 40.91 (0.11%)
Total 37167.04 (sum of others 37064.68)
Change-Id: Id4d3b88a9cdef765affc52973aeac951ecc6a8ca
2011-12-13 16:32:52 +09:00
satok
0a66397106
am 620b1faf
: Merge "Fix the touch calibration bug" into ics-mr1
...
* commit '620b1faf126d4b5f7cb5c353cebd374d1347fdd4':
Fix the touch calibration bug
2011-11-17 11:46:27 -08:00
satok
554fdd21a1
Fix the touch calibration bug
...
Bug: 5629373
Change-Id: Iacc746e1cc97bf305e1f287cf7431b7115607eeb
2011-11-17 15:56:41 +09:00
Tadashi G. Takaoka
6e3cb27cff
Reorganize char_utils.h and basechars.h
...
* make BASE_CHARS[] const
* add several inline menthods for ASCII character handling
Change-Id: I49664f219af88faf0aef43ac350cfc216570b185
2011-11-11 19:44:08 +09:00
Ken Wakasa
6d12dfd32d
am 2549ce27
: am df2fed2b
: Merge "Fix a bug that would end up in memory corruption" into ics-mr0
...
* commit '2549ce275a272d552c28121ea58742e54b640e54':
Fix a bug that would end up in memory corruption
2011-11-10 18:51:16 +00:00
Ken Wakasa
2549ce275a
am df2fed2b
: Merge "Fix a bug that would end up in memory corruption" into ics-mr0
...
* commit 'df2fed2b791c5d6ef64597d515c971aa32a59b92':
Fix a bug that would end up in memory corruption
2011-11-10 04:53:15 +00:00
Jean Chalard
8c8ca59dd5
Fix a bug that would end up in memory corruption
...
Square distances array was not the right size. Copying long words
into it would result in fandango on core.
Bug: 5508337
Bug: 5591925
Change-Id: I7598081b3cfcd1975b206dada1baf8da9be35641
2011-11-10 12:27:50 +09:00
Tadashi G. Takaoka
5fdcd7d5cd
Fix JNI as 64bit ready
...
Change-Id: I7a3ed2cee3b20744869aa5cf89ff9fd95f5ab8fe
2011-10-31 20:44:01 +09:00
Tadashi G. Takaoka
7e8cf3c093
Merge "Remove NULL from native/jni"
2011-10-28 01:14:47 -07:00
Tadashi G. Takaoka
94810dec21
Remove NULL from native/jni
...
Change-Id: I7c4e32d0d69876c7ea85d6997c9a40fa362152eb
2011-10-28 17:06:58 +09:00
Tadashi G. Takaoka
0e97148f6d
Remove NULL from native/src
...
Change-Id: I5299af7773d28fd12faebbfe644829a401ae5644
2011-10-28 17:02:09 +09:00
Tadashi G. Takaoka
5049f5bbb4
Fix trivial compile issue
...
Change-Id: I9dbc51496dbdb2195bbe589b0c3b2cd7e3d2f1fc
2011-10-28 16:24:31 +09:00
Tadashi G. Takaoka
d862b93578
Cleanup unused function
...
Change-Id: Ic0895e1973b3879b2a63f7e0b888e9a0480be6f3
2011-10-27 19:58:46 +09:00
Yusuke Nojima
04d8737015
Calculate edit distances incrementally.
...
Change-Id: I3ee734b9b71351523dc8658cba33d6c8435e348e
2011-10-14 14:29:28 +09:00
Yusuke Nojima
a4c1f1c1fd
Calibrate the scores of the proximity chars according to the distances.
...
+1 75
-1 27
+2 0
-2 0
+3 0
-3 0
+4 30
-4 48
+5 37
-5 27
+6 4
-6 35
+7 9
-7 18
Change-Id: I3c6ab06a0084c18ab595147c36c2ff4b1e961a7b
2011-10-11 15:28:32 +09:00
satok
57834c20a5
Fix a bug of the conversion of the correction algorithm
...
Bug: 5414829
+1 25
-1 17
+2 0
-2 0
+3 0
-3 0
+4 15
-4 9
+5 2
-5 9
+6 13
-6 4
+7 3
-7 19
Change-Id: Ie99db961051320ee31d31476ea7c25b1d837c484
2011-10-07 00:23:26 +09:00
Yusuke Nojima
afb9076503
Enable score calibration by touch coordinates
...
Result of diff.sh:
+1 3
-1 3
+2 0
-2 0
+3 0
-3 0
+4 1
-4 3
+5 3
-5 2
+6 3
-6 1
+7 1
-7 2
Change-Id: I41b803df23ac03e1fc81043df4e1e6a63c0afbb1
2011-10-05 18:11:42 +09:00
Yusuke Nojima
e4ba822cc6
Promote touches in hit box according to the distance from sweet spot
...
Change-Id: Ice0fd0514304a79aed67627c2ea3439bd5177de4
2011-10-05 17:33:43 +09:00
Yusuke Nojima
c25c7ccf25
Cache the sweet spot types
...
Change-Id: Ibaee062dc55c11892143d48b2d0959e78e52be83
2011-10-04 17:22:41 +09:00
Yusuke Nojima
16717159ff
Move ProximityInfo::calculateSweetSpotType right after ProximityInfo::setInputParams
...
Change-Id: Ifc76ab0aa3e9467d54696bb8b84bf523f001938a
2011-10-04 17:04:07 +09:00
satok
c812d0b816
Merge "Demote words with a capitalized char"
2011-10-03 04:24:40 -07:00
satok
eb050fc2dc
Demote words with a capitalized char
...
Bug: 5371514
+1 4
-1 2
+2 0
-2 0
+3 0
-3 0
+4 1
-4 3
+5 0
-5 12
+6 3
-6 3
+7 12
-7 0
Change-Id: I6b46e43f9059f1e8a1cc02a626ea6eb8f1f9924f
2011-10-03 20:11:06 +09:00
Yusuke Nojima
5d21c5c6cb
Fix bug in calculateSweetSpotType()
...
Change-Id: I215bc02367e123a73ffc94974e7b1cbec52a25fa
2011-10-03 14:39:40 +09:00
Yusuke Nojima
9ee8c9c45c
Calibrate score by touch coordinates
...
Change-Id: I9fc066eb1a455243536e72405922fcb7e26d7dc6
2011-09-30 18:08:28 +09:00
Yusuke Nojima
da9f556a15
Merge "Classify touches into three types."
2011-09-30 01:26:15 -07:00
Yusuke Nojima
258bfe66e0
Classify touches into three types.
...
Change-Id: I7c1d42835e0c15d596a1b66d421b0aa514ec0890
2011-09-30 17:22:22 +09:00
satok
db096d681f
Merge "Add a flag to demote completed suggestions"
2011-09-29 03:58:27 -07:00
satok
40a5f6fa4d
Add a flag to demote completed suggestions
...
Bug: 5390063
Change-Id: I0ef4fbcc705539624269fd2f8c4e782679fc44b3
2011-09-29 19:48:18 +09:00
Yusuke Nojima
ad35835bac
Pass the touch position correction data to native.
...
Change-Id: I92958779377a530410d1682100f9d0a2ba267dea
2011-09-29 17:00:49 +09:00
Yusuke Nojima
1c923d8581
Extend JNI interface to pass the theme id of the keybaord to the native.
...
Change-Id: I705ec2fa1d32a673a8d84bc9afc2a46208a414a1
2011-09-28 11:56:28 +09:00
Yusuke Nojima
de2f8424ea
Add explicit NULL check to latinime_Keyboard_setProximityInfo() and ProximityInfo::ProximityInfo().
...
Bug: 5375319
Change-Id: If3016ab56b6c62c8855b394f23e09e127a279be7
2011-09-27 14:51:41 +09:00
Yusuke Nojima
b225516366
Merge "Extend JNI interface to pass the key coordinate information"
2011-09-22 02:50:51 -07:00
Yusuke Nojima
0e1f656c1b
Extend JNI interface to pass the key coordinate information
...
Change-Id: Iec0d1415d6abba43b775a014516b961b167597b7
2011-09-22 18:39:34 +09:00
Yusuke Nojima
db815b79a7
Merge "Fix a dangerous macro."
2011-09-20 01:26:48 -07:00
Yusuke Nojima
6309593762
Fix a dangerous macro.
...
Change-Id: Idb5530ceb03c415e4ec002f8d2fbbec837b35636
2011-09-20 16:17:05 +09:00
Yusuke Nojima
2e496f5d0b
Fix editDistance() not to access the outside of mEditDistanceTable
...
editDistance() can access the outside of mEditDistanceTable when called
with strings that contain MAX_WORD_LENGTH_INTERNAL characters.
Change-Id: I996e6cf21bd6acd6584beb4046c10491a044191e
2011-09-16 11:52:16 +09:00
Yusuke Nojima
032cfeef5a
Delete unused function and add TODO comment for a potential bug.
...
Change-Id: I7b16de1bd6b278c51d56eb1904e186c3db3b7f3d
2011-09-14 16:09:24 +09:00
satok
a6f2fcdcea
Fix a bug for calculating the edit distance
...
Change-Id: I4c2cd102c258ccdb2de18c53901f91c0f7c7a986
2011-08-26 19:30:56 +09:00
Yusuke Nojima
0ada663f3d
remove unnecessary condition check.
...
Change-Id: I6e5e3dee0ca3aae0088dcb309da8be16d3842d47
2011-08-26 18:54:07 +09:00
satok
7adf2cdbbc
Combine proximity and corrections
...
bug: 4170136
Change-Id: I0a6d54c769b05f7a67f2f472d48a3e54fe3af475
2011-08-24 19:29:21 +09:00
satok
10266c09ec
Combine the skipped and transposed correction
...
bug: 4170136
Change-Id: I7b50b40478abf27f51ec5e001815ff4882f3e5e5
2011-08-23 23:40:29 +09:00
satok
6d78302155
Fix last excessive char correction handling
...
Change-Id: Id1d46cd96e041fbbbee995093ef8ca56daa3b383
2011-08-19 18:31:43 +09:00
satok
b9d09e73e0
Refactor correction.cpp
...
Change-Id: I1275496e3e7d7124494994d3c52730ec8afdfad3
2011-08-19 17:49:44 +09:00
satok
9db2097f7b
Do the transposed correction and the excessive correction by one loop
...
Change-Id: Idc7a3451a65f7b980e5c499e9083f67646b3a199
2011-08-19 17:10:10 +09:00
satok
bcac0e9e23
Improve fat finger correction.
...
Change-Id: I37ed0dc6956f7e6fab5dcfd0483ab5691cd819d4
2011-08-17 01:04:35 +09:00
satok
0cedd2bcc3
Combilne normal correction and skip correction
...
Change-Id: Ide868d977c0f35900340c7be1b71d572c69a8806
2011-08-15 17:13:39 +09:00
satok
466ed22fc6
Removed matchedChar count
...
Change-Id: I69e92026f802635f900b1e72d089afe4bda5fb0b
2011-08-11 23:01:54 +09:00
satok
f3948c1eac
Calculate the skip correction by one loop
...
Change-Id: Ie70829407cd58be2ffe75c7d649d86f62ee4df24
2011-08-11 17:18:23 +09:00
satok
635f68e822
Improve skip correction algorithm
...
Change-Id: Ife45e3886137d60a4e903d4c6f7a9ef20c7e705a
2011-08-11 12:55:26 +09:00
satok
208268d149
Add correction state.
...
Change-Id: I0a1419922e1ce7a15b566d1b6da3794f8e84c754
2011-08-10 19:10:26 +09:00
satok
cfca3c6317
Refactor CorrectionState to Correction
...
Change-Id: I5f1ce35413731f930b43b1c82014e65d9eaa240b
2011-08-10 14:40:25 +09:00
satok
985312e88f
Refactor the correction algorithm related to missing character correction
...
Change-Id: If68f2aaea7df48d013aea5401cee4ec0df32111a
2011-08-09 12:53:12 +09:00
satok
8876b75ca1
Move scoring part to the correction state
...
Change-Id: I2dc4a0869636fce5526f48b3a6267b6bdf61dbfb
2011-08-05 17:24:56 +09:00
satok
f071e75b78
Change the prune condition
...
Change-Id: I92aef12e0e1d89cfe1b346ddc6ef4df158ffe0b3
2011-08-04 18:32:37 +09:00
satok
4e4e74e6b6
Move the input index and output index to correction state
...
Change-Id: Idebdb59143f3367929df6a0475cefe941eb16d01
2011-08-04 14:16:14 +09:00
satok
0f6c8e8aeb
Move code related to ranking algorithm to correction_state.cpp
...
Change-Id: I52b34de45969fef82e46d9c10079c2d45e0b94eb
2011-08-03 20:34:19 +09:00
Jean Chalard
588e2f2964
Add bigram lookup implementation.
...
Bug: 5046459
Change-Id: Id2c7686c5da078751ed587e559417e808779aa7a
2011-08-02 18:05:59 +09:00
satok
612c6e49c0
Move code related to ranking algorithm to the correction state
...
Change-Id: I2d9e2db81cf6597ca4e88d7bc6737ab3b52b34b2
2011-08-02 15:44:59 +09:00
satok
db2c0919cf
Remove old dictionary format code
...
Change-Id: Ic4b9e069c9bd5c088769519f44d0a9ea45acb833
2011-08-01 16:01:54 +09:00
satok
2df3060883
Add correction state
...
Change-Id: I0d281cede1590893bd1def005cf83c9431d12750
2011-08-01 15:42:09 +09:00
Jean Chalard
6a0e9642a8
Small native refactoring.
...
Move a purely dictionary-format-related function that is needed
both by unigrams and bigrams to the binary format handling
file.
Also remove the empty UnigramDictionary::getBigrams placeholder
function, on grounds that it should be in the BigramDictionary
class.
Bug: 5046459
Change-Id: I8a67a25f72122e2fa0b19ae1d936db25eb0b20ba
2011-07-26 16:13:53 +09:00
Jean Chalard
848b69a5f9
Some refactoring
...
Getting the frequency of a terminal is not very useful, however
getting its position will be very useful for retrieving bigrams
later.
Moreover, from the position it's easy to find out the frequency.
Bug: 5046459
Change-Id: Ica53472c2038c7e407dbd1399d336511c731087f
2011-07-26 15:44:51 +09:00
Jean Chalard
999ba61b34
Some native cleanup
...
Take a function that does not need to be a member and make it
static inline.
Also replace the return value of -1 by a #define'd constant.
Change-Id: I92e0deaa1df65998b76aba6329a4c8eb4d287485
2011-07-22 18:09:48 +09:00
Jean Chalard
f0a9809662
Check the binary dictionary magic number
...
...and return NULL if it does not matched an expected value.
Bug: 5052486
Change-Id: I1dc7955d2785ee080bc5c22398be9befe332f096
2011-07-20 19:43:14 +09:00
satok
d24df43eaf
(Step2)Move functions related to proximity to proximity_info.cpp
...
Change-Id: Iae0eb2a5cd758bda820fa42b4bc3eb3d2665bf96
2011-07-14 15:47:32 +09:00
satok
46f2d44a29
Merge "(Step 1) Move proximity related parameters from unigram_dictionary to proximity_info"
2011-07-13 21:30:30 -07:00
satok
1d7eaf8462
(Step 1) Move proximity related parameters from unigram_dictionary to proximity_info
...
Change-Id: Ic630b35f4abffeb84c38bcf5935795b7ff07556a
2011-07-14 13:21:34 +09:00
Jean Chalard
b2ba41397f
Merge "Activate the implementation for the new dictionary format."
2011-07-13 19:20:32 -07:00
satok
827ced8486
Separate logging definitions in C
...
Change-Id: I1d79814d1fd74e92a280f355c535517618c51752
2011-07-14 09:01:09 +09:00
satok
787945bf1e
Fix build for profiling
...
Change-Id: I39cd0fa37fb738dcbbcf82839b6bb030e3af606b
2011-07-14 08:32:57 +09:00
Jean Chalard
cba9e23bb1
Activate the implementation for the new dictionary format.
...
Bug: 4392433
Change-Id: I20b05d012b1fb193002312792d0309d36c89d16a
2011-07-14 06:55:20 +09:00
satok
3e41c071e6
Merge "Add a flag for a profiling"
2011-07-12 23:27:51 -07:00
satok
20d9fdae3a
Add a flag for a profiling
...
Change-Id: Iae509a24fd0f0f416376c3f8051aa2eb92d48659
2011-07-13 15:21:10 +09:00
Jean Chalard
0adf7ae299
Merge "New dict format, step 7"
2011-07-12 22:48:45 -07:00
Jean Chalard
1059f27364
New dict format, step 7
...
This actually implements the new dictionary format, but does not
activate the implementation through #defines.
Bug: 4392433
Change-Id: I9b26b9bcb4b823a36e0984799b69730acfc6f7f3
2011-07-13 14:33:48 +09:00
Doug Kwan
ce9efbff53
Compile code used in logging conditionally so that gcc does not complain
...
about unused-but-set variables.
Change-Id: I141f438694a1854d54d08cb5a74c23222dd9d85e
2011-07-08 00:29:11 -07:00
Jean Chalard
bb15e77511
Move a function to make next commit more readable
...
Change-Id: Ieaa935ff4d68ce88137dcc5c672a4149a4c9c64f
2011-06-30 20:14:38 +09:00
Jean Chalard
e6715e32d5
Move a function out of a #endif to reduce a future commit
...
Change-Id: Ic8f3160a96b6d79ba19ff9c8eda1692e94a38e98
2011-06-30 19:47:25 +09:00
Jean Chalard
0584f02ee1
Rename parameters for future change
...
Change-Id: Id15a17340fb26f91c72687f30bef24b2d8b94940
2011-06-30 19:23:16 +09:00
Jean Chalard
432789ac93
Internal cleanup
...
Moving functions around, renaming parameters
Change-Id: I3ab480f483d7d9700b9328cb07b16b51005098e5
2011-06-30 17:50:48 +09:00
Jean Chalard
ffefdb6c1a
Cleanup.
...
Function renaming, moving around for future patch readability
Change-Id: Id33b961cf2e899b5a3c9189951d2199aba801666
2011-06-30 17:22:19 +09:00
Jean Chalard
980d6b6fef
Internal cleanup.
...
Function renaming, useless function supressing, fix comments
Change-Id: I148acbaf367cd556a85b89016676b46cc971af81
2011-06-30 17:02:23 +09:00
Jean Chalard
594a9a1963
Internal cleanup.
...
Removed unused function prototypes.
Change-Id: Ia56ea8e285deed17ce8377df855b045b7850d58d
2011-06-30 16:51:17 +09:00
Jean Chalard
85a1d1ea74
New dict format, step 6
...
Copy the modified functions to be able to see the diff
Bug: 4392433
Change-Id: Ic9b83b4b4b7b89cc922eed1825507d7d516aff24
2011-06-21 22:24:54 +09:00
Jean Chalard
bc90c72faf
New dict format, step 5
...
Move functions that will be modified and enclose those that will
be replaced into #ifdefs.
This change does not modify any code, only move some code around.
Bug: 4392433
Change-Id: Ibefbda1eb8bdc8a0c72de47ad9c67a08d0aca960
2011-06-21 12:15:00 +09:00
Ken Wakasa
ce9e52a12a
Clean up in LatinIME native code
...
Change-Id: I0062200a0181a491690115ac0fab8d11358e2f14
2011-06-18 23:52:09 +09:00
Jean Chalard
23eb0fa0b5
Merge "New dict format, step 4"
2011-06-17 05:30:26 -07:00
Jean Chalard
ca5ef2890e
New dict format, step 4
...
Consolidate terminal cases, streamline the word adding process
and create the entrances for adding alternate spellings with an
empty implementation.
Bug: 4392433
Change-Id: I781c93ec49945d71c7c20624c86596aa49add4c8
2011-06-17 20:59:21 +09:00
Jean Chalard
4fd9650f0b
New dict format, step 3 - followup
...
Make the passing of an argument clearer
Bug: 4392433
Change-Id: Id82662ff4dc25282f70a08bee77378fee2b4b590
2011-06-17 17:08:09 +09:00
Jean Chalard
581335c3fb
Fix a bug where bigram search would never return
...
Bug: 4690487
Change-Id: Ie8f3f651508cc48bbb043a0b308f7e0d1524371c
2011-06-17 12:45:17 +09:00
Jean Chalard
17e44a72e8
New dict format, step 3
...
Some refactoring and add of a parameter that will be necessary.
Bug: 4392433
Change-Id: I17f001a7efd4f69f4c35f94ee1ca8e97391b81d5
2011-06-16 23:28:09 +09:00
Jean Chalard
8124e64dcc
New dict format, step 2
...
Move some methods around and make static some methods
Bug: 4392433
Change-Id: I2bbe98aec118a416d21d1e293638e1d324505b9b
2011-06-16 22:33:41 +09:00
Jean Chalard
293ece0f34
New dict format, step 1
...
This renames some variables and removes dependancies to values that
will disappear
Bug: 4392433
Change-Id: I79a44462d6bf25248cc2de0d63d7918fc6925d68
2011-06-16 22:18:10 +09:00