Commit Graph

2867 Commits (8dc3a544bd0b33f830f0798bb394394a9357e269)

Author SHA1 Message Date
Jean Chalard 644c8b7c96 Initialize input attributes in the InputAttribute class
Change-Id: I103d6851f54f47cbffdb567fb0f4c505c4697b05
2011-12-16 20:35:16 +09:00
Jean Chalard 3b7aceca60 Merge "Make applicationSpecifiedCompletionOn final." 2011-12-16 03:20:00 -08:00
Tadashi G. Takaoka bf7ed75e4f Merge "Move KeyboardSwitcher.getKeyboard to KeyboardSet" 2011-12-16 03:13:38 -08:00
Tadashi G. Takaoka 645128af71 Move KeyboardSwitcher.getKeyboard to KeyboardSet
This change also gets rid of XML id from KeyboardId.

Bug: 5002108
Bug: 5679585
Change-Id: I7086c7da3c01ba4ade7f77ee5cc731310da46404
2011-12-16 20:10:57 +09:00
Jean Chalard ccc35f7fa7 Make applicationSpecifiedCompletionOn final.
This is the last one (whew)
Also move a somewhat unrelated initialization out of the
input attribute initialization function.

Change-Id: Icc77b32fd16b112ab43786715061b1c9dca31c04
2011-12-16 19:09:01 +09:00
Jean Chalard 9cc1312eee Make inputTypeAutoCorrect final.
Change-Id: I550eba1fc3fa2843d007a8208d81fad208c1196b
2011-12-16 19:08:52 +09:00
Jean Chalard 13db05f930 Make isSettingsSuggestionStripOn final.
Change-Id: Iabb99a7f8f3f1777f9a87ae2bddff9795a50fa92
2011-12-16 19:08:13 +09:00
Jean Chalard 1ba17f97d5 Small refactoring
This helps to make following changes smaller

Change-Id: I95ba2901ac3bf1ed70a748c35a0babdd9af1df63
2011-12-16 18:21:26 +09:00
Jean Chalard 4fc0f6ab02 Merge "Make insertSpaceOnPickSuggestionManually final." 2011-12-16 01:15:35 -08:00
Jean Chalard 2ad14a2ea7 Merge "Use temporary variables for computing editor attributes" 2011-12-16 01:07:56 -08:00
Jean Chalard 520e69056e Merge "Create a class for input attributes." 2011-12-16 01:06:12 -08:00
Jean Chalard ae0c109d11 Make insertSpaceOnPickSuggestionManually final.
Change-Id: I32fce0ea8c5c58b6f920d0758c8bf57769f39a12
2011-12-16 18:04:39 +09:00
satok cadc0f7d79 Merge "Send touch event in usability study mode" 2011-12-16 01:04:26 -08:00
Jean Chalard 4e8922f1be Use temporary variables for computing editor attributes
The ultimate intent is to make these variables final,
which will allow to move the computing function to the
InputAttributes class.

Change-Id: Ifb1fc7321a19b10d60aa63fa0daaa2708deda2cf
2011-12-16 18:04:17 +09:00
Jean Chalard dc9d0fcc11 Create a class for input attributes.
Change-Id: I834390c83865aac59fb758d5c66cf9b74103abd8
2011-12-16 18:03:16 +09:00
satok 15d4793911 Send touch event in usability study mode
Change-Id: I0cdcd57bfd31c9b21cfb932d7ff91bd013cde6d7
2011-12-16 17:56:14 +09:00
Tadashi G. Takaoka 289544d6e4 Use Params instead of Builder as an argument of KeyboardSet constructor
Change-Id: I4c576a0b0b632cdf413f2ccd5c69dbd37747fbd3
2011-12-16 16:41:49 +09:00
Tadashi G. Takaoka 702f9fc194 Fix broken suggestions layout
This is follow up change of If4b82376

Change-Id: I9b0d86ba630011372f41f26efb56bb0a80e09505
2011-12-16 16:39:05 +09:00
Jean Chalard 196d82cdd7 Use the WordComposer to check if we are composing a word
...instead of the hard-to-understand mHasUncommittedTypedChars.
This is possible because now the word composer is actually aware
of commits.

