Commit graph

2070 commits

Author SHA1 Message Date
Tadashi G. Takaoka
e7948a8692 Get rid of Key.setIcon(Drawable)
Change-Id: If6ebbdefcbfd0cc14c72858f9bb44861e8abe079
2012-02-03 14:38:17 +09:00
Jean Chalard
825e2bbd91 Fix a bug when deleting the last char
And unit test

Change-Id: Ic4fc3626f8b86e10156d770d41cd6deab5d31f39
2012-02-03 13:03:54 +09:00
Jean Chalard
71915a3722 Merge "Fix string iterations in a couple places." 2012-02-02 18:40:19 -08:00
Jean Chalard
9242a2bcf8 Fix string iterations in a couple places.
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
2012-02-03 11:15:46 +09:00
Tadashi G. Takaoka
32c54c4dbe Fix key repeat interval timeout
Bug: 5960472
Change-Id: I27d4b81d393f2ace946740a0b0801cea8c63b5b8
2012-02-03 10:02:22 +09:00
Tadashi G. Takaoka
44e0e4f99e Fix Key.equals(Key)
Bug: 5956068
Change-Id: I2901ae28bd9121ec4f4429a53b83aae128b75e0c
2012-02-02 21:33:50 +09:00
Tadashi G. Takaoka
5852a2594f Parse escaped sequence strictly in CSV parser
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
2012-02-02 20:19:26 +09:00
Tadashi G. Takaoka
8261a4cad7 Merge "Move CSV parser to KeySpecParser" 2012-02-01 23:25:17 -08:00
Tadashi G. Takaoka
0086861d5a Move CSV parser to KeySpecParser
Change-Id: I424fb47bc70e9b6aaa5a16ae9b2500d23da75c26
2012-02-02 16:10:14 +09:00
satok
e05b3f4b3a Support additional proximity characters
Change-Id: Ifbe0d7e4eafea1926bbce968eae4724dd5769689
2012-02-02 16:07:16 +09:00
Tadashi G. Takaoka
8ca325f437 Merge "Make KeySpecParser and CSV parser code point aware" 2012-02-01 22:56:54 -08:00
Tadashi G. Takaoka
e01d272603 Make KeySpecParser and CSV parser code point aware
This change also renames MoreKeySpecParser to KeySpecParser

Change-Id: I35733cdbb344f16b57ffa2cfe79055c089b4e409
2012-02-02 15:51:40 +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
alanv
c603409f28 Removed CODE_CAPSLOCK from keyboard accessibility (fixing build).
Change-Id: Ibc7ef979276f563444f3c24e69ac32de5d4eb6e8
2012-02-01 10:27:52 -08:00
Charles Chen
02dd837805 Merge "Removed spoken descriptions for characters supported by TTS or TalkBack." 2012-02-01 10:00:17 -08:00
Charles Chen
9737351775 Merge "Refactored shift key spoken description into separate method." 2012-02-01 09:59:59 -08:00
Tadashi G. Takaoka
71c695da22 Remove BIDI mirroring hack from Key
This change also removes isRtlKeyboard attribute from <Keyboard/>

Bug: 5948247
Change-Id: I85998f17ae146a4c8cd0f419ab820b746cb8974f
2012-02-01 22:58:16 +09:00
Tadashi G. Takaoka
40e9012276 Fix wrong long press timeout for shift key
Change-Id: Ifafbed1bcdaf662ee6a69050043739fa71986841
2012-02-01 21:15:34 +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
alanv
7ca1249797 Refactored shift key spoken description into separate method.
Change-Id: I183462a68fdfd339404740fa1564f737430d73d9
2012-01-31 13:03:39 -08:00
alanv
f3e951b259 Removed spoken descriptions for characters supported by TTS or TalkBack.
Change-Id: Iddef18559bc6af9487e536a33607b0a0b07df282
2012-01-31 13:02:33 -08:00
Tadashi G. Takaoka
3feb99fa6c Merge "Save/restore alphabet shift locked state while rotating even in symbols mode" 2012-01-31 02:26:41 -08:00
Tadashi G. Takaoka
49bd49c8fb Save/restore alphabet shift locked state while rotating even in symbols mode
Bug: 5730212
Change-Id: Id2342dacd149d6385d61001f880ebcd1883cf0b4
2012-01-31 19:11:39 +09:00
Tadashi G. Takaoka
aab33aac0a Merge "Cleanup redundant methods of KeyboardSwitcher" 2012-01-31 01:33:17 -08:00
Tadashi G. Takaoka
88e079ae6b Cleanup redundant methods of KeyboardSet
Change-Id: I69fa1b5661695d0323222c2969679f4792b6ef0d
2012-01-31 18:27:37 +09:00
Tadashi G. Takaoka
0ed2d3a449 Fix double tap shift key enable/disable shift locked mode
Bug: 5942452
Change-Id: I2c7b1605bceac2b2f929cd4d97c417ef15c6f754
2012-01-31 18:06:54 +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
30964843db Merge "Auto generate various shift states alphabet keyboard automatically" 2012-01-30 20:07:26 -08: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
alanv
16f7439682 Removed unused "no item selected" notification & supporting code from keyboard accessibility.
Change-Id: Ia6323ad0c1e2a0db5a2cf830e97765eddaa32cee
2012-01-30 13:45:59 -08:00
Tadashi G. Takaoka
3b0f2bf169 Merge "Support addtionalMoreKeys" 2012-01-30 00:11:29 -08:00
Tadashi G. Takaoka
15c99e9f1a Support addtionalMoreKeys
This change also removes
  * Unused more_keys_for_q, w, and p.

