Commit Graph

104 Commits (961703841e89a274122c87541d1151fd91672ddc)

Author SHA1 Message Date
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 aeeed75848 Support fixed order more keys
Change-Id: I979f54e8b54243da4d23cfbe08198d2aa495f870
2012-02-17 00:49:18 -08:00
Tadashi G. Takaoka fdb6999e55 Key should be distinguished also by moreKeys contents and etc.
Change-Id: Ib2caabee6af78153b5a7be0e4df522288f2a7d48
2012-02-10 03:17:39 +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
Tadashi G. Takaoka 2affaf91a0 Rename mini keyboard to more keys keyboard
Change-Id: Ie4c85e8ca5a1f41a420aae5c1cd9c1cb07e237e5
2012-02-08 16:12:31 +09: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 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 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 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 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 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 425e1996b8 Add inactivatedLabel and inactivatedUppercaseLetter flags for Key.keyLabelFlags
Change-Id: I6c7dc79cbad360602b278283f4c3a24c54040622
2012-01-27 18:11:43 +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 38d6a18821 Use String instaed of CharSequence in Key class
Change-Id: Ia76a41daede402ed2a509e110ae97d6bb660c760
2012-01-25 17:04:00 +09: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 bd7b160cfb Change more key specification type to String from CharSequence
Change-Id: I5e910f8225a248fc6403771836dec4c0b7294caa
2012-01-20 16:27:32 +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 42fcb2de64 Get rid of public reference to KeyboardIconsSet.ICON_* constants
As a consequence,
  * Add Key.iconDisabledKey has been introduced and Key.getIcon honors
    the enabled state of the key.
  * The attribute id of disabled icon for shortcut key,
    Keyboard_iconShortcutKeyDisabled, is renamed to
    Keyboard_iconDisbledShortcutKey
  * KeyboardIconsSet has getIconByIconId and getIconByAttrId methods
    instead of getIcon.

Bug: 5778201
Change-Id: Ica93b073b9a04acd18ead7a33b60e3c6d813e7a1
2011-12-19 01:11:09 +09:00
Tadashi G. Takaoka 4e1dab8cfa Move KeyboardBuilder and KeyboardParams classes into Keyboard class
This change also moves XmlParseUtils to com.android.inputmethod.latin package.

Bug: 5778201
Change-Id: I7d9faa344460753ce178ad4048e0fadb65c75614
2011-12-18 20:19:16 +09:00
Tadashi G. Takaoka 7bd714c086 Add extra key icons to KeyboardIconsSet
* Get rid of Key.keyIconShifted attribute.
    Add Keyboard.iconShiftKeyShifted to KeyboardIconsSet.
  * Get rid of LatinKeyboardView.disabledShortcutIcon attribute.
    Add Keyboard.iconShortcurKeyDisabled to KeyboardIconsSet.
  * Add Keyboard.iconSpaceKeyForNumber to KeyboardIconsSet.
  * Fix misplaced autoCorrectionSpacebarLedIcon resources.

Change-Id: I381bff3789254977ab3cb18f58f95b3c433b1e1a
2011-12-18 18:25:29 +09:00
Tadashi G. Takaoka 22b48de11c Get rid of Key.needsSpecialPopupHint and related
Change-Id: I28e87ea3af9581f12094770b42f113e9018886c4
2011-12-18 16:08:28 +09:00
Tadashi G. Takaoka 4a019a9c96 Use Set to group Keys in Keyboard instead of List
In deriving various shift stated alphabet keyboards from base/main
keyboard, almost all keys should be shared among variants.  Grouping
keys in Set instead of List is a essential refactor to have.

Bug: 5002108
Bug: 5679585
Change-Id: Idd5644d1c45a3276a24b61c984619c03d4e4c54c
2011-12-16 21:04:04 +09:00
Tadashi G. Takaoka 0b6237da94 Make Key.mPreviewIcon public final
Change-Id: I280b1fa6a018e095e9b36ea5475dde68e0965350
2011-12-16 12:47:34 +09:00
Tadashi G. Takaoka 4665463ccd Add XmlParseUtils class
Change-Id: Ie288272bc75832db7d743262c4c4fbe73b6dca04
2011-12-14 19:46:03 +09:00
Tadashi G. Takaoka de66f3af8a Assign Key.mCode from the label only when outputText is not specified
Bug: 5742827
Change-Id: I72b55ce246b14a2d8f4fd16211b71dc716db30b2
2011-12-12 16:15:18 +09:00
Tadashi G. Takaoka 2013bab89c Add Key.altCode attribute
* Registering alternate code and while key is typing.
  * Showing press/release graphics of the key that has the above altenate code.
  * Showing press/release graphics of all shift keys.
  * Renaming Key.ignoreWhileTyping to Key.altCodeWhileTyping.

