Commit Graph

117 Commits (f91739b41e3a9dc85a185b88670b7ee9204a712f)

Author SHA1 Message Date
Tadashi G. Takaoka 2f83e9e532 Can override key-style
Bug: 6412932
Change-Id: I9576ae5b42bcc54cfd8ede0bae5148f3b04c1978
2012-05-01 16:56:53 +09:00
Tadashi G. Takaoka cf41aff251 Use string attribute for icon name
Change-Id: I336acf33c7e6bc993b9da9b17ec689975fa8127d
2012-04-20 15:31:42 +09:00
Tadashi G. Takaoka a58ebc73ae Fix typo of some methods' name
Also changes some methods' argument type from Locale to String.

Change-Id: Ib68b528a450dc68a01546483403230f76500bee4
2012-04-18 16:40:50 +09:00
Tadashi G. Takaoka ab0d0d8a02 Add followKeyLabelRatio flag for keyLabelFlags of Key attribute
This change renames largeLetter flag to followKeyLargeLetterRatio as
well.

Change-Id: Ida777aac57e4d885fa051654fe863f493f8e946a
2012-04-11 15:53:38 +09:00
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 ed3bac91f2 Introduce KeyboardCodesSet.java and remove keycodes.xml
Change-Id: Icfd6d06f47425aa037682d22c895548ba6f047d8
2012-04-10 11:53:58 +09:00
Ken Wakasa 9f0ea52a5d Add missing Word.hashCode()
Some cleanups too.

bug: 6209651
Change-Id: I94e2e29c92e90e554e4952d277d590e093766c4f
2012-03-23 13:11:39 +09:00
Tadashi G. Takaoka b03529aa01 Support disableAdditionalMoreKeys and disableKeyLabelHint
Change-Id: Idfa586417acd4a223380d52f044e3a86eb780b21
2012-03-12 17:45:57 +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 8e14e78377 Fix duplicate flag value in Key
Change-Id: I98e77e5432a228e4455998bf09a2cc671b113c4e
2012-03-07 18:41:38 +09:00
Tadashi G. Takaoka 8c80fb9bcb Fix Key to use a disabled icon when the key is disabled
Bug: 6114350
Change-Id: I419bc1736c27046dfea254ac510f5da478b6412c
2012-03-05 18:01:33 +09:00
Tadashi G. Takaoka e491be6e86 Support embedded more key
This is a followup change to Ie10b3e0b.

Change-Id: I1f91d96e32357b83bd0546537d561d638b6ff0c6
2012-03-05 14:22:52 +09:00
Tadashi G. Takaoka 5ef4fccbb9 Support dividers in MoreKeysKeyboard
Bug: 6080806
Change-Id: Iacd78c6aab6abf948717d34da7489a79c41316d2
2012-03-02 20:52:25 +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 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