Commit graph

4206 commits

Author SHA1 Message Date
Tadashi G. Takaoka
eee2a066d8 Merge "Change visibility to avoid synthetic accessor method" 2011-12-15 03:12:53 -08:00
Jean Chalard
27dff63833 Group all input-related info into an inner class.
Currently, these variables hold the info about the composing
word, or maybe some outdated info, and it's not very clear
which it is. LatinIME is maintaining the freshness info in
a separate boolean, and uses it throughout the code for many,
many things, leading to much confusion.
The idea in grouping this info is, it can be saved in another
instance and restored later. It can be tested against to know
whether there is actually outdated but kept info or not, and
it should allow to straighten out what is actually currently
being typed. Ultimately, it will eliminate the need for
LatinIME to keep track of the status of the info in the
word composer.

Change-Id: I00e2c690f303f8320c9be35590a6df4583e9e456
2011-12-15 19:58:04 +09:00
Tadashi G. Takaoka
2d74806262 Change visibility to avoid synthetic accessor method
Change-Id: Ie93c7437fb9a3fe63adaa48c2d4a723f96c0a0e1
2011-12-15 19:50:53 +09:00
satok
a7e5a5a6b9 Add words priority queue pool
Change-Id: I152df7b876a1756b69ded2ca4fb3ee26b38c971f
2011-12-15 19:20:28 +09:00
Tadashi G. Takaoka
23d27fefcb Fix auto correction spacebar LED
Change-Id: I4894d188d5612380cc9f8eec7cb72544e37fb2b0
2011-12-15 17:34:14 +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
Tadashi G. Takaoka
5a39e527dd Ignore settings key if it isn't adjecent to the space key on phone
Bug: 5759096
Change-Id: I1e1250d917e726e1931de3247ddc782b005ab5c1
2011-12-14 20:17:36 +09:00
Tadashi G. Takaoka
b8c2c6e2ec Merge "Add XmlParseUtils class" 2011-12-14 03:02:17 -08:00
Tadashi G. Takaoka
d549d4334f Merge "Remove long press settings key function" 2011-12-14 03:02:09 -08:00
satok
c115aed98f Merge "Unbundle members in unigram_dictionary" 2011-12-14 02:54:41 -08:00
Tadashi G. Takaoka
17dc10724b Remove long press settings key function
Bug: 5759092
Change-Id: I328e2043075ce5d0d0285febc4a9b7356702c250
2011-12-14 19:47:17 +09:00
Tadashi G. Takaoka
4665463ccd Add XmlParseUtils class
Change-Id: Ie288272bc75832db7d743262c4c4fbe73b6dca04
2011-12-14 19:46:03 +09:00
satok
1147c7bac9 Unbundle members in unigram_dictionary
Change-Id: Id737d943d20e3de3db568162caf40d3e956c7fae
2011-12-14 19:45:51 +09:00
Tadashi G. Takaoka
6652e45899 Merge "Move Keyboard.themeName to KeyboardSwitcher and make it private" 2011-12-14 02:43:06 -08:00
Tadashi G. Takaoka
90c12077b2 Merge "Remove EditorInfo from KeyboardId" 2011-12-14 02:42:58 -08:00
Tadashi G. Takaoka
7a91deb685 Move Keyboard.themeName to KeyboardSwitcher and make it private
Change-Id: I101b6927d43e86b3c636c1a527e181df8af9c73e
2011-12-14 19:01:20 +09:00
Tadashi G. Takaoka
a042150a69 Merge "Just ignore settings/shortcut key while typing on tablet" 2011-12-14 01:59:46 -08:00
Tadashi G. Takaoka
2d603fff64 Remove EditorInfo from KeyboardId
Change-Id: I70919ff30622afa1d8c29ca45589fa617f2c1f0e
2011-12-14 18:58:55 +09:00
Jean Chalard
9750165c9a Merge "Cleanup" 2011-12-14 01:50:25 -08:00
Tadashi G. Takaoka
014b755f8a Merge "Cleanup KeyboardId's hasCode method" 2011-12-14 01:48:46 -08:00
Jean Chalard
f3ca6a59a7 Cleanup
Change-Id: I724df0be7ac07ffb9f1f4974175aed5a2606221b
2011-12-14 18:42:47 +09:00
Tadashi G. Takaoka
601e411c13 Cleanup KeyboardId's hasCode method
Change-Id: I5fd8f6ac0f42152fb0e2aaaedc6092f6d82fe677
2011-12-14 18:42:20 +09:00
Jean Chalard
64361bd66d Merge "Move some code inside a function to simplify flow" 2011-12-14 01:42:17 -08:00
Jean Chalard
676917dea2 Merge "Fail faster in case of a bug" 2011-12-14 01:42:05 -08:00
Tadashi G. Takaoka
2c4b21d7ca Merge "Cleanup settings key related stuff" 2011-12-14 01:36:34 -08:00
Jean Chalard
1c6cf26c37 Move some code inside a function to simplify flow
Also rename the function to reflect better the behavior.
An upcoming change will clean up the remnants

