Commit graph

220 commits

Author SHA1 Message Date
Jean Chalard
cbad260cf3 Fix a test
To some extent, the test was wrong here.
After space is typed in this case, we wait a small delay before updating
the suggestion strip so that we can display bigram predictions without
introducing delays. The suggestion strip is not displayed until then.

The test was bypassing this by simulating a press on the suggestion
strip, but for LatinIME it was not displayed yet, hence the bug.
The new code waits for the delay, makes sure the suggestion strip is
actually displaying punctuation marks, then press the mark and do
the intended test on space.

Change-Id: I18f82da1bc0a8e584e9b1bac59ff48823d78ec12
2012-03-06 14:00:11 +09:00
Tadashi G. Takaoka
3a1844c33b Merge "Support dividers in MoreKeysKeyboard" 2012-03-02 03:58:13 -08: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
a3abbac47a Merge "Remove obsolete tests" 2012-03-01 21:23:54 -08:00
Tadashi G. Takaoka
8d7cb928d8 Remove obsolete tests
Change-Id: Ibfbe6b39580ae13e4c32fb2ceab7a6c6f3a24ccb
2012-03-02 14:18:08 +09:00
Jean Chalard
f717c5685e Add basic tests for auto-correct indicator.
Bug: 5975557
Change-Id: I39e782f89813b9d585e369e590d6288e696168a2
2012-03-02 11:08:46 +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
Jean Chalard
d9f6a0ebb7 Add a method to run the handler's messages from the tests
This is really brutal, but after trying many many things I didn't
find a better way. It works with the current implementation of
MessageQueue.
Since this only introduces a utility method it doesn't really do
anything, but the functionality it provides will be essential to
Bug: 5975557

Change-Id: I81c4113a08f9a8d8a88294d7dd3b6c8c483c8b1d
2012-02-29 11:52:33 +09:00
Jean Chalard
bb15f92d4f Add some unit tests.
- Type "tgis", manually pick "thus", press backspace.
  Backspace should revert the manual pick.
  Check "tgis" is the result.
- Type "tgis" followed by a period.
  Period should trigger auto-correct to "this".
  Check "this" is the result.
- Type "tgis" followed by a period, then backspace.
  Period should trigger auto-correct to "this", and backspace should
  revert the auto-correction.
  Check "tgis." is the result.

Change-Id: I7e23c8a26fbdbe23336149a05ff01bc51707422e
2012-02-22 01:35:11 -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
6213983fa1 Refactor MoreKeysKeyboard.Builder
Change-Id: Ib5f58b1143be60c748b81299ccc3b237d2587846
2012-02-10 18:53:54 +09:00
Tadashi G. Takaoka
614cb02a91 Merge "Rename mini keyboard to more keys keyboard" 2012-02-08 00:04:16 -08:00
Tadashi G. Takaoka
2affaf91a0 Rename mini keyboard to more keys keyboard
Change-Id: Ie4c85e8ca5a1f41a420aae5c1cd9c1cb07e237e5
2012-02-08 16:12:31 +09:00
Jean Chalard
9159b9953d Fix the auto-composer to support supplementary chars
Change-Id: I61ff218ae2ca4eb443a370e581b677755258670a
2012-02-08 15:45:51 +09:00
Jean Chalard
fd6a52c8d5 Merge "Add some unit tests for punctuation and special keys" 2012-02-07 17:36:39 -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
Jean Chalard
de60d87a60 Add some unit tests for punctuation and special keys
Bug: 5962053
Change-Id: I7dd68767be6e724675428910fa2c00290f76e869
2012-02-07 20:34:56 +09:00
Jean Chalard
816a8a0fd8 Fix a race condition that makes tests unstable
Change-Id: Ic19d380eb64855884bc6ded8547c200dd772ffe9
2012-02-07 19:22:37 +09:00
Tadashi G. Takaoka
f6cf387edc Merge "Recursively resolve @string/resource reference in key key spec parsing" 2012-02-03 03:20:37 -08: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
Jean Chalard
9f17de5b4d Merge "Stop inserting a space after a manually picked word." 2012-02-03 02:09:05 -08:00
Tadashi G. Takaoka
9f491e34ac Merge "Filter out empty entry from more keys CSV" 2012-02-03 01:54:49 -08:00
Tadashi G. Takaoka
24cd2617f5 Filter out empty entry from more keys CSV
Change-Id: I9a26aaa58f0f502b3bfef9de422370d2b0add8d8
2012-02-03 18:48:01 +09:00
Jean Chalard
fb684cebe8 Stop inserting a space after a manually picked word.
Bug: 4994861
Change-Id: I6ae256a94dbaddea4304304779d17025620c5025
2012-02-03 18:45:44 +09:00
Tadashi G. Takaoka
0de2fbd7b6 Fix KeySpecParserTests to read correct icon id
Change-Id: Ic002e7fbe84a7001874ebd59e6af8ba695d173de
2012-02-03 18:40:38 +09:00
Tadashi G. Takaoka
909b2940db Merge "Get rid of Key.setIcon(Drawable)" 2012-02-02 21:51:51 -08:00
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
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
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
Jean Chalard
a456c755ee Merge "Add unit tests in prevision of magic space removal" 2012-02-02 01:35:36 -08:00
Jean Chalard
cca2183f5a Add unit tests in prevision of magic space removal
Bug: 4994861
Change-Id: I114a1117cf19aa6e514ac7342f733175dc5d5df1
2012-02-02 18:21:10 +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
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
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
Jean Chalard
a02e703289 Add a missing brace
Change-Id: Ia51da6506d78a295b8b70a241208fb81602cf0ea
2012-01-26 16:08:53 +09:00
Jean Chalard
9184d8b235 Add a test for moving cursor then backspace
This is a test for the case in
Bug: 5851148

