Commit graph

157 commits

Author SHA1 Message Date
Jean Chalard
d82898c5a9 Change the return type of getWords and getBigrams (A8)
This only returns stuff, but it doesn't change yet how the data
is really passed. It merely adds a way of getting the same data.
Later, the old way will be removed.

Change-Id: If3a064de362175fc5a6781b7a97b65d8730aaf3c
2012-06-26 16:44:26 +09:00
Jean Chalard
bda7eaa63a Remove dependency on WordCallback from BinaryDictionary (A7)
Bug: 6252660
Bug: 6166228
Bug: 2704000
Bug: 6225530
Change-Id: I8245698fbd170e0f5cbad3c0109774bcaddc0614
2012-06-26 16:42:48 +09:00
Satoshi Kataoka
7368009799 Change JNI for Gesture
Change-Id: I774a0052038d16677f60f7efa11fd266cb5f3088
2012-06-25 18:54:37 +09:00
Satoshi Kataoka
c88f61215c Set level 1 as the initial value of the valid words
Bug: 4192129
Change-Id: I867e78ce79c78977d08e8b66881a25b6fe5bf41f
2012-05-29 20:39:39 +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
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
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
Jean Chalard
ac27e4544b Pass the previous word to getSuggestions
This is a preparative change to bug#6313806

Change-Id: I1be9ec49b21005c1f45ce459fa93712bc74ef3f0
2012-04-17 12:43:53 +09:00
Tadashi G. Takaoka
78ab80844b Add language suffix to main dictionary
Bug: 6319377
Change-Id: Ie6a887fefa12e33c17bfeb5d22984e7c1a7bdb46
2012-04-11 16:11:34 +09:00
Jean Chalard
b5e1f48987 Remove the now useless Flag class.
Change-Id: Ibe45189b73e2606cf77e30da166dd0d45ae47c5c
2012-04-06 19:47:16 +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
24aee9100e Change the flags to a boolean in constructors.
Change-Id: I9939204f3b16346aaebd4d726315ba9c4faf910a
2012-04-06 19:33:01 +09:00
satok
43ebd8a035 Fix the locale of flags in BinaryDictionary
Bug: 6129372
Change-Id: I4958c2aabf651d7e26648a29b75fcc6c77813451
2012-04-04 21:50:42 +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
01ab7c8b59 ongoing cleanup 2
Change-Id: I66b61cbe491cf8375144e834390beae3209a777d
2012-03-27 16:28:48 +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
cc78d03a62 Add processing for French ligatures.
Bug: 5140033
Change-Id: I1c2751fc617e662aad9f67506e28a622f81d0bc9
2012-03-23 16:50:59 +09:00
Jean Chalard
6ca3ac08ed Strengthen java code against bad returns from native
This doesn't really fix the following bug but it may alleviate
the symptoms

Bug: 6191885
Change-Id: I0de3f550cc7c6cdf79b291399785ad31b205d2ac
2012-03-21 16:40:26 +09:00
Tadashi G. Takaoka
cc8c8b99bd Split Utils class to StringUtils, SubtypeUtils, and JniUtils
Change-Id: I09e91675fe7d573dad8c933ad513b21d7e409144
2012-03-08 20:30:38 +09:00
Jean Chalard
ad290d6505 Activate bigram predictions from the binary dictionary
Change-Id: If1cc50539d7677b854b1cd3bea3423c8c0865de5
2012-02-15 19:51:24 -08:00
Jean Chalard
6e082cb30d Convert an internal enum into an int of same underlying value.
Goes together with Id4f4e066

Bug: 5922118
Change-Id: I1e39dd01c67e9284d9d7fe008d868847e69986d7
2012-01-26 13:07:51 +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
ab72a97d7c Cleanup unused import
This change also gets rid of several compiler warnings.

Change-Id: I23962edaadad18a6e0395d528af17b909dcf5dad
2011-10-04 12:46:20 +09:00
Jean Chalard
673cebf9e9 Make use of the FULL_EDIT_DISTANCE flag.
In effect, this stops the spell checker from suggesting overly
long words.
More precisely, it takes advantage of the new facility that
takes into account the whole length of the dictionary word when
computing scores, so words much longer than the input word will
see their score demoted accordingly.

Bug: 5384578
Change-Id: I326cd7c87c3080e7fa8729f78517f8ba13672a9b
2011-09-30 16:00:07 +09:00
satok
40a5f6fa4d Add a flag to demote completed suggestions
Bug: 5390063
Change-Id: I0ef4fbcc705539624269fd2f8c4e782679fc44b3
2011-09-29 19:48:18 +09:00
Jean Chalard
043f784198 Create a way to pass the proximity info to the dictionary
This is a preparative change for inserting the spell checker.

Change-Id: Ie441879cac4f67078ec27a95f1fcbbf3ef373df7
2011-08-04 19:46:21 +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
4250eb27f5 Create a dictionary collection and a dictionary factory.
The dictionary collection is a class complying to the Dictionary
interface that acts as a front end to a collection of arbitrarily many
dictionaries of any type.
The dictionary factory is a helper class for creating various
dictionaries and get some meta information about them.

At the same time, this change makes the BinaryDictionary class
not a singleton any more.

This also needs I9afe61a9 to not break the build.

Change-Id: I61fdcc4867fcda18342807bf1865e6e46979e5d5
2011-04-27 17:06:20 +09:00
Jean Chalard
0c8d5ca023 Fix Eclipse warnings.
This change is only there to fix warning issued by Eclipse.
It should have absolutely no impact on the program logic.

