I left TODOs in Suggest.java because we must pay attention to locale
when changing character's case. Filed another Bug: 4769095 to track
that.
Bug: 4768050
Change-Id: I1ae2c4ffd2208403a8c2a25dd3a56b71dcefc826
Basically Croatian keyboard is QWERTZ layout with extra letters such
as č, ć, đ, ž and š. This change just introduces Croatian keyboard
subtype and QWERTZ layout which has the extra letters as popup mini
keyboard of base letter.
It might be great if we could have dedidated table layout.
Bug: 4309160
Change-Id: I0fc227295defa56029ca06e406f73833b992be0e
There are already both languages keyboard layout. Finnish is based on
Scandinavian layout and Hungarian is based on QWERTZ.
Change-Id: I6c804495bf1ae56661bc5c714e0c500132cd55a8
Previously tab key is shown only when the input type variant says that
it is web input. In addition to that, this change also shows tab key
when the IME option includes editor action (next and/or previous)
flag.
Bug: 3094312
Change-Id: I3f8841fdbcee918a0f93f3259090f24e70d96471
This change also removes manualTemporaryUpperCaseCode and
manualTemporaryUpperCaseHintIcon. Instead of these keyLabelOption now
has hasUppercaseLetter flag value.
Bug: 4436327
Change-Id: I88fdac1e888a7123735296f5ef45f5fdd565cd2e
This change is needed to introduce new theme easily. As a starter this
change introduces Keyboard.popupHintIcon attribute and
Key.keyLabelOption.popupHint flag to show popup hint icon that is
previously specified by Key.keyHintIcon attribute.
Bug: 4436327
Change-Id: I6b1c5c1b88eece541141b2d2cedd164ee02e5c2a
This change introduces the following features to Keyboard XML format.
* "keyXPos" can specify the key X coordinate directly.
* "keyXPos" can be negative. The X coordinate will be calcluated from
the right edge of the keyboard toward left.
* "keyWidth" can be zero to be filled up to the right side.
* "keyWidth can be negative. The key will be filled up to both sides.
* Spacer's horizontalGap is renamed as keyWidth, and can be inherited
from key-style.
* Spacer can have keyXPos attribute.
Using these syntax, all keyboard layouts have been re-written.
Cherry-Pick: I314b2e8ca2aa145ff9506cbf927140a15685af42
Bug: 4442045
Change-Id: I048fe5eaef020d8472ab577e9d326042bae2f3fa
This change reduces the number of layout files and make these
theme-generic. This might be very helpful to re-design suggestion
strip.
Bug: 4175031
Change-Id: Idca10a4aa0bf7ac496eedd1879311e59780a423b
Also add an option for popup dismissal delay so as to inaugurate the
new screen. Besides, remove a path for options to escape from
LatinIME and replace with a direct read from the settings.
Change-Id: I7ec6e724262871fa6523506ecc39f65c5fbe34da
Split symbols into:
- Symbols that should swap themselves with a magic space.
- Symbols that should remove the magic space.
- Symbols that should transform the magic space into a real space.
Also, have symbols inserted from the suggestion strip always consider
the space before them to be magic.
Also, do minor refactoring to remove useless variables or make clearer
how to carry some symbol-related information.
Bug: 4391347
Change-Id: Ie2308a62c8fef55e3610897c0f58943acb7aa8c9
Picking a suggestion inserts a space after the word. This change makes
this space a magic space.
Incidentally, do some minor cleanup: add CODE_DASH, CODE_SINGLE_QUOTE
and CODE_DOUBLE_QUOTE to Keyboard and use them throughout the code,
and remove a useless import directive in some unrelated file.
Bug: 4319740
Change-Id: I245f396c34dd0af820bca91edc4ec363238a4ae4
This change adds the option for bigram prediction under the option
for bigram suggestion. The "prediction" option depends on the
"suggestion" option.
This change also reorders a tad bit the settings screen. Namely, it
sticks both bigram options under a "bigram" category, and groups the
options that did not have a group under a "other options", or misc,
category.
Finally this change also renames the internal name of the "text
corrections" option category to "correction_category" instead of
"prediction_category" which was misleading.
Change-Id: I2d8787c8a391fd8202ed3a686c613494b7260a1e
Some flag settings used to be stored in a keyboard layout extravalue setting. This
change:
- Introduces the capability of setting such specific flags in values/config.xml
- Retains the ability to use extravalues (for layout-specific settings), though
there is no more any such setting at the moment.
- Fixes a bug where loading a dictionary from outside does not initialize the flags.
- Moves Flag to another class.
Note: this needs I705ec68c to avoid breaking the build
Change-Id: Ia7703aae3215b06c0b3cb792821649806e8998c1
Previously the key preview was implemented by PopupWindow. The key
preview popup window would be dismissed and shown each time the key
was released and pressed. It turned out that it was taking several
milliseconds.
This change implements the key preview by a simple TextView which will
be layout-ed at absolute coordinates within the screen FrameLayout.
And dismissing and showing the key preview is implemented by the
TextView's visibility.
This implementation needs careful coordination of candidates.xml
layout and LatinIME.onComputeInsets to control suggestion strip
visibility.
Bug: 4179964
Change-Id: Id6347cb35b91eb14ab20dd2f312e58b54b6625a7
Because handling shift locked state of alphabet keyboard is done by
KeyboardSwitcher, there is no need to change the "on" state of Key
when releasing the key. On the other hand, symbol and symbol shifted
keyboard has fixed "on" state "ALT/MORE" key.
This change also renames the attribute "isModifier" to "isFunctional".
Change-Id: I082885bd2376ae26bdfc378c14add2b5d6be1d4e
The Arabic keyboard is more or less based on PC keyboard and other
sources. It has no means to input diacritics at the moment.
Some data for the Hebrew keyboard was already there, but not used.
This change splits phone and tablet layout and consolidates the
tablet one to something that seems sensible. It can't input diacritics
either at the moment.
Other shortcomings affect those keyboards. For example, normal
Hebrew keyboards switch to capital QWERTY keyboard with shift on,
as there are no capital Hebrew characters, but this version does not
feature this.
It should be mostly possible already to enter Arabic or Hebrew with
these keyboards however.
Change-Id: Ic4df2a9a77ffd03c4f9ee2c47e03c0f43f8e48ae
The currency key shows different key label depending on the coutnry
code of the keyboard, "dollar", "euro" and "pound".
Bug: 3413589
Change-Id: I660c6f5010629276df3f97d337f4493d1fbccb3f
This change also introduces number password (a.k.a. PIN) layout. The
text password layout will follow.
Bug: 3384942
Change-Id: I50b5e413e47a28d5285fd0468115e11ce46c7f18
Also change the name of the default value for re-correction for
consistency with other constant names.
Bug: 3426884
Change-Id: I615ba640fb17e6d7514b8a0e4f52028eb0e23908
This reverts commit de59a84029 (Ie8d4469b).
The requested feature has been implemented by I92d98bed.
Bug: 3238092
Change-Id: I9d53030b3d5c9a0f24883292a93576a3231813aa
Conditionally remove the "Quick fixes", "Bigram suggestions" and
"Usability study mode" options, depending on configuration.
When disabled, have the quick fixes and bigram option become
false if autocorrect is off, and true otherwise.
Also reorder options to bring "Auto correction" above "Show
suggestions".
bug: 3282448
Change-Id: Ib7fd928be417a816ef9e21423a531773069b7468
Add a "General" category to enclose general settings, and rename
"Word suggestion settings" to "Text correction".
bug: 3282448
Change-Id: Ie695683af0646974da82e29e11d1c3a785ef46c7
Do not show the recorrection option on xlarge terminals,
and make it true by default. Also, bring the Auto-capitalization
at the top of the settings page.
Issue: 3282448
Change-Id: I51a9ae6c7e496be2970107277f0a4ac65b12821e
Add an option to mask the sound on keypress preference, and
make it false on xlarge terminals by default.
bug: 3282448
Change-Id: I747272d9edf854dc229aa620836cfa35a437d13f
This change also introduces the following.
* space bar language switcher is enabled for phone device.
* get rid of spcae key icon from number keyboard of tablet.
* slightly lower the position of language name on space bar of tablet.
Bug: 3290290
Change-Id: I432be8f757bcc84c257770112ff1f6fa7970c584
This change
- introduces the popupKeyboardTemplate attribute of Keyboard to
specify XML Keyboard file for popup mini keyboard.
- introduces the maxPopupKeyboardColumn attribute of Keyboard to
specify the maximum column of popup mini keyboard.
- changes the content format of the popupCharacters attribute of Key.
It now represents keyLabel, codes and keyTextOutput of each key of
popup mini keyboard using CSV format.
Bug: 2214959
Change-Id: I539e310f7e38a049ee193de0b4ad5d7afdce37b1
This change introduces,
- new attribute keyboardHeight to specify default keyboard height.
- new attribute maxKeyboardHeight to specify maximum keyboard height,
usually specified by percentage to the screen height.
- keyHeight attribute is obsoleted
- new attribute rowHeight to specify a row height, can be specifed as
percentage of the keyboard height. And verticalGap is included to
the row height (row height = key height + vertical gap).
Change-Id: I48a2f2661e8a91a998503a847437c1baf1de9b9c
This change re-implements CandidateView using HorizontalScrollView and
customized Button, so that the candidate strip can be flingable.
This change also introduces the following features.
- Highlighting candidate strip and space bar is configurable by
@bool/config_candidate_highlight_enabled.
- Candidate strip can be centered with left/right padding if
@dimen/candidate_strip_padding size is greater than 0.
- Candidate text size is configurable by @dimen/candidate_text_size.
Bug: 1575885
Bug: 3230726
Change-Id: Iedf78ff31bc9f2f6291a8e8fb7faa0e6b961dd6d
This change,
- changes voice key code back to -102
- renames some key code names and method names
- adds mic_slash_holo to drawable-hdpi
Change-Id: I8be3a20921f472ece4298edad2d275f29a7e4955
This change introduces new package com.android.inputmethod.keyboard
which hosts keyboard related classes.
Also adds missing @Override and @SuppressWarning("unused") annotation
Change-Id: I0317f5cfa317e13f3c77815f48ffc69b5d1ade05
This change introduces,
- center align "More" key label
- remove drop shadow from key label
- darker key label color when manual temporary upper case
- narrower pop up mini keyboard
- remove unnecessary key background from pop up mini keyboard
- smaller key label in portrait
Bug: 3216592
Change-Id: I77e0733f467a88aa32e09fcbace56fe08f755229
This change introduces,
- support de QWERTZ
- support fr AZERTY
- support fr_CA QWERTY layout
- support fr_CH QWERTZ layout
- refactor some common keyboard row layouts
Bug: 2334086
Change-Id: I3e01e841e0dc72419d55e29d426bdec70655459c
This change introduces shiftedIcon attribute for Key which specifies
icon to draw the shift key while the key is in shifted state.
This change also intriduces new configurable dimension value
key_label_horizontal_alignment_padding which represents horizontal
padding for left or right alignment of key label.
Bug: 3216592
Bug: 3201839
Change-Id: I3aa7392227ce573c404517678e6340a8d1fcb328
This change also uses slightly larger font size for functional key
label according to the v4 keyboard design.
Bug: 3216592
Change-Id: I027f109b7748ade8564dc808487d9a6ce1da9761
This change partially implements the requested feature. The following
are not supported yet.
- Non-letter key handling on automatic temporary upper case layout.
- Non-letter key handling on shift chording in caps lock layout.
- Hint icons for manual temporary upper case layout are not final ones.
Bug: 3193390
Change-Id: I636da99d1be05b1337935d87c6f4d140661e1cc8
Because there may be very long key, such as space bar on tablet, we
should not use the distance between the touch point and the center of
key as proximity detection. Instead of that, this change uses the
distance between the point and the nearest edge of key as proximity
detection.
Also this change fixes the bug that space key (code 32) was not
counted in proximity detection.
Bug: 3164020
Bug: 3168138
Change-Id: I687f1ce94a8e944c3f6eea0fe00e18ed6e68e278
This change also fixes that the popup preview of ALT on symbol
keyboard is not showing.
Bug: 3122877
Bug: 3127255
Change-Id: I978cb30a0d05298274d8ab6541b91323a0fef211
Cherrypick I44f3b2eef8086d6e0b0db53d38f08487549060c6 from Gingerbread
This change also introduces the key background drawables which has no
fixed bottom padding. Instead of relying on bottom padding in
drawable, this change also specifies Keyboard.verticalGap with
physical unit. Other keyboard related length, distance and size are
also specified by physical unit.
Bug: 3066107
Change-Id: Ib38355ebfc2f8d5b1d26c4e90eba87196fbeddfa
This change also introduces the key background drawables which has no
fixed bottom padding. Instead of relying on bottom padding in
drawable, this change also specifies Keyboard.verticalGap with
physical unit. Other keyboard related length, distance and size are
also specified by physical unit.
Bug: 3066107
Change-Id: I44f3b2eef8086d6e0b0db53d38f08487549060c6
cherry-pick: I72c2448894a1084c582c2f1fb942b5fa8353f028
Before this change, the verticalCorrection value was defined by "dpi"
that is relative to device screen. This change defines the
verticalCorrection by absolute unit "in".
Bug: 3066107
Change-Id: If71419dcfc18be3e5e87afea078fa15d3c31d908
Before this change, the verticalCorrection value was defined by "dpi"
that is relative to device screen. This change defines the
verticalCorrection by absolute unit "in".
Bug: 3066107
Change-Id: I72c2448894a1084c582c2f1fb942b5fa8353f028
Before this change, the delay was 500 ms that came from
ViewConfiguration.getLongPressTimeout(). This change reduces the
delay to 400 ms.
Bug: 3074984
Change-Id: Ia5af5e877a3c4bb29211ef4040c728ac09a9fe85
Keyboard XML file can include other keyboard XML file using directive
<include keyboardLayout="@xml/...">. The keyboard XML file which is
included must have <merge> tag as root element.
Change-Id: I06c35fe7b3db5232acdb33f73a79f38d31261b32
Merge commit 'c0fc4bf9932caf536af5d5d86bb61ec6d8a44a99'
* commit 'c0fc4bf9932caf536af5d5d86bb61ec6d8a44a99':
Long press mic/comma key bring mini keyboard with settings
Merge commit '105f7c36b7fa1845b9edbf47ca55b4a6660303b6'
* commit '105f7c36b7fa1845b9edbf47ca55b4a6660303b6':
Long pressing mic/comma key will show settings menue
This change also fixes tha the touch slop value is applyed only for
initial movement of scrolling suggestion bar.
Bug: 3004920
Change-Id: I62afdedc210156e41e8c84c48cade442f9d5a1aa
This keyboard layout is tentative for UX study.
This change added xlarge keyboard layouts only for "regular text",
"symbol/number mode" and "symbol/number mode shifted".
TODO other text mode variants should have dedicated layout.
Change-Id: I36077efcec4b57c3b5cada0a851e1409a289eeb9
Merge commit 'bf03559f7e38cd51cb5fd6b0afa937982cbffc67'
* commit 'bf03559f7e38cd51cb5fd6b0afa937982cbffc67':
Add enter/exit animation style to prevew and mini keyboard
TODO This animation style API of PopupWindow can be called only in
Gingrebread or later. We should refactor this using reflection to be
able to be compatible with Froyo.
Bug: 3004787
Bug: 2973989
Change-Id: I2abfcc853b1a0af2bccee7bdf5fbd723456b7d34