Commit Graph

740 Commits (bd78d40b6fc92fb6bcb21455830dd5c3f580e388)

Author SHA1 Message Date
Jean Chalard 2aa16dd81f Merge "Activate the code to cancel a manual pick (A5)" 2012-02-22 00:50:13 -08:00
Jean Chalard 80c25df49d Merge "Implement cancelling a manual pick (A4)" 2012-02-22 00:29:23 -08:00
Jean Chalard 8db74d0fae Merge "Use the stored separator instead of reading it back (A3)" 2012-02-22 00:24:19 -08:00
Jean Chalard 9271b770e8 Activate the code to cancel a manual pick (A5)
This finally makes active the behavior described in
Bug: 5968922

Change-Id: I363ed23270c3dea75411ea806011225097b5d07c
2012-02-22 00:05:19 -08:00
Jean Chalard 32f0af1fc4 Implement cancelling a manual pick (A4)
This is new code, but simple code. The new code path is never
used for now, but it will be in an upcoming change. This serves
to implement feature request #5968922

Change-Id: I3e67731ec6e9fc0b86c5cbd972e9c081781c11a9
2012-02-22 00:00:51 -08:00
Jean Chalard 193d23f40e Use the stored separator instead of reading it back (A3)
Now that we have stored our committing separator, we can use
it directly instead of reading it back from the text view
paying the IPC cost. This prepares for feature request #5968922.

Change-Id: Ifeaa2d659cf12b91c89d28e6ff7d07a669258184
2012-02-21 23:56:36 -08:00
Jean Chalard e043bf02f2 Merge "Give LastComposedWord knowledge of the separator (A2)" 2012-02-21 23:42:21 -08:00
Jean Chalard 1dfdc8056c Merge "Give LastComposedWord knowledge of the committed word (A1)" 2012-02-21 23:41:42 -08:00
Jean Chalard 66bb563535 Give LastComposedWord knowledge of the separator (A2)
This stores the separator that was used to commit the word in
the LastComposedWord. It may be NOT_A_SEPARATOR if there was
no separator (for example, the cursor moved causing a commit,
or there was a manual pick). This is necessary to implement
feature request #5968922.

Change-Id: I5fcf19a78ec66d68d4df89418eaef13952588207
2012-02-21 23:33:58 -08:00
Jean Chalard cf9d92629c Give LastComposedWord knowledge of the committed word (A1)
There is no point storing the prospective autocorrect - we are
recomputing it anyway. The committed word however will be necessary
to implement feature request #5968922.

Change-Id: I588c18e1a5a1050a791d601de465f421ccbe36cd
2012-02-21 23:12:21 -08:00
Tadashi G. Takaoka 1b3c16c183 Merge "Add next/prev navigate action more keys and remove tab key" 2012-02-21 23:09:58 -08:00
Tadashi G. Takaoka 05bfd189a8 Add next/prev navigate action more keys and remove tab key
Bug: 6037537
Bug: 5961814
Change-Id: I9c6dedf953452a180fcd5bce7bfadfd3c821f224
2012-02-21 22:50:50 -08:00
Jean Chalard 5262fe8832 Dismiss the hint on a non-word-starting non-separator
This would happen when a character is not a separator but is not
a word starter. Such characters include single quote and
dollar, and others non-letter, non-separator chars.
We set the bigram predictions if any - if not so configured, this
will fallback on setting back punctuations into the strip.

Bug: 6010408
Change-Id: Id203bbe87f8c13de0d5027b555c9067c7ec98f92
2012-02-21 21:16:18 -08:00
Jean Chalard b141c9cd3f Rename resources to reflect current usage
Bug: 6010403
Change-Id: Ia02ff31007296fdf6901504f238dfd9e4621f658
2012-02-21 18:54:44 -08:00
Jean Chalard 8a3d369840 Remove a useles parens
...I could swear I had compiled :/

Change-Id: I4e1fb2b1dda0a4ceffe2082935395d05297c63ec
2012-02-21 16:53:05 -08:00
Jean Chalard 9a2a11e65b Rewrite a condition
Change-Id: I805c9579788d99b015feb2075ad4771756c7adc5
2012-02-21 15:46:53 -08:00
Jean Chalard 2649e42d75 Extract a method to reset the ime state
Change-Id: I921184b85b94418cf360508ee3f67e85b10b3d72
2012-02-21 15:12:01 -08:00
Jean Chalard 5eeff7cf54 Converge paths of an if() branch
This is to help with further refactoring.