Change-Id: I19bdf0d9e95f62ee749e1f64fe17132c4a5ef0bc
2011-12-14 17:56:57 +09:00
Jean Chalard
46798d8f1f Fail faster in case of a bug
Change-Id: Ibea64133f200dce80034c641d4798b62843a2512
2011-12-14 17:54:18 +09:00
Tadashi G. Takaoka
623d0155b6 Just ignore settings/shortcut key while typing on tablet
Bug: 5759096
Change-Id: Ie1f1800d0f32ac0938715c79974e0f382c9c3d27
2011-12-14 17:14:44 +09:00
Jean Chalard
b588003426 Refactoring.
Small simplification of the code.

Change-Id: I1f67ae529bbb2c9316bf5e083d367c57040ea22c
2011-12-14 16:59:25 +09:00
Tadashi G. Takaoka
8b1b8aae9c Cleanup settings key related stuff
Change-Id: Ie0d1204e94fcdf9d578974256bf2ae3e87797f13
2011-12-14 16:34:35 +09:00
Tadashi G. Takaoka
e35e13fc7d Merge "Record onStartInputView" 2011-12-13 23:31:43 -08:00
Tadashi G. Takaoka
689b901156 Merge "Utilize KeyboardSet XML definitions" 2011-12-13 23:31:00 -08:00
Jean Chalard
dbdb385bb0 Merge "Fix a long-standing race condition." 2011-12-13 23:29:47 -08:00
Tadashi G. Takaoka
f86109ca56 Utilize KeyboardSet XML definitions
This change introduces KeyboardSet and SubKeyboard XML definitions to
represent a set of keyboard layouts.

Bug: 5002108
Bug: 5679585
Change-Id: Ib6c8d5936187381bb6725c9fe574e93871c01a86
2011-12-14 16:28:31 +09:00
Jean Chalard
514beb0992 Fix a long-standing race condition.
Upon autocorrection, there is visual feedback in the text
view that quickly flashes the background of the text that
just changed. This fixes a race condition that happens
upon autocorrection when typing fast, and that results in
flashing one character too far left (typically, the flashing
area includes the whitespace before the corrected word and
not the last character of the corrected word).
This happens because the call to commitCorrection may
happen before or after the IPC sent by sendKeyChar, but the
arguments are fit only for the case where it arrives first.

Change-Id: I9b5442a665aad5a9bc66cd49228075b9056b37fa
2011-12-14 16:24:18 +09:00
Tadashi G. Takaoka
7ef235f53f Record onStartInputView
Bug: 5722703
Change-Id: I56bcf6ccde82b4176093de4f197a8736b0cc8c10
2011-12-14 16:22:30 +09:00
Jean Chalard
4fc97c2c01 Add a note of documentation to the sample word list
Change-Id: I95f09da03457933a14b549e04575d566de97dd49
2011-12-14 15:25:31 +09:00
Jean Chalard
8e3faff244 Merge "Decouple member logic from control flow" 2011-12-13 06:28:48 -08:00
Jean Chalard
7b5bc1ff4d Decouple member logic from control flow
This place is very confusing because a member variable with
a consistent meaning is hijacked for the duration of a function
to mean something else. This is in the way of easy-to-understand
refactoring.

Change-Id: If79bc771950d6bfc0ad5f0e9c51c7ef1dbb45b66
2011-12-13 23:15:12 +09:00
Jean Chalard
f7d6517d6b Various mini-cleanups
- Stop the word composer from escaping - take a page from the law
  of Demeter and only report what is actually needed.
- Fix typos in comments.
- Add a comment for a fishy processing.
- Remove a useless local variable.

Change-Id: I5fa78901cbb5483fc9683bfb7094f47244b85df6
2011-12-13 23:09:22 +09:00
Jean Chalard
edf4995a3b Merge "Remove the input connection sidework from handleCharacter" 2011-12-13 04:28:30 -08:00
Ken Wakasa
5a603f3fa2 Merge "Reorganize LatinIME native build directory structure. Now it got NDK friendly." 2011-12-13 04:24:20 -08: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
Jean Chalard
dafa7a8e15 Remove the input connection sidework from handleCharacter
Change-Id: I3d376dfda3acd8864274390de3ff5752b18456e0
2011-12-13 21:12:07 +09:00
Jean Chalard
117fc93f37 Move mBestWord to the word composer.
mBestWord has a confusing name - it's actually an auto-correction.
It's cleaner if it lives in the word composer because an
auto-correction should be tied to a specific user input, and
should be reset each time the user input changes to avoid
race conditions.

Change-Id: I718d29395bc747372067e6440e090c6a181994ae
2011-12-13 21:06:51 +09:00
Jean Chalard
7e6f4daa19 Merge "Tighten conditions for space-related cancelling" 2011-12-13 01:23:15 -08:00
Jean Chalard
c525750835 Merge "Consolidate underlining code under one function." 2011-12-13 01:22:08 -08:00
Tadashi G. Takaoka
cfe264bfee Merge "Introduce KeyboardSet to hold related KeyboardIds" 2011-12-13 01:12:10 -08:00
Tadashi G. Takaoka
c42f285b35 Introduce KeyboardSet to hold related KeyboardIds
This change moves
  * KeyboardSwitcher.getKeyboardId to KeyboardSet.<init> and
    KeyboardSet.getKeyboardId.
  * KeyboardSwitcher.getF2KeyMode to KeyboardSet.
This is the first step to get rid of shift state from Keyboard.

Bug: 5002108
Bug: 5679585
Change-Id: I2a5a97e5e89277bc606916d45c1afbc8d105d773
2011-12-13 18:10:50 +09:00