Change-Id: I36b664ce8402a280f801e87b9ebe161f416b0853
2011-12-16 15:58:29 +09:00
Tadashi G. Takaoka 6ba5f0d341 Merge "Add error log to expensive ArraysCompatUtils.binarySearch" 2011-12-15 22:55:10 -08:00
Jean Chalard be2f81f055 Merge "Make the word composer aware of commits." 2011-12-15 22:54:23 -08:00
Jean Chalard c73c26790f Make the word composer aware of commits.
Change-Id: I04e691fbc9227d4df195429bca89edea93575347
2011-12-16 15:41:10 +09:00
Tadashi G. Takaoka f8481883cc Add error log to expensive ArraysCompatUtils.binarySearch
Change-Id: Id33998e2a99be9249de4011892555f10c5d0968d
2011-12-16 15:34:11 +09:00
Tadashi G. Takaoka cfd5b4811f Merge "Cleanup ProximityInfo.calulateSweetSpot" 2011-12-15 22:21:17 -08:00
Tadashi G. Takaoka f1e05e74e6 Merge "Add com.android.inputmethod.latin.suggestions package" 2011-12-15 22:00:05 -08:00
Tadashi G. Takaoka 6cb72b0f36 Cleanup ProximityInfo.calulateSweetSpot
Change-Id: I98238359dffd76a620d3b0e73b3b22dd82c56c93
2011-12-16 14:59:24 +09:00
Tadashi G. Takaoka 8c3d5b6961 Add com.android.inputmethod.latin.suggestions package
Change-Id: If4b823768ab9c073625da3034ecc8091be1df230
2011-12-16 14:21:44 +09:00
Tadashi G. Takaoka 8950f259b1 Merge "Make Key.mPreviewIcon public final" 2011-12-15 21:20:46 -08:00
Tadashi G. Takaoka 0b6237da94 Make Key.mPreviewIcon public final
Change-Id: I280b1fa6a018e095e9b36ea5475dde68e0965350
2011-12-16 12:47:34 +09:00
Tadashi G. Takaoka a44685ab32 Add colorValidTypedWord and alphaValidTypedWord
This change fixes Gingerbread theme.

Change-Id: I142437ac0173df48ab36390f47ed67c6cea24a65
2011-12-16 12:26:19 +09:00
Tadashi G. Takaoka e9a0efc242 Merge "Cleanup unused variables and parameters" 2011-12-15 18:02:38 -08:00
Tadashi G. Takaoka 2ac5988f84 Cleanup unused variables and parameters
Change-Id: Iad756a7a775c93f3344c6962e7b3456ef8339490
2011-12-15 20:26:12 +09:00
Jean Chalard 05f654d498 Merge "Group all input-related info into an inner class." 2011-12-15 03:21:47 -08:00
Tadashi G. Takaoka c3ef86d861 Merge "Fix auto correction spacebar LED" 2011-12-15 03:19:32 -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
Tadashi G. Takaoka 23d27fefcb Fix auto correction spacebar LED
Change-Id: I4894d188d5612380cc9f8eec7cb72544e37fb2b0
2011-12-15 17:34:14 +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
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
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 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
satok 3dcba4279a Merge "Extract the jni library name" 2011-12-13 00:46:16 -08:00
Jean Chalard 77d59b0691 Consolidate underlining code under one function.
Change-Id: I4393ff1ec28a6b3118d1344dd6d82d04899dea42
2011-12-13 17:42:27 +09:00
Jean Chalard 8ad4013406 Tighten conditions for space-related cancelling
Instead of ignoring silently a found bug, throw an exception.