Change-Id: I58ee459d85f463b445a28137bdc6c40bc3067ff5
2012-01-26 15:39:29 +09:00
Jean Chalard
41df8a98fd Add a test case for backspace at start of line
Tests the behavior from
Bug: 5784542

Change-Id: I78ec9d77c5dd1e3ea8eff530f9d7d284a1c094d4
2012-01-26 15:36:27 +09:00
Jean Chalard
60e7718462 Add tests for double space behavior
Bug: 5875776
Change-Id: Icc28b6c5c0132a3afc8d603841c9e321f720b7c9
2012-01-26 10:10:38 +09: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
38d6a18821 Use String instaed of CharSequence in Key class
Change-Id: Ia76a41daede402ed2a509e110ae97d6bb660c760
2012-01-25 17:04:00 +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
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
373f452584 Add more sliding input unit test
Bug: 5881820
Change-Id: I9249d8b702ba9afbd1c7d0a4889ac5b2e929f85d
2012-01-24 11:49:00 +09:00
Tadashi G. Takaoka
530f5d7e15 Merge "Support @icon/icon_name for more keys specification" 2012-01-20 03:20:40 -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
Jean Chalard
482588c5a2 Merge "Enable DEBUG mode for logic tests." 2012-01-20 02:27:34 -08:00
Jean Chalard
bc10e4145e Enable DEBUG mode for logic tests.
This enables a wealth of useful checks. We want to run unit
tests with debug mode on.

Change-Id: Ic45caaf43a889287f5aec203e7d1ba63136fc58e
2012-01-20 19:23:34 +09:00
Tadashi G. Takaoka
e54a4005d5 Support @string reference in moreKeys attribute
Change-Id: If0056d0601149d2ddd0e231a81e7b2409b37fc06
2012-01-20 18:46:33 +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
Tadashi G. Takaoka
bd7b160cfb Change more key specification type to String from CharSequence
Change-Id: I5e910f8225a248fc6403771836dec4c0b7294caa
2012-01-20 16:27:32 +09:00
Jean Chalard
83c72d1dae Add the first tests for the input login in LatinIME class
Change-Id: Ifcf9ab55ee01bf7c6c6829e699246e5654975456
2012-01-20 13:00:40 +09:00
Tadashi G. Takaoka
f36f90a173 Fix KeyboardState switching back from alphabet-chording input correctly
Bug: 5881820
Change-Id: I108bbc25baa331cc87f00955b48188b3557d10dd
2012-01-19 18:53:38 +09:00
Tadashi G. Takaoka
d26d63b35d Fix KeyboardState to pass KeyboardStateMultiTouchTests
Change-Id: If2b9ee7cf3fad7633d64b98758f802792d66f7a8
2012-01-19 18:48:02 +09:00
Tadashi G. Takaoka
01d9fc966a Cleanup KeyboardState a bit
Rename KeyboardShiftState variable and reorder some statements.

Change-Id: I7e8842836f35876f8697f9906343f7d4a1f9db4f
2012-01-19 18:42:11 +09:00
Tadashi G. Takaoka
23bacdb6a5 Fix MoreKeySpecParser to be able to handle outputText correctly
The issue was introduced by Id2320f4d.

Bug: 5887936
Change-Id: Ifec3aefb5b168f790de696ece104b84cdab46539
2012-01-19 12:51:27 +09:00
Tadashi G. Takaoka
06bc1db017 Add more multitouch tests
Change-Id: I424a4b608fec084cb787003ef4417ccf273366ae
2012-01-18 19:35:01 +09:00
Tadashi G. Takaoka
60c4594ee6 Get rid of hasDistinctMultitouch reference from KeyboardState
Change-Id: I0a783a425302fbc381d056f5b0d757c27f2a9f14
2012-01-18 18:11:46 +09:00
Tadashi G. Takaoka
64e01baade Add KeyboardStateTestsBase and helper methods
Change-Id: I17d908b60bbf784dae7add8355f699a63f7eb90a
2012-01-18 16:46:38 +09:00
Tadashi G. Takaoka
5731b939c7 Remove KeyboardSwicther.toggleCapslock
Change-Id: Id613c06e2df770659095d78d42637aed063d0c70
2012-01-17 19:26:24 +09:00
Tadashi G. Takaoka
2a88440419 Rename KeyboardActionListener methods
* Rename KeyboardActionListener.onPress to onPressKey
* Rename KeyboardActionListener.onRelease to onReleaseKey
* Merge KeyboardSwicther.onPressShift, onPressSymbol, and onPressOtherKey to onPressKey.
* Merge KeyboardSwitcher.onReleaseShift and onReleaseSymbol to onReleaseKey.
* Merge KeyboardState.onPressShift, onPressSymbol, and onPressOtherKey to onPressKey.
* Merge KeyboardState.onReleaseShift and onReleaseSymbol to onReleaseKey.

