Commit graph

124 commits

Author SHA1 Message Date
Keisuke Kuroyanagi
a72a33388f Fix native crash by caused wrong munmap.
Bug: 10402083
Change-Id: I5aa2cecd20cd3202c2326b1cbb6758257afd6d5d
2013-08-21 18:57:58 +09:00
Keisuke Kuroyanagi
381c12df20 Move methods in BinaryFormat to PatriciaTriePolicy.
Bug: 6669677

Change-Id: Ic9bc03a9d8ec789281d83d4b9e58042a083c3ba1
2013-08-16 16:42:17 +09:00
Keisuke Kuroyanagi
0624cc6cf3 Remove BinaryDictionaryInfo and introduce MmapedBuffer.
Bug: 6669677
Change-Id: I70e47fa20109060b6ea7a04bcc42ab8f7c543f77
2013-08-16 12:52:04 +09:00
Ken Wakasa
d4fcf1dbc5 Revert "Remove BinaryDictionaryInfo and introduce MmapedBuffer."
This reverts commit d14ffcfcbc.

This broke a bunch of unit tests -- https://sponge.corp.google.com/target?id=a8a62bd0-3aab-4520-ae64-53f9652ef64b&target=com.google.android.inputmethod.latin.tests&searchFor=&show=FAILED&sortBy=STATUS

Change-Id: I1eae460e09808513eacefd523609330819d73d16
2013-08-15 11:37:48 +00:00
Keisuke Kuroyanagi
d14ffcfcbc Remove BinaryDictionaryInfo and introduce MmapedBuffer.
Bug: 6669677

Change-Id: I1459bb53a9761d920427e4b5d925a2844955c88c
2013-08-15 18:17:44 +09:00
Keisuke Kuroyanagi
6ec3f63d59 Merge "Make dictionary structure policy have updating methods." 2013-08-15 03:15:43 +00:00
Yuichiro Hanada
46ebaa49e9 Fix a comment.
Change-Id: I5d09fd2474c7a0e6f42b6c7c6e717692636fbc6d
2013-08-15 11:57:58 +09:00
Keisuke Kuroyanagi
7fd9667d76 Remove NodeFilter.
Change-Id: I27d905dd3581cbb0e67d071dba04066aaa2ba22e
2013-08-14 18:20:15 +09:00
Keisuke Kuroyanagi
dfecc86f25 Fix ShortcutListPolicy::getStartPos().
Bug: 6669677
Change-Id: I1fa9967fc6aa0956986954c8ea1f990a47c15764
2013-08-14 17:23:57 +09:00
Keisuke Kuroyanagi
90619ae02b Move utils for reading dict to policyimpl.
Bug: 6669677
Change-Id: Ia1da3cb84b457665cf26172d3810e1d28329bca4
2013-08-14 15:50:42 +09:00
Keisuke Kuroyanagi
66facd37dd Make dictionary structure policy have updating methods.
Bug: 6669677

Change-Id: I6aa8e377c6347e0db4b7a82293b316ec64d87bec
2013-08-14 11:34:42 +09:00
Keisuke Kuroyanagi
23d3ed962f Move files for headerPolicy to policyimpl.
Bug: 6669677
Change-Id: Ic90feb9c3a9a7b698e588c8ad25c765a246706a8
2013-08-13 20:35:16 +09:00
Keisuke Kuroyanagi
76e579c7ca Move header reading methods to policyimpl.
Bug: 6669677
Change-Id: I24cb32f28cf355485b431cc56d877000e3f946d4
2013-08-13 20:22:40 +09:00
Keisuke Kuroyanagi
d81654cd61 Use DictionaryStructureWithBufferPolicy for traversing.
Bug: 6669677
Change-Id: If7bc038278b7217ed5ba4cb77b1238b2dad0001b
2013-08-13 19:38:20 +09:00
Keisuke Kuroyanagi
f4688f8df0 Cleanup ShortcutListReadingUtils.
Bug: 6669677
Change-Id: Ifd61022665c89f492933dde9811ec644f7e1f5c4
2013-08-12 17:46:13 +09:00
Keisuke Kuroyanagi
f1e383ed45 Change name of shortcut reading util class.
Bug: 6669677
Change-Id: If93916f4c3d568119ff6b83e22e95c7086423d2f
2013-08-12 17:37:59 +09:00
Keisuke Kuroyanagi
7c48352af8 Move methods for Shortcut reading to policyimpl.
Bug: 6669677
Change-Id: If0a565de015564f803429f4fbf21b05687f80553
2013-08-12 17:18:28 +09:00
Keisuke Kuroyanagi
fd10db04e0 Move shortcut iteration methods to poilcy.
Bug: 6669677
Change-Id: I6e535ce7962de8e153a52fd1085fe961649ffe16
2013-08-12 15:53:09 +09:00
Keisuke Kuroyanagi
277053af7c Move bigram reading methods to BigramListReadingUtils.
Bug: 6669677
Change-Id: Icb024a8af577323b4dcf74f4c4054cfb8b57a943
2013-08-12 11:54:31 +09:00
Keisuke Kuroyanagi
668870be43 Move bigrams iteration methods to policy.
To support various bigram format.