Change-Id: Idb99e5f6d8c2ad2d28437f42b35b21c282cd181f
2012-01-30 17:04:25 +09:00
Ken Wakasa
6029b43a3d Add "size" and "pressure" for MotionEvent logs
bug: 5722703
Change-Id: I8e08942324b666de96682ce63e70c8d324535782
2012-01-30 12:22:15 +09:00
Tadashi G. Takaoka
a1e370ee4f Support keyXPos/keyWidth override in <include>
Change-Id: I03576a6fb7916f2f66f2035a04872fe89b573cdc
2012-01-27 21:20:57 +09:00
Tadashi G. Takaoka
425e1996b8 Add inactivatedLabel and inactivatedUppercaseLetter flags for Key.keyLabelFlags
Change-Id: I6c7dc79cbad360602b278283f4c3a24c54040622
2012-01-27 18:11:43 +09:00
Tadashi G. Takaoka
c882d619bf Merge "Save and restore previous mode keyboard state at KeyboardState.toggleAlphabetAndSymbols" 2012-01-26 23:45:36 -08:00
Tadashi G. Takaoka
f057b25cdd Save and restore previous mode keyboard state at KeyboardState.toggleAlphabetAndSymbols
Bug: 5881820
Change-Id: I9b1718b16c60f27c05ba727724c0189aa5284334
2012-01-27 16:03:51 +09:00
Jean Chalard
449415c72f Cleanup (A9)
Deactivate the LastComposedWord when the commit was not the right
type, instead of fooling it by passing it a null auto-correction.

Change-Id: I032b477dc691bd151a644ca4b0c9f0a9b5512e45
2012-01-26 20:10:49 +09:00
Jean Chalard
5971a0a0bb Remove a useless member (A8)
It turns out this can be removed entirely.

Change-Id: I6f23703cef1666311989a825285317eef696487f
2012-01-26 20:10:49 +09:00
Jean Chalard
5ef094f816 Merge "Remove the CharacterStore class (A7)" 2012-01-26 03:09:31 -08:00
Tadashi G. Takaoka
1112a545cc Merge "Add KeyboardState.SwitchActions.setAlphabetShiftLockShifted" 2012-01-26 03:05:47 -08:00
Jean Chalard
be79227dc9 Remove the CharacterStore class (A7)
Remove the now useless WordComposer.CharacterStore class
and merge back its members inside WordComposer. This should
simplify the word composer a bit.