Change-Id: Ib2459903862570cf7022fd90f2d5c524a6bbbe19
2012-02-19 18:02:40 -08:00
Jean Chalard 1044539080 Rename variables and add comments
Change-Id: I746f2364d9f02f22aa6ab57d7060013ee114f4e3
2012-02-19 17:26:41 -08:00
Jean Chalard 1fead1d5f1 Read the initial selection value.
It turns out this was available in an unexpected place.
Fixes both the following bugs
Bug: 5948469
Bug: 6023118

Change-Id: Ie1a91b8268540ea0f0df02bee94c3bbdeb0fa4c5
2012-02-17 20:54:48 -08:00
Tadashi G. Takaoka beb08b398f Remove unnecessary and harmful KeyboardState.onUpdateShiftState call
This change also cancels double tap and long press timers if other
letter key is pressed after shift key.

Bug: 5693999
Bug: 6017610
Change-Id: I3b5f3debfb8915fa73a93b409a38afadf24132e9
2012-02-16 18:02:17 -08:00
Charles Chen 4baf767fac Merge "Improved shift key and symbol/alpha switch key accessibility feedback." 2012-02-09 15:33:40 -08:00
Jean Chalard accd2a9f61 Merge "Add finals" 2012-02-08 19:08:09 -08:00
Jean Chalard a828f613a8 Merge "Some more simplification" 2012-02-08 19:05:46 -08:00
Jean Chalard 8ff0564f6a Add finals
Change-Id: Ib81be9a0df34c5e9fc49d2b5d9bf02297ea2b499
2012-02-09 11:40:54 +09:00
Jean Chalard 6a800b253f Some more simplification
Remove useless method calls, and ultimately remove useless
method.

Change-Id: I3f353b1b37460d5e9ceae5cb5dde3fff0da81c21
2012-02-09 11:38:03 +09:00
Jean Chalard 4721427c7d Allow revert swap punctuation again
This may not be the best behavior, but it's the same as ICS.
Bug: 5981844

Change-Id: Ibb7798e2a315312310ed3be4e731d0fe1ac04456
2012-02-09 11:34:00 +09:00
Tadashi G. Takaoka 7a39bd4454 Shift+Smiley key will register newline character of textMultiLine
This change also
 * Honors the custom action label in EditorInfo.actionLabel.
 * Invokes InputConnection.performeEditorAction if action is specifed
   at EditorInfo.imeOptions or actionLabel/actionId.
 * Stops using InputMethodService.sendKeyChar. Implements
   sendKeyCodePoint instead.

Bug: 2498607
Bug: 5961809
Bug: 5368408
Change-Id: If4cd5eb3dacfc6b6a7ea434b0617c2438e06e42d
2012-02-08 19:31:35 +09:00
Jean Chalard e771fc2f1a More simplification
A suggested punctuation is sure to be 1 character and a word separator,
so the isSuggestedPunctuation() test is redundant.

Change-Id: I3d31f0825f069f64d514682e46be62afdae25291
2012-02-08 18:17:51 +09:00
Jean Chalard 8174373a0e Merge "Remove a nested edition occurence" 2012-02-07 19:42:35 -08:00
Jean Chalard 5a6daf46cf Merge "Cleanup" 2012-02-07 19:42:26 -08:00
Jean Chalard 862f950da3 Cleanup
Remove a useless test (we can only come here if the code
is not a separator, as we are only called from onCodeInput
inside an explicit test).

Change-Id: Icd996a5a1c18a550117a144a1d35f167b96211f7
2012-02-08 12:06:18 +09:00
Jean Chalard 2124bc5bf5 Remove a nested edition occurence
This was harmless but confusing

