Commit Graph

145 Commits (617ce71b79abe82176b1174a8cef47e095608759)

Author SHA1 Message Date
Jean Chalard bb57090f1d Create the wiring for auto-commit confidence computation.
Bug: 9059617
Change-Id: I7e4e05ffa8c68cfebbe362a977fd176555cad12a
2013-10-01 15:04:15 +09:00
Keisuke Kuroyanagi c18510049a Prepare dictionary decay.
Bug: 6669677
Change-Id: I8fbae190dd44a6bdbee7e9b6d3a16208322727f7
2013-09-30 13:57:54 +09:00
Keisuke Kuroyanagi 31097a57cc Add unigram/bigram counting.
Bug: 6669677
Change-Id: I05ea2201d822dddf062b08c8467daa336760e16c
2013-09-27 23:12:12 +09:00
Keisuke Kuroyanagi 5ef6209656 Create empty dictionary file in native code.
Bug: 6669677
Change-Id: I46d23deee1fd091678f4593561cb8687eb815212
2013-09-26 12:59:02 +09:00
Keisuke Kuroyanagi 4d02a2d44d Add BinaryDictionary.getBigramProbabilityNative().
Bug: 10197478
Change-Id: Id16e3ee22a17679c46cc7a0199a9e28065177aa3
2013-09-18 11:18:28 +09:00
Keisuke Kuroyanagi d0246277fd Prepare dictionary saving in native code.
Bug: 6669677

Change-Id: I0787f66409e2b183c6328fa05805945520e1e93a
2013-09-17 18:07:16 +09:00
Jean Chalard 24aad5a4d5 [AC4] Add native methods necessary for auto-commit
Bug: 9059617
Change-Id: I7a47b0675446fc4f39628c60d16de9aea90d1b4d
2013-09-13 20:15:15 +09:00
Keisuke Kuroyanagi e531c2241e Move a flag about switching dynamic update to java.
Bug: 6669677

Change-Id: I6aa99cae4a227f9202179c2873d13473a773e024
2013-09-10 18:45:53 +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
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 Kuroynagi 2a2aac2568 Remove checkFirstCharacter from BigramDictionary.
Bug: 10028452
Change-Id: I27b147e83b312d73e975a0b2bc8074b33906e56e
2013-07-31 13:47:23 +09:00
Keisuke Kuroynagi 72f69fd621 Return NOT_A_PROBABILITY in getProbability for inalid dictionary.
Bug: 9682742
Change-Id: Ifad4b9811bb5e1a94aed59eba7aedcdb6da5cf9c
2013-07-03 20:12:38 +09:00
Jean Chalard 7eba0198c0 Dump binary dictionary information when opening
Bug: 9459517
Change-Id: I122583e734936ae0284e1c7500c6c9242bc7973b
2013-07-01 18:41:00 +09:00
Ken Wakasa c445369732 Fix class names
Change-Id: Ib3e15bdf46585976aa5b42132805754fc2e2908b
2013-06-26 23:06:14 +09:00
Keisuke Kuroynagi 5bf1be7162 Add jni methods for dynamically handling a dictionary.
Bug: 6669677
Change-Id: I8a26623adbb41a78e3c023c652be635c635e3b47
2013-06-26 12:51:33 +09:00
Keisuke Kuroynagi f3b62900c7 Allow mmapping dictionary file in writable mode in openNative.
Bug: 6669677
Change-Id: I447668932de118b158fa029ddc977b3f3cc06cb8
2013-06-25 16:03:33 +09:00
Keisuke Kuroynagi 46159d5422 Move file and mmap information form Dictionary to BinaryDictionaryInfo.
Bug: 6669677
Change-Id: I05d435e0884430f8abbbed6ea2df775005ee8622
2013-06-25 16:03:30 +09:00
Keisuke Kuroynagi 527c128309 Remove unused methods.
Bug: 8550444

Change-Id: Ie627084143846407ca36df82c2a7f904a0e6f49c
2013-06-11 17:04:40 +09:00
Keisuke Kuroynagi bd0d1afdb2 Introduce BinaryDictionaryHeader to access binary dictionary header.
BinaryDictionaryHeader abstracts header structure and access header information via only its instance.

