184 Commits

Author SHA1 Message Date
Tadashi G. Takaoka
2be51f4fd0 Generate KeyboardLabelsSet from donottranslate-more-keys.xml
This change introduces makelabel tool that reads all languages'
donottranslate-more-keys and generate KeyboardLabelsSet.java source
file. The makelabel command must be invoked prior to compile LatinIME.

Change-Id: I7515c7919c535e30f9c80a37bdc831d0f682cd43
2012-04-11 11:23:47 +09:00
Tadashi G. Takaoka
8834e3dbce Fix KeyboardCodesSet code mapping
This is a follow up for Icfd6d06f.

Change-Id: I9a11c6f1c8d9654e3fb004940791055c2bcf9f17
2012-04-10 15:09:26 +09:00
Tadashi G. Takaoka
7f0c503afc Use !icon/<icon_name> notation for more keys spec
Change-Id: I616e6c1ac603d2eb7a5c99ec70d5411371d15f3e
2012-04-10 12:01:07 +09:00
Tadashi G. Takaoka
ed3bac91f2 Introduce KeyboardCodesSet.java and remove keycodes.xml
Change-Id: Icfd6d06f47425aa037682d22c895548ba6f047d8
2012-04-10 11:53:58 +09:00
Kurt Partridge
9bc29d78a6 add more data collection points to ResearchLogger (attempt #2)
the new points are all at Log.x() positions; only those appearing directly
related to user input were added.

multi-project change with I159f5de2

this CL is the same as I618bcd07, which was reverted because of
incompatibilities with vendor branches.

Bug: 6188932
Change-Id: I999249dceb0c04f5a4ffbfff25caed09d24a2c52
2012-04-09 09:38:07 -07:00
Kurt Partridge
d16bda4a4a Revert "add more data collection points to ResearchLogger"
This reverts commit ac9e87c03ebbcbd70dd051a30ebf98d6baebedfc
2012-04-06 18:26:34 -07:00
Kurt Partridge
ac9e87c03e add more data collection points to ResearchLogger
the new points are all at Log.x() positions; only those appearing directly
related to user input were added.

Bug: 6188932
Change-Id: I618bcd07b22c9efc794745678b073afe1e79a697
2012-04-06 09:35:13 -07:00
Tadashi G. Takaoka
11d9ee742f Use keyboardSet extra value of subtype to specify layout type
Change-Id: Ice1f345a08a8d760e3b847c885c4072e3e142c97
2012-04-05 17:25:15 +09:00
Tadashi G. Takaoka
39390d3f94 Add ZWNJ and ZWJ icons
Bug: 5456620
Change-Id: I7238f41c841803746ca2ab6cd332b2be8498a3ee
2012-03-26 13:05:29 +09:00
Tadashi G. Takaoka
b4fbbe57f5 Avoid using collection interface, using array instead
Change-Id: Ie0554362b73967bfcbbab6ad19c24683066a608e
2012-03-13 20:53:15 +09:00
Tadashi G. Takaoka
cc8c8b99bd Split Utils class to StringUtils, SubtypeUtils, and JniUtils
Change-Id: I09e91675fe7d573dad8c933ad513b21d7e409144
2012-03-08 20:30:38 +09:00
Tadashi G. Takaoka
81d4e3cd66 Add language switch key only to the phone layouts
Bug: 5759092
Change-Id: Ic7d7d4812976654c0e85fecabd1128eadfc52c5c
2012-03-07 10:03:21 +09:00
Tadashi G. Takaoka
e4c45c6ef9 Explicitly specify that labels might be in more keys
Bug: 6080806
Bug: 6081427
Change-Id: I455a0210e65ea2a7774e0e0071cea5f4a99577bd
2012-03-01 20:03:47 +09:00
Tadashi G. Takaoka
42fd1d2d72 Refactor more keys spec handling
Change-Id: Ibd95eff0725724ea35ad58e1d1ec7ec3d02a6e90
2012-03-01 16:07:02 +09:00
Tadashi G. Takaoka
d054aa17da Merge "Reset previous symbols shifted state when auto switch backed" 2012-02-29 08:05:58 -08:00
Tadashi G. Takaoka
4ba2216219 Reset previous symbols shifted state when auto switch backed
Bug: 6072517
Change-Id: I00337b3ed5c85df4627e8f5a02465d406c4d9178
2012-03-01 01:01:09 +09:00
Tadashi G. Takaoka
b19a6b9fc5 Fix spacebar icon position on phone/number keyboard
Change-Id: I4d6bb0f2f12e7b263ff951f3173cac8e41d0f23e
2012-03-01 00:37:51 +09: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
Tadashi G. Takaoka
fed72d6038 Merge "Support fixed order more keys" 2012-02-17 01:01:28 -08:00
Tadashi G. Takaoka
aeeed75848 Support fixed order more keys
Change-Id: I979f54e8b54243da4d23cfbe08198d2aa495f870
2012-02-17 00:49:18 -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
Tadashi G. Takaoka
c217dc9237 Convert one letter Key.outputText to Key.code
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
2012-02-07 22:34:20 +09:00
Tadashi G. Takaoka
17f53103ee Fix KeyStyles to be able to override the value in style
Change-Id: Ib7476cdc0f81dfeb6292ef663e9dbab6d2b949ba
2012-02-07 18:51:51 +09:00
Tadashi G. Takaoka
aca8870128 Recursively resolve @string/resource reference in key key spec parsing
Change-Id: I9d172605e90e828e00f7c4c8d49548498aa3b50d
2012-02-03 20:03:23 +09:00
Tadashi G. Takaoka
24cd2617f5 Filter out empty entry from more keys CSV
Change-Id: I9a26aaa58f0f502b3bfef9de422370d2b0add8d8
2012-02-03 18:48:01 +09:00
Tadashi G. Takaoka
e7948a8692 Get rid of Key.setIcon(Drawable)
Change-Id: If6ebbdefcbfd0cc14c72858f9bb44861e8abe079
2012-02-03 14:38:17 +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
0086861d5a Move CSV parser to KeySpecParser
Change-Id: I424fb47bc70e9b6aaa5a16ae9b2500d23da75c26
2012-02-02 16:10:14 +09: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
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
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
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
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
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
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
Tadashi G. Takaoka
757f8d96ee Add KeyboardState.SwitchActions.setAlphabetShiftLockShifted
Change-Id: I6c49d8eb0a8272840ff03e0940d88a31c3d20bd9
2012-01-26 18:25:48 +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
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 Takaoka
8bb20bc682 Revert "Add autoGenerateFromAlphabet enum to KeyboardSet.Element.elementKeyboard"
This reverts commit b5b92f9b78295366c12b25d1b464a371401c3677

Bug: 5908440
2012-01-24 15:20:05 -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
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
Tadashi G. Takaoka
4eb240eb2c Force KeyboardShiftState reset by setShiftLocked(false)
Change-Id: Ib00d598e6e6a91e594ae01cfc51fb688601f6b8f
2012-01-23 13:18:06 +09:00
Tadashi G. Takaoka
457e506e1a Add more debug message to KeyboardState
Change-Id: Ie0bceb494b0521bf406418d5ecbc16752c818aba
2012-01-23 13:14:02 +09:00