Change-Id: Ic271f80d3dadf01b29e3875c6a8ad51b99a936f9
2012-02-08 12:03:55 +09:00
Jean Chalard 2e2d6b4d40 Small simplification
Change-Id: I55f81f3ab427fd5b28bb1f31960077cd1897cbd0
2012-02-08 11:41:15 +09:00
Jean Chalard 1b986cc488 Merge "Fix a bug with manual pick then dotcom key" 2012-02-07 16:59:47 -08:00
alanv 8d4f0d5d1d Improved shift key and symbol/alpha switch key accessibility feedback.
Bug: 5933165
Change-Id: Id71f38874640785b7ad43b7a70e27f40c13be748
2012-02-07 13:14:18 -08:00
Tadashi G. Takaoka 69f672a4b3 Merge "Remove unused InputConnection argument" 2012-02-07 04:15:07 -08:00
Jean Chalard 12d67e6d5d Fix a bug with manual pick then dotcom key
Inhibit adding phantom space for tld keys even if the last
character inserted in the textview is not a dot

Change-Id: Ie92554ead7a18c932480905c5738aff7c0159a32
2012-02-07 20:36:48 +09:00
Tadashi G. Takaoka 64eaa67eb5 Remove unused InputConnection argument
Change-Id: Ic45c8c6e7730775654317fb6e2d1cb64f9031f46
2012-02-07 19:38:06 +09:00
Jean Chalard cfec7e72fd Merge "Fix a race condition that makes tests unstable" 2012-02-07 02:28:12 -08:00
Jean Chalard 816a8a0fd8 Fix a race condition that makes tests unstable
Change-Id: Ic19d380eb64855884bc6ded8547c200dd772ffe9
2012-02-07 19:22:37 +09:00
Jean Chalard 172a013ab5 Fix a bug with the auto-correct indicator
Bug: 5969106
Change-Id: I02d4b9184bb2c3fc0d08ffd5db77a9f9d816631f
2012-02-07 17:20:23 +09:00
Jean Chalard a7f2500001 Fix a bug with common objects.
Bug: 5961179
Change-Id: I452efc552c6ab390931f25557d7aee5a64bf054e
2012-02-06 18:41:00 +09:00
Jean Chalard fb684cebe8 Stop inserting a space after a manually picked word.
Bug: 4994861
Change-Id: I6ae256a94dbaddea4304304779d17025620c5025
2012-02-03 18:45:44 +09:00
Jean Chalard 51fd1632f5 Stop throwing an exception in some corner cases.
When the application is modifying the text under our feet,
we may come through this code path. We should log the error
rather than crash.

Bug: 5869235
Change-Id: Ic0fd24c3bc805d44c5db0ad781ddebeca0450614
2012-02-02 15:15:55 +09:00
Tadashi G. Takaoka ff858c7ff5 Use MoreKeySpecParser to parse puctuations strip resources
This change also
  * Doesn't use Key.getRtlParenthesisCode to get correct parentheses
    code in RTL context. Intead uses the outputText feature of
    moreKeys specification.
  * Move CVS string parser from KeyStyles to Utils.

Bug: 5948247
Change-Id: I45752c7d01b4f7d3f3da900b110a2185b336a1f0
2012-02-01 19:33:26 +09:00
Tadashi G. Takaoka a5c96f376a Move long press shift handling from PointerTracker to KeyboardState
This change also
  * Rename phone shift keyboard to phone symbols keyboard.
    Use CODE_SWITCH_ALPHA_SYMBOL code to switch between phone and phone symbols keyboard.
  * Remove phone symbols keyboard from tablet.
  * Introduces enableLongPress flag of Key.keyActionFlags attribute.
  * Remove clumsy long press code from PointerTracker.
  * Remove CODE_CAPSLOCK handling from LatinIME.
  * Make KeyboardSwitcher to invoke haptic and audio feedback.

Change-Id: I00e1f697a10ab5112aec75e36853b96246ff5054
2012-02-01 19:04:21 +09:00
Tadashi G. Takaoka 433ca6a46d Cleanup redundant methods of KeyboardSwitcher
Change-Id: I2ebeb8852177f6c6e30578d0bb3f372f488dc6c1
2012-01-31 17:18:14 +09:00
Tadashi G. Takaoka ca2f051cc1 Auto generate various shift states alphabet keyboard automatically
If any shift state variants of alphabet keyboard layout is not
specified in KeyboardSet.Element, it will be automatically generated
from base alphabet keyboard definition.