Bug: 6669677
Change-Id: Ifc8c1a855b03cd5a39d97a6e10872ef8ef76475b
2013-08-09 20:20:34 +09:00
Keisuke Kuroyanagi
e1ebef6124 Make DictionaryStructurePolicy have buffer info.
To support various format dictionary, extendable
buffers or multiple files.

Bug: 6669677
Change-Id: I203a5a4adc049a6322cfba4eacb4cb6715f8dfc2
2013-08-09 05:27:22 +00:00
Keisuke Kuroyanagi
b2408c7f71 Fix parent position reading for ver3 dict.
Bug: 6669677
Change-Id: Ia55d4ecb43c7d37b9bc466b848d5142bc13cd823
2013-08-08 16:31:17 +09:00
Keisuke Kuroynagi
744084defb Implement getTerminalNodePositionOfWord for ver3 dict.
Bug: 6669677

Change-Id: Ib9f88d23e6502b8281921ae2f1e47f930b16972f
2013-08-07 17:59:52 +09:00
Keisuke Kuroynagi
9601df5aac Implement getCodePointsAndProbabilityAnd... for ver3 dicts.
Bug: 6669677
Change-Id: I5c3b53d015496e11cb6c1f19938b8ee8a4c0f983
2013-08-07 11:53:34 +09:00
Keisuke Kuroynagi
2b1dd6e253 Implement a part of ver 3 dictionary reading methods.
Bug: 6669677
Change-Id: I83c159838ad99b2093907b9de7df6cb7a97b4165
2013-08-06 10:18:20 +09:00
Keisuke Kuroynagi
cf1f7675ea DynamicPatriciaTrieReadingUtils for version 3 dictionary.
Bug: 6669677
Change-Id: I7105258a00159a5ddda7ff520c490c4ac9fa7902
2013-08-01 16:15:49 +09:00
Keisuke Kuroynagi
647c000707 Give PatriciaTrieReadingUtils methods for reading nodes.
The remaining methods in BinaryFormat will be removed.

Bug: 6669677
Change-Id: I866f828d69a600c0ac03b68d71b1f6ee2ce4dd36
2013-08-01 16:15:35 +09:00
Keisuke Kuroynagi
f0a7f70cf6 Fix: Include wrong file in dynamic_patricia_trie_policy.cpp.
Change-Id: If994f17e41c7d07e979fa6b0aa4661da0523eb0a
2013-08-01 14:48:20 +09:00
Keisuke Kuroynagi
8045b7cd24 Merge "Introduce DynamicPatriciaTriePolicy for ver 3 dictionary." 2013-08-01 05:39:07 +00:00
Keisuke Kuroynagi
2401f7c62d Move binary_format.h to policyimpl.
Bug: 6669677
Change-Id: I3712f60528c7fcf364746f792cec6e180ab2dbef
2013-07-31 21:07:32 +09:00
Keisuke Kuroynagi
26de7079b6 Introduce DynamicPatriciaTriePolicy for ver 3 dictionary.
Bug: 6669677
Change-Id: Idd3189558aa6fbbd6b2fd007c5721bf39dde9f48
2013-07-30 17:41:13 +09:00
Keisuke Kuroynagi
1fb11da36a Move creating children methods to structurePolicy.
Bug: 6669677
Change-Id: I20760f8ab95b18d21383960f6466db0d79429200
2013-07-29 19:31:27 +09:00
Keisuke Kuroynagi
4447b14b78 "much" in suggestions of "m" after "very"
Make cache size larger for single point input.

Bug: 9823678
Change-Id: Ic6bbcebd18eccaf9f9ac07d9c0d456a62f6c5287
2013-07-26 18:35:42 +09:00
Satoshi Kataoka
75322cecb9 Support terminal insertion error correction
Bug: 9421356

Change-Id: I19685763ca487b5636019d62e150708c63ce6fc2
2013-07-25 22:07:38 +09:00
Keisuke Kuroynagi
cb4a7c1d87 Fix: "saomething" -> "something".
Fixed by making MAX_CACHE_DIC_NODE_SIZE larger.

Bug: 9682742