Change-Id: Ie0e242ac6c167297d33de19902340b0f6ecae9e1
2011-04-26 16:39:45 +09:00
Jean Chalard
89bd776cf6 Use user-history bigrams when no input if available.
This also fixes a small inconsistency upon clicking on whitespace
twice in a row.
Also add some unit tests for an introduced and an existing method.

Change-Id: I1be2fb53c9624f4d0f5299009632cb4384fdfc15
2011-04-22 15:46:23 +09:00
Jean Chalard
c899038eee Move language-specific keyboard setting to resources.
Some flag settings used to be stored in a keyboard layout extravalue setting. This
change:
- Introduces the capability of setting such specific flags in values/config.xml
- Retains the ability to use extravalues (for layout-specific settings), though
  there is no more any such setting at the moment.
- Fixes a bug where loading a dictionary from outside does not initialize the flags.
- Moves Flag to another class.

Note: this needs I705ec68c to avoid breaking the build

Change-Id: Ia7703aae3215b06c0b3cb792821649806e8998c1
2011-04-20 17:31:59 +09:00
Jean Chalard
cba93f50c3 Add different ways of reading the dictionary file.
This change adds basic support for an external dictionary provider.
It adds methods for reading the dictionary itself from an asset in
the dictionary provider package directly, obtaining the file name
through the ContentProvider interface; it also adds a way of getting
the data through an InputStream and copying the file locally.

Incidentally this change also adds the code needed to listen for
updating the dictionary provider package and reloading it in time.

This change also goes hand-in-hand with Iab31db6e, which implements
the small closed part of this.

Issue: 3414944

Change-Id: I5e4fff99a59bb99dbdb002102db6c90e6cb41c8a
2011-03-18 12:16:50 -07:00
Tadashi G. Takaoka
071f47140c Refactor BinaryDictionary a bit
This changes:
* Flag initialization code in BinaryDictionary to be more unit test friendly.
* Removing unnecessary class hierarchy of LatinIME inner class WordAlternatives.
* Formatting normalized score neatly.

Change-Id: I9f10c093d4f36258fe883cf3fb10cbbda2770497
2011-03-16 19:46:19 -07:00
Tadashi G. Takaoka
e7a2512aa3 Add Utils.equalsIgnoreCase methods
This change also corrects usage of "frequency", "priority" and "score"
* Frequency is the relative probability in dictionary.
* Score is the relative probability in suggestions.
* Priority is kind a sorted score.

Change-Id: Iafb135a4ecdb401cc505014a07c74dfcac44d699
2011-03-16 16:03:05 -07: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
Tadashi G. Takaoka
2e04770adf Add output variables to BinaryDictionary's test entry
Bug: 3414081
Change-Id: I1d11710476ffadcef67b0dbfbde309e7f8344d8a
2011-02-28 17:25:38 -08:00
Tadashi G. Takaoka
6f4eba814a Add test entry for BinaryDictionary class
Bug: 3414081
Change-Id: I1a3d60698795bf28c477086838e726d498fb6de0
2011-02-28 15:08:04 -08:00
Ken Wakasa
eaef1c5007 Change how to load native lib to be on the safe side
Change-Id: If170d4821b8dbc187f29137ea99d10e30c20955f
2011-02-25 18:21:02 +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
Tadashi G. Takaoka
33e0b1e79e Add unit test helper method to BinaryDictionary and Suggest
Bug: 3414081
Change-Id: Idee64010f2f423d3c7c548d0279c7bf287088762
2011-02-08 17:56:55 +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
458249e703 Consolidate main dictionary files.
This change is a preparation for upcoming optimizations on dictionary file loading.
* We can consolidate dictionary files because we are no longer relying on Asset Manager.
* Stopping compressing dictionary files as planning to use mmap() on the region in the apk file.
* Probably we won't rely on Asset Manager.  Instead we'll probably use offset and size obtained from AssetFileDescriptor.

Change-Id: Id57dce512fd3d2397a58628f8264bd824194da76
2011-01-05 11:31:58 +09:00
satok
f5cded1c6c Fix a crash when MAX_WORD_LENGTH is too short.
Change-Id: Idcb5aa2685321b8d0ac7d846caecbd1c79e4dd77
2010-12-06 22:58:56 +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
satok
d4952c8fe9 Move a logic for finding words with a missing character to the native code.
Change-Id: I58338643830ff4f9708f78a9c26f75c8bf2ebf45
2010-12-01 19:26:36 +09:00
Tadashi G. Takaoka
fa086c9076 Cleanup unused Java import
This change also fixes wrong file mode.

Change-Id: Ifcf4c9444ddcdc62d2e4b394891d6eee135c1e8f
2010-11-29 17:57:48 +09:00
satok
525141a402 Clean up LatinIME java
- remove unused code
- add @Override
- change the inappropriate cast

Change-Id: Ib25b4939e5b4273794ab0f6349776b5b62d89894
2010-08-24 12:40:00 +09:00
satok
979f869096 DO NOT MERGE. Backport LatinIME from master to Gingerbread
TODO: Cleanup will follow.

Change-Id: I4a68ba9f2f55760aa24187f1f13fdfa8a0b70963
2010-08-20 14:37:03 +09:00
Jean-Baptiste Queru
443c360d0a Clarify licensing
-use AOSP copyright instead of Google
-add NOTICE and tag file

Bug: 2548782
Change-Id: If50b2e9e9cc4b4876b0d047fc9f34e2d537a6da4
2010-04-05 09:47:36 -07: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
Renamed from src/com/android/inputmethod/latin/BinaryDictionary.java (Browse further)