Bug: 6669677

Change-Id: Ib5ab0e8fef12265ddabc1d0165548b69953bba6a
2013-06-11 12:01:49 +09:00
Ken Wakasa ad0c6d7b36 Cleanups in JNI related code
Removed the malloc version in binary dictionary support -- this has not
really been tested well so far, and the mmap version has been working pretty
well after all.

Several cosmetic fixes etc.

Change-Id: Iad0da58b300b769fb5946a3e73fc96f56215980e
2013-06-04 19:16:47 +09:00
Satoshi Kataoka d858b5815f Move obsolete files to obsolete dir 2
Bug: 8550444
Change-Id: Ia83796d696e04f51adb39867dfd21d1ac993b63c
2013-06-03 17:42:27 +09:00
Satoshi Kataoka 7c92b421ee Purge DicTraverseWrapper
bug: 8550444

Change-Id: Iad017e66ac579c6727b9f60ad9cda64e478200e5
2013-06-03 16:45:51 +09:00
Ken Wakasa f497e1e5a0 Move suggest_options.h to suggest/core
Change-Id: Ie95872a4c90ee3089183c1ebafb67243bd2688a4
2013-06-03 11:45:06 +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 a65c267b1f Move some dictionary related implementations to the dictionary directory
Change-Id: I6fe71a540ad91ca46755be234abc8894242e2413
2013-05-31 00:02:57 +09:00
Keisuke Kuroyanagi 338ef65077 Make DicTraverseSession having suggest options.
Change-Id: I2b802c06634e5226c763fd838f3fc0918fc4a161
2013-05-29 17:18:03 -07:00
Keisuke Kuroyanagi 50db5f0fff Passing options to native suggestion method.
Change-Id: I6da180cfa1b9e5aa39600e78e3bc41209a40f583
Signed-off-by: Keisuke Kuroyanagi <ksk@google.com>
2013-05-24 10:21:04 -07:00
Jean Chalard 03f8c6aed3 Be careful about the dictionary size in detection methods
Bug: 8857618
Change-Id: I29345ec96d53da601571ba73197a6485643a10a7
2013-05-08 18:55:18 +09:00
Tadashi G. Takaoka ef86bbceae Add const_cast to live with host's jni.h
Bug: 7970626
Change-Id: I2fd09e16dd9df36eebca2d737a0b7cc3ddd1c862
2013-03-26 17:58:17 +09:00
Satoshi Kataoka e0e6737373 Refactor parameters by naming convention
Change-Id: I8bda8075b33f656ecbec08320afcd864b620fe77
2013-03-18 15:42:15 +09:00
Ken Wakasa cffb3126ac Small cleanups
Change-Id: I3e5862a405b4c63616c7ea947cd53c52b5035862
2013-01-30 01:19:29 +09:00
Ken Wakasa 5db594abba Remove MAX_WORD_LENGTH_INTERNAL
Change-Id: Ie11ff000675601acff5fbb00e9e9f48eb32c5071
2013-01-15 12:39:08 +09:00
Ken Wakasa f6870cc82d Remove BinaryDictionary.MAX_PREDICTION and MAX_SPACES, and rename MAX_WORDS to MAX_RESULTS
Change-Id: Iab2a422b367e7521f346481c7fe5e2575f2e9de3
2013-01-11 20:47:42 +09:00
Ken Wakasa aaefc4b30c Yet another small cleanups
Change-Id: Ie940c4d4d9d85c95e2f04ba23f00a54ba3dc53bf
2013-01-08 17:57:26 +09:00
Ken Wakasa fe9ec6bc7d Remove unused variables
Change-Id: Ia5079368a1bc86ccdf0052445dc6945041c0abca
2012-11-16 19:28:56 +09:00
Ken Wakasa 44d9c1ebfc Use sizeof() more safely.
Change-Id: I7cffb4d8da847b483cf4bb482508e3c88c4903be
2012-11-01 17:29:50 +09:00
Ken Wakasa 1e61493c50 Use 32-bit code points for suggestions output
This is a multi-project commit with Ic43dd666