Change-Id: Icf28fd18e238c5e534c292893e4ab5b6b98e72f8
2012-01-17 19:07:20 +09:00
Tadashi G. Takaoka
87e025da11 Remove toggleShift and toggleAlphabetAndSymbols from KeyboardSwitcher
Change-Id: I9bb8f78b0a766cd7937d5cbe1c1e5e35898b2997
2012-01-17 16:49:33 +09:00
Tadashi G. Takaoka
4910c9621c Merge "KeyboardState unit tests for non-distinct multitouch device" 2012-01-16 02:31:37 -08:00
Tadashi G. Takaoka
e47bd3f4fb KeyboardState unit tests for non-distinct multitouch device
Bug: 5708602
Change-Id: Id85db2f8b7b427ba62205f5aaad481a3d33e65fc
2012-01-16 19:14:18 +09:00
Tadashi G. Takaoka
6d5c9c9edc Add more KeyboardState unit test cases
Bug: 5708602
Change-Id: Ib9d2b7a2878f78adecc857fd569fba8965cf4a03
2012-01-16 17:19:54 +09:00
Tadashi G. Takaoka
8ece45bb32 Add auto caps function simulation to MockKeyboardSwitcher
Change-Id: I049c224994a37121de031b9fd61edb52eb912e20
2012-01-16 16:30:50 +09:00
Tadashi G. Takaoka
549571cf5c Make MockKeyboardSwitcher top level class
Change-Id: I52c1bc237c20b8bd49fca2431b83843a6e2af10b
2012-01-16 15:49:24 +09:00
Tadashi G. Takaoka
c88026e1df Update shift state when alphabet keyboard has been set
Bug: 5857492
Change-Id: I5ef78af21a76e8cf645e223d1ffa6212690bb1eb
2012-01-16 11:08:29 +09:00
Tadashi G. Takaoka
327c6828a5 Merge "Cleanup KeyboardStateTests a bit" 2012-01-15 17:15:34 -08:00
Tadashi G. Takaoka
d3bf4b172d Cleanup KeyboardStateTests a bit
Move test target KeyboardState into MockKeyboardSwitcher.

Change-Id: I0998a5306a59e777360df9d1321b545313b939f9
2012-01-16 10:04:10 +09:00
Tadashi G. Takaoka
4cabb04971 Use KeyboardSet for unit test
Change-Id: I6a08e04628bac0222140e5b1b108f6bcb39859a2
2012-01-13 19:14:42 +09:00
Tadashi G. Takaoka
211680e375 Merge "Fix SuggestTests" 2012-01-13 01:39:43 -08:00
Tadashi G. Takaoka
9c735b8038 Fix SuggestTests
We need revised scoring test because dictionary look up algorithm has
been changed significantly since this SuggestTests was made.

Change-Id: I69d527a6bfa24ed0dc189fddad1afab0566c6eb8
2012-01-13 15:25:28 +09:00
Tadashi G. Takaoka
f67f001e40 Merge "Cleanup UtilsTests" 2012-01-12 22:17:33 -08:00
Tadashi G. Takaoka
06eb042616 Merge "Fix UserBigramSuggestTests" 2012-01-12 22:17:28 -08:00
Tadashi G. Takaoka
1d161a9038 Cleanup UtilsTests
Change-Id: I5631d010194423fd3d9c216db760ffa726131977
2012-01-13 14:49:14 +09:00
Tadashi G. Takaoka
fb9b0f493c Fix UserBigramSuggestTests
Change-Id: I3363fba44ee70876fd7ba8e27c6ca3c83753b53a
2012-01-13 14:46:45 +09:00
Tadashi G. Takaoka
4015a64a26 Fix SubtypeLocaleTests
Change-Id: Id85814aa3bcd9cacbe446b2dfda3ca2ab9146c13
2012-01-13 14:35:43 +09:00
satok
be0cf72253 Move auto correction thresthold to the native code
bug: 5858137

Change-Id: Ic4b6270c6e51ef4ed25a6a1d8ddd7fdfa70fd78d
2012-01-12 19:56:15 +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
ee4be6e3c6 Call KeyboardState.onUpdateShiftState from onCodeInput if code is a normal letter
This will be helpful to write unit test code.

Change-Id: Ib61cc46ac547084e0dc9ecd3a50814fecf08ace2
2012-01-10 15:13:05 +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