Change-Id: I0312952c90b0820bed37df99c223921c68450570
2013-07-24 17:55:25 +09:00
Keisuke Kuroynagi
b179199830 Fix: huge bigram costs for blacklisted words.
Bug: 8844931
Change-Id: I523005c5ed9a3d401a67b0e4e1c3ff2e4574e6df
2013-07-22 22:05:16 +09:00
Keisuke Kuroynagi
c38ec47596 Get BigramsPos and ShortcutPos via structure policy.
Bug: 6669677
Change-Id: I924d5512377cfcfe72d3470006b81a36db3865b6
2013-07-17 20:13:04 +09:00
Keisuke Kuroynagi
b6f286bfa5 Merge "Make bigram dictionary and traverse session use structure policy." 2013-07-16 02:45:36 +00:00
Keisuke Kuroynagi
34047d8905 Quit ignoring language cost of exact matches.
Handle exact matches in DicNode::compare() and calculateFinalScore().

Bug: 8844931
Change-Id: I17c78d4e352b0a4308727229b02a8004b38468bf
2013-07-11 08:25:17 +00:00
Keisuke Kuroynagi
1311cdcb62 Make bigram dictionary and traverse session use structure policy.
Bug: 6669677
Change-Id: I5a13290366afbb788da997b98d1c593963e92f3e
2013-07-08 14:25:50 +09:00
Keisuke Kuroynagi
0933353c0c Merge "Read version 3 dictionary header." 2013-07-04 14:19:35 +00:00
Keisuke Kuroynagi
a829188f54 Allow force auto commit when the top is long multiword.
Bug: 9688196
Change-Id: I73ff2cd77b932bf7307b3541ea9da3fa4afa11b4
2013-07-04 17:39:01 +09:00
Keisuke Kuroynagi
5ae8722bd5 Read version 3 dictionary header.
The header structure of version 3 dictionary is same as version 2.

Bug: 6669677
Change-Id: I26c8723333938fbf102de1a40f11d97444da9075
2013-07-03 17:10:48 +09:00
Keisuke Kuroynagi
2164856205 Merge "Move children filtering methods to DicNodeChildrenFilter." 2013-07-02 09:35:06 +00:00
Keisuke Kuroynagi
92db5e10b1 Remove format version 1 related logic.
Removed from DictionaryStructurePolicyFactory

Bug: 9617181
Change-Id: Ice4b4a24e019c88b0ec129dc69176c7541f8530c
2013-07-01 16:28:06 +09:00
Keisuke Kuroynagi
7a06a79287 Move children filtering methods to DicNodeChildrenFilter.
Bug: 6669677
Change-Id: If18055e2da8dd5d783942ba384d3ea1d97030e3a
2013-07-01 15:07:15 +09:00
Keisuke Kuroynagi
c5e6efafff Introduce patriciaTrie to abstract traversing version 2 dictionary.
Bug: 6669677
Change-Id: Ifef72f3d7a7ba67c5232b98c7835485d72d7322d
2013-06-28 19:47:00 +09:00
Keisuke Kuroynagi
940cca4fa9 Merge "Check adjacent proximity chars for insertion for typing" 2013-06-24 00:52:02 +00:00
Keisuke Kuroynagi
be2a172d4e Merge "Give the best score to the most probable exact match." 2013-06-24 00:28:02 +00:00
Keisuke Kuroynagi
24706f8f5c Check adjacent proximity chars for insertion for typing
Change-Id: I6ce1b065bba055516fca0c8af6f14853a111aa68
2013-06-24 09:25:46 +09:00
Keisuke Kuroynagi
f0dc0b1b74 Give the best score to the most probable exact match.
Bug: 9490364
Change-Id: If7fe5da190516d4b5f7a41b752ef5960205a5899
2013-06-21 19:11:39 +09:00
Keisuke Kuroynagi
09858cbde4 Change method name of getDepth and getTotalLength.
Change-Id: I4b3aa54e17d7de7c31f956dc9d59941d79856fd7
2013-06-20 20:55:23 +09:00
Keisuke Kuroynagi
6bfeeb8694 Support multi words input for gesture.
Bug: 8591918

Change-Id: I344f936907a385cc6c3c8a2215a6603938483401
2013-06-17 19:04:29 +09:00
Keisuke Kuroynagi
527c128309 Remove unused methods.
Bug: 8550444

Change-Id: Ie627084143846407ca36df82c2a7f904a0e6f49c
2013-06-11 17:04:40 +09:00
Ken Wakasa
addea83bad Create "src/utils" directory
Change-Id: I0b7c51d181edc4786e343f7a953367b040ee6b66
2013-06-03 12:29:34 +09:00
Keisuke Kuroyanagi
0ecfb94247 Use BinaryDictonaryInfo instead of raw pointers.
Bug: 6669677