bug: 6526418
Change-Id: I39c1acb4e91d04cd8a4ec5a943c8cf575da75ebc
2012-11-01 00:09:51 +09:00
Ken Wakasa b02ee3d67a Make use of the NELEMS and KEYCODE_SPACE macro. Also, remove an unused parameter.
Change-Id: I3c7e6c59990c92b0d5e2fb80493e8673cdd37b09
2012-10-09 11:17:50 +09:00
Ken Wakasa f2789819bd Cosmetic fixes and a bug fix in UnigramDictionary::testCharGroupForContinuedLikeness().
This change has actually been extracted from a change work in progress I4fe423834b8131fb122251892c98228a6e08ba25

Change-Id: I52568fa09da2ea22be7f8bfe9676b7cd73c31fa4
2012-09-04 14:23:37 +09:00
Ken Wakasa 162c211b44 Address warnings by -Weffc++
Change-Id: Icd60f1ed2ace0b975d8785bc8a386c7944846075
2012-08-24 23:50:39 +09:00
Jean Chalard 8af8c15c6b Allow one-character suggestions.
Bug: 6906525
Change-Id: I62117653ac1281f825afc4ebb30f7e786902b750
2012-08-17 11:10:58 +09:00
Ken Wakasa 267030dd82 Cleanup casts.
Change-Id: I3bf33ca407cc3bee9f5c4c6f929cdb1421b92c50
2012-08-14 19:03:09 +09:00
Ken Wakasa 34710b03e6 A couple of cleanups. Remove unnecessary casts.
Change-Id: Ice530aa83a9a688da35aec408be2a60242699157
2012-08-14 18:07:32 +09:00
Ken Wakasa bcec82de66 Clean up constructors
And, use C++ style casts and use float math functions rather than double ones to save memory space.

Also, stop using FloatMath and NativeUtils as standard Math methods are faster now.
See http://code.google.com/p/android/issues/detail?id=36199 and https://android-review.googlesource.com/40700

multi-project commit with I4259fb5ab8a15ac5760a7f04fc8f4c860529f04a

Change-Id: I0b81cff8c91769f7559a59b9528c75a5aabb4211
2012-08-13 10:48:37 +09:00
Ken Wakasa 063c3e2171 Fix memset() bugs
Change-Id: Icf4341c0a62e782cf8c2a863408591df4e6f07cb
2012-08-10 22:13:21 +09:00
Ken Wakasa f3850e5543 Use JNI Region calls also in getSuggestions()
Change-Id: I9cc0208397c202aeb6f7b5bb5ad59e00c5afbd80
2012-08-10 21:09:23 +09:00
Ken Wakasa 5bb4206275 Use more JNI Region calls
Change-Id: I371db517ff4749c0b7e5bdb4362e6310c91a24dc
2012-08-10 00:46:20 +09:00
Ken Wakasa 04a89132e9 Use GetStringUTFRegion for filename
Change-Id: I2e9ad092ccf4c23c1c6b71916c962994314d37b6
2012-08-09 23:27:58 +09:00
Satoshi Kataoka 9127811493 Pass traverse session
Change-Id: I84bfaaa406e3f51421c08a7ee8f9576ebdba54d4
2012-08-08 23:30:31 +09:00
Ken Wakasa 1d8a246e39 Header cleanup
Change-Id: I1aa91708d0de01ca3e84e69ec8d3a3832c386ca8
2012-08-03 18:37:58 +09:00
Ken Wakasa 74fb957e49 Header cleanup
Change-Id: Idaf19de3dc75367d49bc01e84e5a9f057c1f8dba
2012-08-01 18:46:07 +09:00
Ken Wakasa f1008c5501 Cleanup headers
Change-Id: I9124366b2000cad54966fb6936bb4691bbf115a3
2012-07-31 18:45:26 +09:00
Ken Wakasa 5460ea389d Misc cleanups
Change-Id: I28308f12c3064299acefc346b72279036c3726a7
2012-07-30 16:27:44 +09:00
Ken Wakasa 0bbb917d12 Cosmetic fixes and style fixes
Change-Id: I69c42ff945cdf0d5205c6ca61d6861a0479492dc
2012-07-25 18:56:51 +09:00
Jean Chalard 6931df9c17 Pass an array to output suggestion types (A119a)
This needs the matching A119b change to not break the build.
The array is passed, but not used yet.

