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
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
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
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
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
It turns out this was available in an unexpected place.
Fixes both the following bugs
Bug: 5948469
Bug: 6023118
Change-Id: Ie1a91b8268540ea0f0df02bee94c3bbdeb0fa4c5
This change also
* Fix comman/f1 key for Arabic keyboard.
* Removes "show settings key option" and related stuff.
* Renames and simplifies F2 key to shortcut key on 7 inch tablet.
Change-Id: Ib1cf99ad00d9780a2f0d170260e756771e161521
The user may now cancel or edit a word upon adding to the
user dictionary. We can no longer assume the word has been
added as is and for the current locale. We should just rely
on standard mechanisms that inform us of new insertions.
Bug: 6015347
Change-Id: I069b19c0c844ca29d6de4c4d162306f9413adea8
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
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
A suggested punctuation is sure to be 1 character and a word separator,
so the isSuggestedPunctuation() test is redundant.
Change-Id: I3d31f0825f069f64d514682e46be62afdae25291
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
This change also uses Key.code instead of Key.outputText for the
variety of parentheses keys taht introduced by I85998f17.
Bug: 5975484
Change-Id: I86879c9942d264edc71e5893325a2f582763d12f
Inhibit adding phantom space for tld keys even if the last
character inserted in the textview is not a dot
Change-Id: Ie92554ead7a18c932480905c5738aff7c0159a32
Seems I didn't get how to iterate on a String correctly >.>
Talk about a big bug. Anyway, I think it's working now.
Bug: 5955228
Change-Id: I988c900cf2a16c44b9505cfd4f77c7cda7e592f0
This change alters the CSV parser behavior. The parser only resolves
* String resource reference. ["@string/res" -> "<content_of_res>"]
* Other occurrence of escape sequence will be intact. ["\x" -> "\x"]
Before this change, escape sequence in moreKeys string is parsed three
times. At first in parsing string resource, next in CSV parser, and at
last in KeySpecParser. So that representing single escape character
itself is a bit annoying, "\\\\\\\\".
Now we can represent single escape character itself in string resource by "\\\\".
Change-Id: Ib978e17b779cc82585eed8241ac3857508b14bc7
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
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
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
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