This change also
  * Eliminates KeyboardShiftState object from Keyboard.
  * Removes various set shift state methods from Keyboard.
  * Removes KeyboardSet.Element.elementAutoGenerate attribute.
  * Separates "sticky" Key.backgroundType to "stickyOff" and "stickyOn"
  * Add preserveCase flag to smiley, .com, and labeled special keys.
  * Rename KeyboardShiftState class to AlphabetShiftState.
  * Rename some attributes from *UppercaseLetter* to *ShiftedLetterHint*.
  * Introduce shiftedLetterActivated to Key.keyLabelFlags

Change-Id: I01a0a8efeeaa76820ae728a5bdfa8d02b6ce74b7
2012-01-31 12:55:45 +09:00
Jean Chalard c7c152de4b Guard against wrong auto-correction cancellation (A6)
This deactivates the cancellation at each separator pressed while
not composing a word. The net effect is to fix
Bug: 5875776

Change-Id: I67aa3f842ddff250828c60596ad5a7e466c1ddaa
2012-01-26 19:57:37 +09:00
Jean Chalard b6b8729374 Straighten out resuming suggestion on kept word (A5)
This is cleanup.
This also introduces a "deactivated" state to the last committed
word, that can be used for
Bug: 5875776

Change-Id: I1855adb8ac8123f6d2c5365b0ae899145e5c3ba1
2012-01-26 19:24:36 +09:00
Jean Chalard 2712f23acb Remove mCommittedWordSavedForSuggestionResuming (A4)
Change-Id: Ia62ef33b5c777a258b02280bda1b8368780a7eef
2012-01-26 18:36:28 +09:00
Jean Chalard 2692a87007 Move some functionality into LastComposedWord (A3)
Change-Id: Ie0ea02a061dd0cb84db5f33113ff433584636bc7
2012-01-26 18:25:08 +09:00
Jean Chalard 267563d1bb Add a class for previously composed data (A1)
Change-Id: I87498799e6a48b8fa65924a098bb0ceb7626dce1
2012-01-26 17:22:52 +09:00
Tadashi G. Takaoka bd51aaf98f Merge "Warn deprecated privateImeOptions, "nm" and "forceAscii"" 2012-01-25 22:20:35 -08:00
Jean Chalard 051ac1ef14 Merge "Add a guard against OOB." 2012-01-25 21:22:18 -08:00
Jean Chalard 8be16f78b1 Add a guard against OOB.
...and avoid crashing in one case where the application may
change the text while we are typing.

Bug: 5685922
Change-Id: I4a22c63168986f43ac84f512aaa4267023d536e3
2012-01-26 14:17:48 +09:00
Tadashi G. Takaoka 4f5c3a2898 Warn deprecated privateImeOptions, "nm" and "forceAscii"
Public API EditorInfo.IME_FLAG_FORCE_ASCII has been supported by
I6665b483.

Change-Id: I0ffdee15d8177d126cd8fe86a6bc4ab21be58c36
2012-01-26 13:37:35 +09:00
Jean Chalard fda847a870 Small cleanup
All calls to this method are done with the same parameter,
and it's really hard to understand if we call upon this
member inside.

Change-Id: I787664bb59053ab0fe666ed812fb12b2b9090918
2012-01-26 11:40:16 +09:00
Jean Chalard 0bfe359ee4 Add a test for auto-correction.
Fix two related subtle bugs:
- Stop singling out fat-finger-only corrections for rejection
  when touch coordinates are not available.
- Remove a racy check that would happen only in debug mode