Bug: 6166228
Change-Id: Ia91d658461d989ee8c94e9b31bb06f4a36f4c5b6
2012-07-12 19:21:42 +09:00
Jean Chalard 18d76afa91 Remove an unused method (A109)
Change-Id: Ib785b7e8c554d030395e2c0ca92edb44eb2b245f
2012-07-12 14:30:03 +09:00
Jean Chalard cc470c78e4 Move an implementation detail to native code (A107)
Java code does not have to know about this implementation detail:
the generic method should do the dispatching, instead of having
the caller call either method.

Change-Id: Ic13727f0cb18f4ced2c356cce2f8d710588c0421
2012-07-12 13:09:44 +09:00
Jean Chalard 6a5d17cd2f Remove a useless parameter (A106)
Change-Id: Ic0ecea22212fd1a098a3a168da460374e446f4a3
2012-07-12 11:28:16 +09:00
Jean Chalard b7d7c5a369 Make a constant really constant (A104)
Change-Id: Ied1f9f96a574b1e6a8ee0a71bfb1604d9c962e1c
2012-07-12 11:16:30 +09:00
Jean Chalard 05efe576f9 Cleanup the dictionary type.
Stop storing an int in each of the different class types, and
just store a string in the top class.

Change-Id: I2af1832743e6fe78e5c1364f6d9cc21252bf5831
2012-06-27 17:31:09 +09:00
Satoshi Kataoka 7368009799 Change JNI for Gesture
Change-Id: I774a0052038d16677f60f7efa11fd266cb5f3088
2012-06-25 18:54:37 +09:00
Satoshi Kataoka 2f854e170c Add a JNI to get the frequency
Bug: 4192129
Change-Id: I3f220f5a10114d4eb23956148076cf76220bda0f
2012-05-29 17:21:59 +09:00
Ken Wakasa 3b088a2f36 Add missing includes.
Change-Id: Ic7199045d0cffb208871f52cc167194013351d32
2012-05-16 23:05:32 +09:00
satok 0028ed3627 Use "float" instead of "double"
Change-Id: I93ed4d88ede4058f081dd8d634b00dfff4e96d07
2012-05-16 20:45:05 +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 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 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
Jean Chalard 80111f08e2 Pass the previous word down to native code in getSuggestions
Change-Id: I477b631d81ef58461e44954f3ae5fd895928bb97
2012-04-17 20:07:10 +09:00
Ken Wakasa db87fe4d5c Just cosmetic changes in jni code
Change-Id: I8628131b5a7ccdee4c158e891002c8b86623b0cd
2012-04-16 19:16:05 +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
satok 6ba8de2a60 Good bye the proximity logic in Java code
Bug: 4343280
Change-Id: I82f7d08703647a3492ce6e2d3b741146df58927e
2012-03-28 18:42:30 +09:00
satok 9fb6f47a6a New LOG lib
Change-Id: I977e7e10fa58c0a64ca0c3c7b5cb2272446e3efe
2012-01-13 18:04:15 +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
Tadashi G. Takaoka 5fdcd7d5cd Fix JNI as 64bit ready
Change-Id: I7a3ed2cee3b20744869aa5cf89ff9fd95f5ab8fe
2011-10-31 20:44:01 +09:00
Tadashi G. Takaoka 94810dec21 Remove NULL from native/jni
Change-Id: I7c4e32d0d69876c7ea85d6997c9a40fa362152eb
2011-10-28 17:06:58 +09:00
Tadashi G. Takaoka 5049f5bbb4 Fix trivial compile issue
Change-Id: I9dbc51496dbdb2195bbe589b0c3b2cd7e3d2f1fc
2011-10-28 16:24:31 +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
Ken Wakasa ce9e52a12a Clean up in LatinIME native code
Change-Id: I0062200a0181a491690115ac0fab8d11358e2f14
2011-06-18 23:52:09 +09:00
Jean Chalard e93b1f2209 Allow reading a binary dictionary even without proximity info.
This prepares the way for spell checking, which is to be done
without context so without proximity info.