Change-Id: I5fe32418c62a583cd558dce98758a4701559bdf5
2012-01-26 20:03:44 +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
Tadashi G. Takaoka
757f8d96ee Add KeyboardState.SwitchActions.setAlphabetShiftLockShifted
Change-Id: I6c49d8eb0a8272840ff03e0940d88a31c3d20bd9
2012-01-26 18:25:48 +09:00
Jean Chalard
2692a87007 Move some functionality into LastComposedWord (A3)
Change-Id: Ie0ea02a061dd0cb84db5f33113ff433584636bc7
2012-01-26 18:25:08 +09:00
Jean Chalard
1f8fc62ccb Add useful information to LastComposedWord (A2)
Change-Id: Idf47f2e2bdd1d6394fc4b1ab7df28d64a808da1e
2012-01-26 17:49:55 +09:00
Jean Chalard
95eeb2df63 Merge "Add a class for previously composed data (A1)" 2012-01-26 00:43:57 -08: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
736d740aa5 Merge "Get rid of Resource reference from KeyboardView, LatinKeyboardView and PointerTracker" 2012-01-26 00:17:56 -08:00
Tadashi G. Takaoka
160f01211d Get rid of Resource reference from KeyboardView, LatinKeyboardView and PointerTracker
This change introduces the following attributes.
 * KeyboardView
   - keyPreviewLingerTimeout
 * LatinKeboardView
   - keyHysteresisDistance
   - touchNoiseThresholdTime
   - touchNoiseThresholdDistance
   - slidingKeyInputEnable
   - keyRepeatStartTimeout
   - keyRepeatInterval
   - longPressKeyTimeout
   - longPressShiftKeyTimeout
   - longPressSpaceKeyTimeout
   - ignoreSpecialKeyTimeout
   - showMiniKeyboardAtTouchedPoint

Change-Id: I25159a87289b12447e20031add173523070e9b03
2012-01-26 16:10:20 +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
Jean Chalard
5a38ff305f Merge "Convert an internal enum into an int of same underlying value." 2012-01-25 21:13:56 -08: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
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
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
Tadashi G. Takaoka
09f8b126e5 Add Key preserveCase enum to keyLabelOptions attribute
To support auto generate key depending keyboard element id, the
KeysCache class is introduced to hold whole keys and reuse.

Change-Id: Icb81b5f1c1b3aaa31968dcdb93aa0a856e737f78
2012-01-25 20:16:21 +09:00
Tadashi G. Takaoka
bcf2b79365 Prepare to get rid of Drawable reference from Key
Change-Id: If435f95b2863e0af8d8916c643e6b01feabd3ea5
2012-01-25 19:41:15 +09:00
Tadashi G. Takaoka
2419a31c98 Merge "Add element predicator to <switch><case> condition of Keyboard" 2012-01-25 02:37:27 -08:00
Tadashi G. Takaoka
9650e85662 Merge "Draw language name on spacebar on the fly" 2012-01-25 02:37:22 -08:00
Jean Chalard
d9702a375a Merge "Add a test for auto-correction." 2012-01-25 02:33:39 -08: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
Tadashi G. Takaoka
83306b914f Add element predicator to <switch><case> condition of Keyboard
Change-Id: I8f9eb8eb28707d23e421e88f979022d844a3b3ee
2012-01-25 19:09:18 +09:00
Tadashi G. Takaoka
bd93eddb52 Draw language name on spacebar on the fly
Change-Id: If54251acbd40d0dda37df1b368ed76dcdf3c8ac0
2012-01-25 19:05:58 +09:00
Tadashi G. Takaoka
f9521c6f37 Change scope of some methods in KeyboardView
Change-Id: I6569b413b20a2e683c6c636aafd755f51868dd28
2012-01-25 18:50:27 +09:00
Tadashi G. Takaoka
f9c6715b17 Merge "Use PointerTracker.getPointerTracker() class method" 2012-01-25 00:51:22 -08:00
Tadashi G. Takaoka
38d6a18821 Use String instaed of CharSequence in Key class
Change-Id: Ia76a41daede402ed2a509e110ae97d6bb660c760
2012-01-25 17:04:00 +09:00
Tadashi G. Takaoka
117c124c13 Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard
This is the first step to support separate Keyboard for elementName.
This change is the second attempt of Icef66564.

Change-Id: I78ea6cb9ea3d965ff89e0ff5d896a6b11ba5c670
2012-01-25 13:19:53 +09:00
Tadashi G. Takaoka
e88e1b22c8 Use PointerTracker.getPointerTracker() class method
Change-Id: Ieab5d43d2bfe9bdf2b499834dff267df84b8d76d
2012-01-25 11:08:30 +09:00
Tadashi Takaoka
af4efd5a3e Merge "Revert "Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard"" 2012-01-24 15:22:25 -08:00
Tadashi Takaoka
8bb20bc682 Revert "Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard"
This reverts commit b5b92f9b78

Bug: 5908440
2012-01-24 15:20:05 -08:00
Tadashi G. Takaoka
a34f66de2d Merge "Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard" 2012-01-24 01:34:31 -08:00
Tadashi G. Takaoka
b5b92f9b78 Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard
This is the first step to support separate Keyboard for elementName.