Change-Id: Ic904f9b27c091ca6b369052c4e65a630bff81257
2012-01-25 19:29:40 +09:00
Jean Chalard 77da3d5a3b Fix a bug where backspace would not delete the selection
Bug: 5699301
Change-Id: I6c5a8470464d045349ac38e191c859b5c34cbeee
2012-01-24 18:07:23 +09:00
Jean Chalard 5fd11a7f33 Fix a typo
Change-Id: I358350c959d5610214a752b14d7744fe83eb3821
2012-01-24 11:58:07 +09:00
Jean Chalard 7c177e82af Merge "Fix a bug where a check would fail" 2012-01-20 01:16:44 -08:00
Jean Chalard 7546ff6e34 Fix a bug where a check would fail
Bug: 5894393
Change-Id: I810de58730f2cabcaf7b8dc1d85b3725f959094b
2012-01-20 18:09:59 +09:00
Jean Chalard af9fe5c5fc Fix a bug where the user typed word would not be passed.
Bug: 5894271
Change-Id: I4f02ff322697159e08f5e898608c0aff11dacb2f
2012-01-20 15:39:06 +09:00
Jean Chalard 250cf0a781 Merge "Fix a bug with backspace happening after a manual pick." 2012-01-19 01:55:30 -08:00
Jean Chalard 3b2112e70a Fix a bug with backspace happening after a manual pick.
Bug: 5884397
Change-Id: I01f462075bcbf7da38e9af2084ecd37143923e8b
2012-01-19 18:41:02 +09:00
Jean Chalard 95a6e58ebc Small code simplification.
I'm pretty sure the test here was useless.

Change-Id: Iaece641fbd5455406533b19555f2b639759a525f
2012-01-19 18:03:45 +09:00
Tadashi G. Takaoka 5731b939c7 Remove KeyboardSwicther.toggleCapslock
Change-Id: Id613c06e2df770659095d78d42637aed063d0c70
2012-01-17 19:26:24 +09:00
Tadashi G. Takaoka 2a88440419 Rename KeyboardActionListener methods
* Rename KeyboardActionListener.onPress to onPressKey
* Rename KeyboardActionListener.onRelease to onReleaseKey
* Merge KeyboardSwicther.onPressShift, onPressSymbol, and onPressOtherKey to onPressKey.
* Merge KeyboardSwitcher.onReleaseShift and onReleaseSymbol to onReleaseKey.
* Merge KeyboardState.onPressShift, onPressSymbol, and onPressOtherKey to onPressKey.
* Merge KeyboardState.onReleaseShift and onReleaseSymbol to onReleaseKey.

Change-Id: Icf28fd18e238c5e534c292893e4ab5b6b98e72f8
2012-01-17 19:07:20 +09:00
Tadashi G. Takaoka c9fade6b87 Merge "Remove toggleShift and toggleAlphabetAndSymbols from KeyboardSwitcher" 2012-01-17 00:07:38 -08:00
Tadashi G. Takaoka 87e025da11 Remove toggleShift and toggleAlphabetAndSymbols from KeyboardSwitcher
Change-Id: I9bb8f78b0a766cd7937d5cbe1c1e5e35898b2997
2012-01-17 16:49:33 +09:00
Jean Chalard d104a7aac8 Merge "Fix a bug where words disappear on inserting separators" 2012-01-16 23:22:03 -08:00
Jean Chalard edc6395d9b Fix a bug where words disappear on inserting separators
The basic idea is that in some situations, we would restart
suggestions, but before evaluating them we would bail out
because suggestions were not requested. This would lead to
the "correction" set to null, so we would commit a null word.

This fix does two things:
- Do not restart suggestions when not requested.
- If we still end up with a composing word when suggestions
  are not requested, we select the typed word as the
  correct version.

Bug: 5846646
Change-Id: Ic35351841d0cb20afa99092ef681ecb7bd68bec6
2012-01-17 16:16:52 +09:00
Jean Chalard aed5819a84 Merge "Fix a bug where suggestion would restart at a bad time" 2012-01-16 22:51:23 -08:00
Jean Chalard fbd1ac8083 Fix a bug where suggestion would restart at a bad time
Bug: 5846646
Change-Id: I7c907d0a9478e0878b92ead94173caefc21b627b
2012-01-17 15:50:18 +09:00
Tadashi G. Takaoka 1ef6fc7e15 Support EditorInfo.IME_FLAG_FORCE_ASCII
Bug: 5850605
Change-Id: I6665b483f775094903f2e26f5584e4b141592ab5
2012-01-17 14:38:00 +09:00
Jean Chalard a8ba49c253 Small cleanup
The method deleteWordAtCursor would call finishComposingText,
which is a very unexpected state change and would probably cause
surprising bugs to any parent that would call it.
As it happens, it's not used anywhere any more so let's just
remove it.