Change-Id: I9792a872f1609de7c1ba0fc08d916047d6724c0b
2013-06-02 16:34:42 -07:00
Ken Wakasa
464d3ba432 Move char_utils to the dictionary directory
Change-Id: Id397485407fe63600c9bb5c80d223042942b4d8a
2013-05-31 20:39:34 +09:00
Ken Wakasa
29432f843a Create a new directory for layout-related implementations
Change-Id: Ia227bb296f20dab0dfc03dfcde3a06c624eca76c
2013-05-30 19:45:53 +09:00
Keisuke Kuroynagi
a09f9709e0 Checking key edit distance of candidate words for gesture scoring.
bug: 8616704
Change-Id: I98c3248877b1e3e722a6c00a2851e543e5fcbe11
2013-05-07 19:47:20 +09:00
Tom Ouyang
8da0c93292 Reduce MAX_NORM_DISTANCE_FOR_EDIT in typing model after recent logic improvements
After recent logic improvements we can now safely reduce MAX_NORM_DISTANCE_FOR_EDIT.
This leads to better regression test performance and faster runtime speed.

Bug: 8633962
Change-Id: Ie0db73680b32687ff4d8ea5dfae47dee5c7c66a3
2013-04-29 21:21:26 -07:00
Keisuke Kuroynagi
a107dcaeb6 Fix: Demote first char capitalized new words.
Bug: 8680578
Change-Id: I84bcdf3a20428c7561f600332bfef4685c72b67f
Signed-off-by: Keisuke Kuroynagi <ksk@google.com>
2013-04-30 11:28:18 +09:00
Tom Ouyang
9559dd2e30 Improve bigram frequency lookup
Bug: 8592527

Change-Id: I1908bcb552279b9acb140fe4d8d26b10ed9eda72
2013-04-26 12:22:23 -07:00
Ken Wakasa
866a6ced57 Just cosmetic cleanups
Change-Id: I3dc8a4bb3f89f4a18cfffd5f13a71503738452e6
2013-04-26 19:58:14 +09:00
Tom Ouyang
fd02ec10f0 Always consider corrections of intentional omissions (e.g., apostrophe)
Example: "thts" -> "that's"

Bug: 8721815
Change-Id: I8c1efbf651d2569ba3600516cc7447d46bf30fa4
2013-04-25 20:30:15 -07:00
Keisuke Kuroynagi
60a169f0c3 Fix exact match checking for words with digraph.
Bug: 8624690
Change-Id: I8946d6618609c8e0cb638aa96992b51b435232c7
2013-04-25 16:47:52 +09:00
Keisuke Kuroynagi
911f326857 Fix proximity/edit correction detection that affects the terminal cost.
Bug: 8624690
Change-Id: If59305674a781e0fcc284d236e3d8ba9cdf9ed08
2013-04-24 20:21:18 +09:00
Tom Ouyang
14aa8f1d32 Fix autocompletion lookahead handling
Bug: 8689370
Change-Id: I056b1788764bd5c4d8ad9da86e790562d2781f06
2013-04-22 19:36:14 -07:00
Tom Ouyang
90cb956c4f Remove duplicate new-word bigram cost (part 1)
Removes a duplicate application of the new word bigram cost and updates only
the related parameters (those associated with multi-word suggestions).

Note: test results will improve after full optimization.

[Category diff]
+1     357
-1     485
+2      16
-2      20
+3      20
-3      16
+4     198
-4     226
+5     510
-5     443
+6     518
-6     368
+7     394
-7     455

[Weighted category diff]
+1     482
-1     532
+2      22
-2      22
+3      22
-3      22
+4     233
-4     381
+5     578
-5     500
+6     617
-6     498
+7     522
-7     521

Bug: 8633962
Change-Id: I3c3ecc9460e8e03e44925e11b2d4b037a6c3b99e
2013-04-17 19:25:48 -07:00
Satoshi Kataoka
252412d7eb Use additional multi-word cost per language (for Russian)
Bug: 7540133
Change-Id: I7eb7b8399746c15452ed2ed5069955e88fb546d3
2013-04-16 16:42:36 +09:00
Satoshi Kataoka
837f46dcb3 Enable touch coordinate correction for new algorithm
Bug: 8505668

Change-Id: I07eb785c74c446777524104a3d2b61f0f591a498
2013-04-15 19:10:27 +09:00
Ken Wakasa
b68e734481 Cleanup the include paths
Change-Id: Ic93d39e230170cfc9f5be6d81d42006e1a61e347
2013-04-08 18:45:46 +09:00
Satoshi Kataoka
e67ede12ec Cleanup suggest interface
Change-Id: Ibe334a1d3ab3af69acfa64412c80f0ea24cd2c46
2013-04-08 12:54:04 +09:00
Satoshi Kataoka
95fe826795 Move suggest logic to AOSP
Bug: 8197301

Change-Id: I2d0ffbbc9d4d57ebfc2fe43e6cb75e8b44dae466
2013-04-03 21:00:57 +09:00
Satoshi Kataoka
a6a4165196 Move typing policy to AOSP
Bug: 8197301
Change-Id: Ife9b41a465d7b8d707623a6d3e4c1c88c3c3c4ab
2013-04-02 16:53:53 +09:00