Change-Id: Icef66564b6938910fa06ecab664dce4be84c9505
2012-01-24 18:31:11 +09:00
Jean Chalard
20f437cc49 Merge "Test that delete actually removes any selected text." 2012-01-24 01:19:26 -08:00
Jean Chalard
1e4684ad24 Test that delete actually removes any selected text.
Bug: 5699301
Change-Id: I09a967eb03690251e8bd69503285c982d6958a7d
2012-01-24 18:17:09 +09:00
Jean Chalard
196da4a7be Merge "Fix a bug where backspace would not delete the selection" 2012-01-24 01:13:34 -08: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
Tadashi G. Takaoka
25971b5a14 Clean up symbol key chording state from KeyboardState
Change-Id: I575da2bf2941c8a2e7b1fe0a455cbcdebb201276
2012-01-24 17:59:35 +09:00
Tadashi G. Takaoka
83d81f2e34 Fix sliding shift input in caps lock mode
Bug: 5881820
Change-Id: I4cbe3eda83c09edc9da8efbdff7d3359c1e140d5
2012-01-24 17:58:23 +09:00
Tadashi G. Takaoka
747ed9e99a For get the symbols shifted state when switch back from alphabet layout
Bug: 5881820
Change-Id: Ic478264e1cd366affc34fbf4cd59f1b6e7efede7
2012-01-24 17:28:00 +09:00
Tadashi G. Takaoka
0f05076990 Get rid of setShifted/setShiftLocked from SwitchActions
Change-Id: Ib54b0575be190556690ef2dfb14077842745f038
2012-01-24 12:27:09 +09:00
Jean Chalard
5fd11a7f33 Fix a typo
Change-Id: I358350c959d5610214a752b14d7744fe83eb3821
2012-01-24 11:58:07 +09:00
Tadashi G. Takaoka
4eb240eb2c Force KeyboardShiftState reset by setShiftLocked(false)
Change-Id: Ib00d598e6e6a91e594ae01cfc51fb688601f6b8f
2012-01-23 13:18:06 +09:00
Tadashi G. Takaoka
69fa792184 Merge "Get rid of useless updateShiftState" 2012-01-22 20:16:46 -08:00
Tadashi G. Takaoka
b6357bddd5 Merge "Add more debug message to KeyboardState" 2012-01-22 20:15:38 -08:00
Tadashi G. Takaoka
457e506e1a Add more debug message to KeyboardState
Change-Id: Ie0bceb494b0521bf406418d5ecbc16752c818aba
2012-01-23 13:14:02 +09:00
Tadashi G. Takaoka
56518d424d Get rid of useless updateShiftState
Because KeyboardState.onLoadKeyboard will invoke
SwitcherActions.requestUpdateShiftState eventually, the calling
updateShiftState at the end of KeyboardSwitcher.onLoadKeyboard is
useless.

Change-Id: Ib6e746b1516ef1b4c981807a9b8785a046ba50e0
2012-01-23 12:47:03 +09:00
Jean Chalard
35e9a7ac55 Merge "Squash a ridiculously improbable NPE" 2012-01-22 18:37:29 -08:00
Tadashi G. Takaoka
b009a24b83 Support @icon/icon_name for more keys specification
Change-Id: I8842e5ce77f9d27a0969df947de292c1830e36b7
2012-01-20 20:09:02 +09:00
Tadashi G. Takaoka
54c2dd67b0 Merge "Support @string reference in moreKeys attribute" 2012-01-20 01:59:31 -08:00
Tadashi G. Takaoka
e54a4005d5 Support @string reference in moreKeys attribute
Change-Id: If0056d0601149d2ddd0e231a81e7b2409b37fc06
2012-01-20 18:46:33 +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
Tadashi G. Takaoka
3eede315dc Merge "Move MoreKeySpecParser.getResourceId to Utils" 2012-01-20 00:01:29 -08:00
Tadashi G. Takaoka
86641ef6e8 Merge "Change more key specification type to String from CharSequence" 2012-01-20 00:01:24 -08:00
Tadashi G. Takaoka
0718590486 Move MoreKeySpecParser.getResourceId to Utils
Change-Id: I0640dbe76a8ff2dc45b504eca631942811571736
2012-01-20 16:28:18 +09:00