Change-Id: Iaa9200866e40b4e914f76baa987279948300679c
2012-01-17 11:55:23 +09:00
Jean Chalard 72d285f4d7 Add some comments about resuming auto-suggestion
Bug: 5846646
Change-Id: Ib2c76ec173972eb7acadbfaae7e930849d546721
2012-01-17 10:29:11 +09:00
Tadashi G. Takaoka 9751a626ec Don't cache resource value that depends on orientation
Bug: 5794655
Change-Id: Ib324366c772e20bb54aba63c2f4540dc0f9de515
2012-01-16 12:26:34 +09:00
Jean Chalard ab34a4a7f5 Merge "Fix a bug where last candidate would not be reset" 2012-01-11 21:47:35 -08:00
Jean Chalard a8c8ab1cb4 Remove an excessive parens
Change-Id: If8aa4253ab0f664e628ed7f4d7a3adc02a898cc7
2012-01-12 14:07:56 +09:00
Jean Chalard 9de5cfc67a Fix a crash where revertSwap would be wrongly called
This would crash the program when inputting a punctuation
symbol that should not swap with a weak space through the
suggestion strip, then press backspace.
Those include all two-part punctuation symbols in French for
example, as well as magic space strippers like the dash in
English. For English all suggestion strips symbols happen to
be magic space swappers so this would not happen in English
by default.
Also fix a typo.

Change-Id: Ia40678c264e978509b5786290a75a3c57181648e
2012-01-12 11:55:40 +09:00
Jean Chalard cd2286fff1 Fix a bug where last candidate would not be reset
Bug: 5851148
Change-Id: Ic270318842d8e16bc62d78d5fe0d6be0ca1fb532
2012-01-12 11:16:51 +09:00
Tadashi G. Takaoka 8cab0b56eb Get rid of Keyboard.CODE_DUMMY
Change-Id: Id2320f4d9b5f22f0ac844ab20ce42b0c4e7c6880
2012-01-10 18:19:36 +09:00
Tadashi G. Takaoka ee4be6e3c6 Call KeyboardState.onUpdateShiftState from onCodeInput if code is a normal letter
This will be helpful to write unit test code.

Change-Id: Ib61cc46ac547084e0dc9ecd3a50814fecf08ace2
2012-01-10 15:13:05 +09:00
Jean Chalard 0fd625bcfd Fix a bug with wrong auto-correct cancellation
Auto-correct cancellation would sometimes kick in at
wrong times, causing crashes.

Bug: 5784542
Change-Id: I68dd6b8d9237ce9b66af2dc63e77ba6dd5fd69dd
2011-12-21 19:28:02 +09:00
Jean Chalard 9e8761c440 Reorganize the auto-correction memory
Change-Id: I31cce9db471dcd4a7b3477bcb037a8ff482b7696
2011-12-19 17:33:15 +09:00
Tadashi G. Takaoka 3708787fe9 Remove LatinKeyboard class
Change-Id: I68c667b00dadf2ed9f1c62fb7da37d2cf499cd81
2011-12-18 19:10:42 +09:00
Tadashi G. Takaoka 4112dc0500 Move spacebar drawing code from LatinKeyboard to LatinKeyboardView
Also this change moves LatinKeyboard attributes,
autoCorrectionSpacebarLedEnabled, autoCorrectionSpacebarLedIcon,
spacebarTextRatio, spacebarTextColor, and spacebarTextShadowColor to
LatinKeyboardView.

Change-Id: I7cc27ce1fc550e9f620a9ed0fbe4b8172902d5a1
2011-12-18 19:07:12 +09:00
Tadashi G. Takaoka 22b48de11c Get rid of Key.needsSpecialPopupHint and related
Change-Id: I28e87ea3af9581f12094770b42f113e9018886c4
2011-12-18 16:08:28 +09:00
Jean Chalard 43c0a034bd Merge "Pretty print for InputAttributes" 2011-12-16 04:01:49 -08:00
Jean Chalard 4d0f03bd66 Remove a write-only variable.
Change-Id: I825307a429f46b31ed9bd940b5a97d2713127dfe
2011-12-16 20:54:58 +09:00
Jean Chalard 6fa003ee23 Pretty print for InputAttributes
Change-Id: I5e4b2b6f3cd943c8f6187aaed21d67ec786bf5df
2011-12-16 20:53:44 +09:00
Jean Chalard 2b2c0b574c Merge "Use the WordComposer to check if we are composing a word" 2011-12-16 03:47:34 -08:00
Jean Chalard 80b66bb166 General cleanup.
Move variables around, inline useless functions, remove
useless local variables.