Change-Id: I0aa96d0cab022b6a5e7cffe8a592dcc443c3c7a8
2011-12-13 17:40:06 +09:00
Tadashi G. Takaoka 77ecf52a08 Merge "Remove KeyboardSwitcher.updateShiftLockState method" 2011-12-13 00:27:01 -08:00
satok ba526e3157 Extract the jni library name
Change-Id: Icc58ccea1178d9f35f5be0dceebab67bbb965b7f
2011-12-13 17:25:43 +09:00
Tadashi G. Takaoka 34f1820396 Remove KeyboardSwitcher.updateShiftLockState method
Change-Id: I032fc50a62a573ba4258530e695c8c88467783c6
2011-12-13 16:57:23 +09:00
Jean Chalard 14cb8448df Remove a useless return
Change-Id: Iefe10e94e2d88171387351a5b6cab52e281d0f76
2011-12-13 16:48:28 +09:00
Jean Chalard 8e404536cd Merge "Simplification" 2011-12-12 23:39:12 -08:00
Jean Chalard cf5cecccfe Merge "Refactoring" 2011-12-12 23:39:00 -08:00
Jean Chalard 024ee9ff02 Merge changes I7888797c,I57b2232f
* changes:
  Refactor + small bugfix
  Refactoring
2011-12-12 23:38:17 -08:00
Jean Chalard 2939063947 Simplification
Both tests have the same meaning. They should be merged.
Also, if "deleteLast()" deletes more than one char (which
never happens in the current implementation, but it's not
guaranteed), the new code is more correct.

Change-Id: I216df7cd45f4a7d76d1d5d6aa7f8d7f9a6e35ea3
2011-12-13 16:06:00 +09:00
Jean Chalard d2c69c7d12 Refactoring
If mHasUncommittedTypedChars is true, then
mWordSavedForAutoCorrectCancellation must always be null, and
spaceState must always be SPACE_STATE_NONE.
Hence, this change is supposed to be very no-op.

Change-Id: I2716f7372d996cc4dec40a4b7ac1ee7f5f4afe91
2011-12-13 16:04:11 +09:00
Jean Chalard 2245c3b5b3 Refactor + small bugfix
postUpdateShiftKeyState used to be called also when
mEnteredText is not null => this is a bugfix.
The rest does not change the logic, as posting a message can
be done anywhere within the function with no impact.

Change-Id: I7888797c0778702d64f96701e35b611a55a6a259
2011-12-13 15:59:36 +09:00
Jean Chalard a2a85d45e0 Refactoring
Change-Id: I57b2232f7fde32df5f6e1925aad1df988def34f9
2011-12-13 15:38:49 +09:00
Tadashi G. Takaoka dc52e7c646 Remove current keyboard id variable
Change-Id: Iec19af98209e1ea8ecd176d3be04d628d4b38950
2011-12-13 12:49:40 +09:00
Jean Chalard 34081186f9 Merge "Fix a bug where revert auto-correct would revert too much" 2011-12-12 04:46:27 -08:00
Jean Chalard 5c3ff4c9c8 Fix a bug where revert auto-correct would revert too much
If there are no uncommitted chars, we shouldn't enter any of
the tests that follow. We didn't use to, but a change today
made it possible - it should not happen.
There is no point in doing the rest of the tests, they are
sure to fail.

Change-Id: I580dd104aff3585de72a93b38989bfd9713f615b
2011-12-12 21:27:16 +09:00
Jean Chalard 4f41cbc588 Remove a useless function call
Change-Id: I1a775cbf90dca301e1e6b596ddac64fdbc023199
2011-12-12 20:51:43 +09:00
Jean Chalard dcf8a6b2c6 Merge "Move a settings var to the settings class" 2011-12-12 03:31:42 -08:00
Jean Chalard 2a659b8aa6 Remove a useless variable
This can be just read when it's needed.

Change-Id: I00753fe55645c244db5d4a96e7fdb8f5325475d9
2011-12-12 20:22:39 +09:00
Jean Chalard d567b230b0 Move a settings var to the settings class
Change-Id: I1331ad6dec3a9d64a77e314f8a1f4c29282df31b
2011-12-12 19:52:17 +09:00
Jean Chalard 7208af0ecd Remove a messy and unused class.
Today is a happy day

Change-Id: I3ef484bd258d5a59815bfcb0bd35ea3606b32430
2011-12-12 19:31:29 +09:00
Jean Chalard f162ed7ec8 Merge "Remove side-effects from TextEntryState" 2011-12-12 02:20:49 -08:00