Bug: 5639503
Change-Id: I67fb45bae76284a1f0deb6fd12ae5fb781d06cc3
2011-11-30 20:06:47 +09:00
Tadashi G. Takaoka e22baaadd3 Get rid of usage of key index
Change-Id: I7596ce3ae52fde436d06c2dd95ae873c7aa5ef7f
2011-11-29 19:07:54 +09:00
Tadashi G. Takaoka c1f7d39b4a Introduce ignoreWhileTyping flags to Key.keyActionFlags
Bug: 5639503
Change-Id: Ic2afad6766edb2538a58f722209e2daa40aa488d
2011-11-22 18:18:29 -08:00
Tadashi G. Takaoka 13d5f6605b Add Key.keyActionFlags and obsolete Key.isRepeatable
This change also renames Key.keyLabelOption to keyLabelFlags.

Change-Id: Iedd0bfaa420ad382c07ce084416355690e390919
2011-11-21 20:33:03 -08:00
Tadashi G. Takaoka 431ce93925 Introduce noKeyPreview Key attribute
This change also removes hacks in LatinKeyboardView by utilizing
noKeyPreview attribute.

Bug: 5638595
Change-Id: Icd8a3af3b7849b941f8f5532e2b432e126a909e6
2011-11-18 14:40:05 -08:00
Tadashi G. Takaoka 8fbf29e2d5 Make some private method static
Change-Id: Ia23765268be0ef89d7fe7c3f5372ed32d6615765
2011-10-28 13:31:31 +09:00
Tadashi G. Takaoka 406a54f41c Use XmlPullParser interface instead of XmlResourceParser
Change-Id: I00e8a82aaaf5fec1e27707bce0a82cbfd1bc9fae
2011-10-06 18:40:32 +09:00
Tadashi G. Takaoka 2fc4248700 Introduce hit box to Key and get rid of edge flags
Change-Id: I2b78d2ca756223b5497d01127c3a0190dcc81e57
2011-09-28 19:31:37 +09:00
Tadashi G. Takaoka 287f4f83e9 Add horizontal edges paddings to phone/number layout
Bug: 4948171
Change-Id: I8a06a25ffcbd141c9418e77e982233166a347914
2011-09-26 17:11:01 +09:00
Tadashi G. Takaoka 8fbfac4ffb Fix keyboard row height calculation
The keyboard height will be distrubuted as:
  top_padding + (key_height + vertical_gap) * row_count - vertical_gap + bottom_padding

Change-Id: I841f356b9dbf8cfaf3756178bc9e4e6b2aa61364
2011-09-26 10:25:49 +09:00
Tadashi G. Takaoka 5b0c124ca8 Remove Key.isStick, use backgroundType="stick" instead
Change-Id: I50e88c0870a3fe360b81f19163ca2f64ec38d8e8
2011-09-15 18:33:01 +09:00
Tadashi G. Takaoka a6d3a4d61b Make action key background more visually prominent
Bug: 5232726
Change-Id: I76ff2fb431ca295693ceb231a0f13da44f9293e6
2011-09-15 17:40:44 +09:00
Tadashi G. Takaoka 7918ed0169 Refactor Key.isFunctional to more generic Key.keyType
Bug: 5232726
Change-Id: Idc861ca725f62eaf37795f57401573394a17d6d3
2011-09-15 14:38:45 +09:00
Tadashi G. Takaoka 4486d77270 Introduce autoXScale label option
Bug: 5267649
Change-Id: I7fdcb98c209b7ccf73075ef3a4e758782fe161e3
2011-09-12 17:32:28 +09:00
Tadashi G. Takaoka 30bd8cb2da Add visual dividers to more suggestions panel
Bug: 5275003
Change-Id: I9464db71388a40ea768984b4cf06c8da05bfa26c
2011-09-08 23:05:55 +09:00
Tadashi G. Takaoka 18453d69e0 Make Spacer as extended Key class
Bug: 5275003
Change-Id: I809a8ca363ba72b22ac5cfd926414990f7e8467c
2011-09-08 17:38:50 +09:00
Tadashi G. Takaoka d4d9b33c39 Move Row class into KeyboardBuilder
This is a followup of I5929e656.

Bug: 5245837
Change-Id: I06bc2774f77a2c5ddf0b6fe1b3ee70e9b3a7dd23
2011-09-02 17:51:27 +09:00
Tadashi G. Takaoka b58925ea0d Calculate x coordinate with floating point
This change also fixes some keyboard layouts a bit.

Bug: 5245837
Change-Id: I5929e656763b150e71afe89238386904da214e21
2011-09-02 17:05:24 +09:00
Tadashi G. Takaoka e84274ede1 Move current x coordinate value into Row class
This is a preparation to address the issue.

Bug: 5245837
Change-Id: If5d463304c1689a840c8b761fedb0a8e2193734b
2011-09-02 16:24:36 +09:00
Tadashi G. Takaoka 9d5601e901 Rename PopupCharactersParser to MoreKeySpecParser
Also renames PopupPanel to MoreKeysPanel

Change-Id: I37209a5a8fe7dbba1eef03e3be88ba5253653926
2011-08-31 18:34:35 +09:00