Change-Id: Icb89d8b211a2ad4bc3619137c2276a649c2a5e34
2011-12-16 20:36:32 +09:00
Jean Chalard 644c8b7c96 Initialize input attributes in the InputAttribute class
Change-Id: I103d6851f54f47cbffdb567fb0f4c505c4697b05
2011-12-16 20:35:16 +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 ae0c109d11 Make insertSpaceOnPickSuggestionManually final.
Change-Id: I32fce0ea8c5c58b6f920d0758c8bf57769f39a12
2011-12-16 18:04:39 +09: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
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
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 8c3d5b6961 Add com.android.inputmethod.latin.suggestions package
Change-Id: If4b823768ab9c073625da3034ecc8091be1df230
2011-12-16 14:21:44 +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
Tadashi G. Takaoka 23d27fefcb Fix auto correction spacebar LED
Change-Id: I4894d188d5612380cc9f8eec7cb72544e37fb2b0
2011-12-15 17:34:14 +09:00
Jean Chalard f3ca6a59a7 Cleanup
Change-Id: I724df0be7ac07ffb9f1f4974175aed5a2606221b
2011-12-14 18:42:47 +09: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
Jean Chalard b588003426 Refactoring.
Small simplification of the code.

Change-Id: I1f67ae529bbb2c9316bf5e083d367c57040ea22c
2011-12-14 16:59:25 +09:00
Tadashi G. Takaoka e35e13fc7d Merge "Record onStartInputView" 2011-12-13 23:31:43 -08:00
Jean Chalard dbdb385bb0 Merge "Fix a long-standing race condition." 2011-12-13 23:29:47 -08: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
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 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
Jean Chalard 14cb8448df Remove a useless return
Change-Id: Iefe10e94e2d88171387351a5b6cab52e281d0f76
2011-12-13 16:48:28 +09: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
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
Jean Chalard 406d192a9e Remove side-effects from TextEntryState
Change-Id: Ib98eea9e791e426435cfdfd0c9ab3ed9061664aa
2011-12-12 19:19:39 +09:00
Jean Chalard c2a76a1529 Remove a useless variable.
Change-Id: Iea5ce5cfc05bad8b1d9085438e90147bd54b7e9c
2011-12-12 16:49:32 +09:00
Jean Chalard 890d13189d Straighten out logic for revert word paths
This also includes a new memorized string with simpler
logic that will allow to remove other members

Change-Id: I0b97243084902e68fcb835b6163c86fef8190ebc
2011-12-12 16:41:49 +09:00
Jean Chalard 86344836ee Merge "Remove a duplicated variable." 2011-12-11 21:26:31 -08:00
Tadashi G. Takaoka 2ba1bcccdd Remove unused Keyboard.CODE_CANCEL
Change-Id: Ic2eab17e525901a1cf7096ebe7d24ae78624ed2e
2011-12-12 12:56:30 +09:00
Jean Chalard 3651220327 Remove a duplicated variable.
This is awesome cleanup.

Change-Id: I35ce8940a13f3084630dc26d6e7e397acfdaac36
2011-12-12 12:06:41 +09:00
Tadashi G. Takaoka 963abf4bcc Merge "Remove unused public methods from KeyboardState and KeyboardSwitcher" 2011-12-09 04:38:14 -08:00
Tadashi G. Takaoka df9deffba2 Remove unused public methods from KeyboardState and KeyboardSwitcher
Bug: 5708602
Change-Id: I3dbc3cd00aa9ddf611e2078ff2cfea8945fa09bf
2011-12-09 21:14:13 +09:00
Jean Chalard 0fe3611bee Resolve TODOs: add some members to store prefs
Change-Id: Idf09cb5d801e8008eb63cbb5138058faeb7db136
2011-12-09 20:16:57 +09:00