Bug: 4176026
Change-Id: I1b4bfaefe2611e1b484acdf3c33598cb80f81ff4
2011-06-02 12:10:13 +09:00
Jean Chalard c2bbc6a449 Use translation of fallback umlauts digraphs for German.
For German : handle "ae", "oe" and "ue" to be alternate forms for
umlaut-bearing versions of "a", "o" and "u".

Issue: 3275926

Change-Id: I056c707cdacc464ceab63be56c016c7f8439196c
2011-03-03 11:52:23 +09:00
satok 8fbd552292 Add proximity info to native
Bug: 3311719

Change-Id: Ie596304070e321ad23fb67a13bf05e2b6af1b54b
2011-02-23 23:04:00 +09:00
Tadashi G. Takaoka 887f11ee43 Remove next letters frequency handling
Bug: 3428942
Change-Id: Id62f467ce4e50c60a56d59bf96770e799a4659e2
2011-02-17 13:59:41 +09:00
Ken Wakasa da50e1e98d Fixes in close() in BinaryDictionary.
Avoid using 'synchronized' in finalizer as well.

bug: 3340837
Change-Id: I9b28f54e4490ecb844ba33a379f71b625e4246a2
2011-01-17 15:58:07 +09:00
Ken Wakasa 90d96615bc Clean up: Update variable names to comply with spec of ApplicationInfo.
ApplicationInfo.sourceDir may or may not be apk file name.  It can be a directory as well.
The spec just says it's "Full path to the location of this package".

Also, added error handling in loadDictionary().

Change-Id: I5e64d0aba4b1ec7634f4b3ac5537e7a774433ece
2011-01-09 16:53:33 +09:00
Ken Wakasa e90b333017 Load main dic in native
Follow up to Id57dce51

bug: 3219819
Change-Id: I00e11ef21d0252ffa88c12dffb9c55b0f2e19a66
2011-01-07 19:51:45 +09:00
Ken Wakasa a46683a47b Just code cleanup.
Change-Id: I796b47aa168b3b2cc29de65fc7dc5dab5a7f4b17
2010-12-03 17:13:04 +09:00
satok 3008825948 Fix parameters of native functions and refactor Dictionary
- created bigram/unigram dictionary classes

Change-Id: I233a28ed8d611870db3f4cf8f25fc45b5d41529b
2010-12-02 01:16:44 +09:00
Jae Yong Sung 80aa14fd43 - separate dict (uses xml)
- retrieve bigrams that only starts with character typed and neighbor keys
- contacts bigram
- performance measure

bug: 2873133

Change-Id: If97c005b18c82f3fafef50009dd2dfd972b0ab8f
2010-07-28 11:08:08 -07:00
Jae Yong Sung 937d5ad013 added bigram prediction
- after first character, only suggests bigram data (but doesn't autocomplete)
  - after second character, words from dictionary gets rearranged by using bigram
  - compatible with old dictionary
  - added preference option to disable bigram

Change-Id: Ia8f4e8fa55e797e86d858fd499887cd396388411
2010-07-13 11:33:39 -07:00
Ken Wakasa 826269c8ae Get rid of dependency on native AssetManager API. Confirmed the native code builds with the NDK r3.
Change-Id: I0d2d3a0e262847d6948a0336a35440e21e312ad2
2010-04-27 22:23:03 +09:00
Amith Yamasani 07b1603a3f Don't let the native code target be included twice when unbundling.
Move java code to a different directory so that the unbundled
version doesn't try to compile the native code again.

Change-Id: I05cf9e643824ddc448821f69805ccb0240c5b986
2010-03-09 15:01:09 -08:00