Commit graph

6680 commits

Author SHA1 Message Date
Jean Chalard
2995abe7aa Have Latin IME re-capitalize a selected string
Upon pressing Shift, if there is currently a selected string, have
Latin IME change its capitalization.
This does not yet have the keyboard mode follow the mode - the change
is complicated enough as is.

Bug: 7657025
Change-Id: I54fe8485f44e04efd72c71ac9feee5ce21ba06f2
2013-04-15 20:23:01 +09:00
Jean Chalard
0e9ee4d3bf If there are no suggestion span, recompute suggestions.
Bug: 8084810
Change-Id: I1743c09c43ca6835bb2f607684b037bf17d36335
2013-04-15 19:33:23 +09:00
Jean Chalard
059e084e98 Merge "Reject a previously user-refused suggestion." 2013-04-15 07:45:34 +00:00
Jean Chalard
d40f3f6bc1 Reject a previously user-refused suggestion.
If the user gestures a word, then hits backspace in
disapproval, and gestures about the same thing again,
make sure that we don't suggest the same thing again.

Bug: 7549311
Change-Id: I793bc4df7c3841fa8f2f4146707c26e873f374c1
2013-04-15 16:36:44 +09:00
Tadashi G. Takaoka
4b6756db3c Merge "Remove unnecessary harmful finish() from SettingsActivity" 2013-04-15 07:32:05 +00:00
Tadashi G. Takaoka
216fb6a042 Remove unnecessary harmful finish() from SettingsActivity
Bug: 8560722
Change-Id: I825b135bd13aca17e712330660978b834648dbc3
2013-04-15 16:26:40 +09:00
Jean Chalard
673ebb4ede Merge "Update dictionaries" 2013-04-15 07:23:00 +00:00
Tadashi G. Takaoka
1ec4c07a13 Merge "Ignore modifier key while sliding key input" 2013-04-15 06:19:10 +00:00
Tadashi G. Takaoka
f224941c37 Merge "Suppress calling onPressKey and onReleaseKey while detecting gesture" 2013-04-15 06:18:48 +00:00
Tadashi G. Takaoka
29105a725d Add preference dependency to gesture input related options
Bug: 8613600
Change-Id: I279d3264080aede59203205c45763c7f8ff08ae6
2013-04-15 15:07:49 +09:00
Jean Chalard
da175bdcb1 Update dictionaries
>>> dictionaries/en_GB_wordlist.combined.gz
Header :
  date : 1355802832 <=> 1366003032
  version : 29 <=> 31
Body :
Deleted: HTTP 95
Deleted: WWW 72
Added: mm 135

>>> dictionaries/en_US_wordlist.combined.gz
Header :
  date : 1355112451 <=> 1366003070
  version : 28 <=> 31
Body :
Deleted: HTTP 95
Deleted: WWW 71
Added: mm 135

>>> dictionaries/en_wordlist.combined.gz
Header :
  date : 1355802851 <=> 1366003861
  version : 29 <=> 31
Body :
Deleted: HTTP 95
Deleted: WWW 71
Added: mm 135

>>> dictionaries/fr_wordlist.combined.gz
Header :
  date : 1357617878 <=> 1366003217
  version : 29 <=> 31
Body :
Not a word: re false -> true
Shortcut added: re le 15

>>> dictionaries/nb_wordlist.combined.gz
Header :
  date : 1355802836 <=> 1366003450
  version : 29 <=> 31
Body :
Freq changed: iPhone 91 -> 30
Added: app 30

>>> dictionaries/ru_wordlist.combined.gz
Header :
  date : 1358763720 <=> 1366003693
  version : 30 <=> 31
Body :
Freq changed: за 140 -> 181
Freq changed: не 140 -> 191
Freq changed: про 131 -> 151
Freq changed: эры 125 -> 140

>>> dictionaries/sv_wordlist.combined.gz
Header :
  date : 1355802856 <=> 1366003804
  version : 29 <=> 31
Body :
Added: vi 180

>>> java/res/raw/main_en.dict
Header :
  date : 1355802851 <=> 1366003861
  version : 29 <=> 31
Body :
Deleted: HTTP 95
Deleted: WWW 71
Added: mm 135

>>> java/res/raw/main_fr.dict
Header :
  date : 1357617878 <=> 1366003217
  version : 29 <=> 31
Body :
Not a word: re false -> true
Shortcut added: re le 15

>>> java/res/raw/main_ru.dict
Header :
  date : 1358763720 <=> 1366003693
  version : 30 <=> 31
Body :
Freq changed: за 140 -> 181
Freq changed: не 140 -> 191
Freq changed: про 131 -> 151
Freq changed: эры 125 -> 140

Bug: 8560415
Bug: 7556679
Change-Id: If1c628edcb1cc5efd67e1715acf94f19c0eb4643
2013-04-15 14:51:02 +09:00
Tadashi G. Takaoka
8dfbb740e1 Ignore modifier key while sliding key input
Bug: 8284624
Change-Id: I839d7a769d98f29be647dbe511ba3f73ca44446d
2013-04-15 14:39:02 +09:00
Tadashi G. Takaoka
e2af9b7eb5 Merge "Reset vertical correction when more suggestions are in modal mode" 2013-04-15 04:57:33 +00:00
Tadashi G. Takaoka
51c38a441a Reset vertical correction when more suggestions are in modal mode
Bug: 8605150
Change-Id: Iadbebfb80e765c97e58e8524eb87419f2a9e41d4
2013-04-15 13:56:03 +09:00
Jean Chalard
03d1dff38d Merge "Fix Binary dict tests" 2013-04-15 03:53:54 +00:00
Jean Chalard
c2e9c511cb Fix Binary dict tests
There are two problems here. The first one is the tests would send
an invalid unicode character. Although we could want dicttool to
handle this more gracefully, it's fine for now.

The second problem is much more serious. If a node has more than
128 children, then the java code will crash trying to read the
dictionary back because of a bug that this change fixes. In
theory, it's possible that happens when we try to load the user
history dictionary back from the disk - native code is not affected
so there is no other point that may cause a problem.
In the practice, that means you'd need to have 129 words with a
common prefix (including empty string) but all different after
this. It's almost impossible with Google Keyboard since there are
only so many keys on the keyboard that you can make a word out
of, and then again you'd have to do it repeatedly until it
actually enters the user history dictionary, wait for it to get
saved on the disk.
The bad news is, if you manage to get this far, the keyboard will
crash every time and won't be able to get up until you clear
data for the package.
The good news is, the dictionary itself is not corrupted and only
the reading code is wrong. So updating to a newer version would
actually even recover from this situation.

All in all, considering how almost-impossible this is to trigger,
I don't think even a single user actually did hit this bug.

Bug: 8583091
Change-Id: Iabb2a7f47cbd9ed3193d2a3487318d280753e071
2013-04-15 12:48:16 +09:00
Tadashi G. Takaoka
a91da76683 Suppress calling onPressKey and onReleaseKey while detecting gesture
Bug: 8284624
Change-Id: I14470bb2373965aefa921b2c94948450bfa438e3
2013-04-15 10:59:54 +09:00
Baligh Uddin
bfedad238f Merge "Import translations. DO NOT MERGE" 2013-04-12 23:56:49 +00:00
Baligh Uddin
8515649312 Import translations. DO NOT MERGE
Change-Id: I2cb68d3f0804a0c9990916a89e079510b465253f
Auto-generated-cl: translation import
2013-04-12 13:26:13 -07:00
Kurt Partridge
ededdc6a8b Merge "Avoid NPE" 2013-04-12 18:10:49 +00:00
Jean Chalard
2cd1136b8e Merge "Remove the dialog to insert words to the dictionary." 2013-04-12 12:33:24 +00:00
Jean Chalard
91bcf5eb5d Merge "Restart suggestions when the cursor moves." 2013-04-12 12:27:50 +00:00
Jean Chalard
02ce3dc2d1 Fix a bug with bad application completions
Bug: 8561056
Change-Id: I91fb0ac76dabfc841bafc0e2c0ea9f63e6f604f9
2013-04-12 20:53:06 +09:00
Jean Chalard
6a114fa700 Restart suggestions when the cursor moves.
This uses the old suggestions. It does not try to recompute
new suggestions if there are no old suggestions yet: this is
coming in a later change.
If there are no suggestions, this shows the word itself
as a suggestion.

Bug: 8084810
Change-Id: I4c2e25df0ff3673be1825f57a0c19a9d23d47a48
2013-04-12 20:49:03 +09:00
Jean Chalard
d24f939712 Merge "Make shortcut-only user dict entry non-words." 2013-04-12 11:02:00 +00:00
Jean Chalard
fb5869e9ff Merge "Add a class to encapsulate getting the metadata URI" 2013-04-12 11:01:36 +00:00
Jean Chalard
6a2a4b8e4d Make shortcut-only user dict entry non-words.
Bug: 7369456
Change-Id: Iecd6f6d617f31bd2aa6749516711aeb1f0549622
2013-04-12 16:17:09 +09:00
Jean Chalard
1a51833828 Remove the dialog to insert words to the dictionary.
Bug: 8562529
Change-Id: Ibd853f0cb995e7fb35f8730eafcef73ead58c869
2013-04-12 15:58:50 +09:00
Jean Chalard
d0623ad7f3 Merge "Move some values to a place where they are easier to override" 2013-04-12 02:53:41 +00:00
Kurt Partridge
2927223edd Merge "Better isolate ResearchLogging data" 2013-04-11 21:56:01 +00:00
Jean Chalard
8987cccf89 Add a class to encapsulate getting the metadata URI
Bug: 8376173
Change-Id: Icaac8ad412e0180c44e6a955943e3b208981b2ea
2013-04-11 17:52:16 +09:00
Jean Chalard
7ad078e89c Move some values to a place where they are easier to override
Bug: 8418765
Change-Id: Iff0edd4ed8da9d0d1a6fb9545224b232ba374469
2013-04-11 17:35:23 +09:00
Tadashi G. Takaoka
cd692be1e1 Merge "Change the default vibration duration to 20msec" 2013-04-11 08:15:29 +00:00
Jean Chalard
b5d5190deb Merge "Add some utility functions." 2013-04-11 07:35:22 +00:00
Tadashi G. Takaoka
e1416b4399 Change the default vibration duration to 20msec
Bug: 8556975
Change-Id: Ia6a0fe230585c9826199a0696fb0c1367e917134
2013-04-11 16:30:32 +09:00
Jean Chalard
1cbb0b8f2a Add some utility functions.
Bug: 7657025
Change-Id: I4889721b5348c77ed56c5157557e9988dea48a02
2013-04-11 16:16:19 +09:00
Tadashi G. Takaoka
4f5f81d5f7 Reorder advanced settings menu
Bug: 8247224
Change-Id: I339f285304824b778635f435d8587893fc241c4e
2013-04-11 15:54:38 +09:00
Tadashi G. Takaoka
bd8e92d843 Add debug message to detect unusual zero width condition
Bug: 8452013
Change-Id: I0169dc6b0d08d1b4d9e01a5fa2ad01e9db292bda
2013-04-11 15:08:36 +09:00
Tadashi G. Takaoka
f67a388197 Merge "Add TypefaceUtils" 2013-04-11 05:32:58 +00:00
Tadashi G. Takaoka
08ae0d5ca0 Add TypefaceUtils
Change-Id: I2d939bc1e3279253902b28ff12bbf7861716b64d
2013-04-11 14:27:42 +09:00
Tadashi G. Takaoka
6d0027a46a Merge "Use SparseIntArray instead of TreeMap<Integer, Integer>" 2013-04-11 05:06:35 +00:00
Tadashi G. Takaoka
cee512b63e Merge "More precise geometry checking for more keys keyboard" 2013-04-11 03:51:42 +00:00
Jean Chalard
3722f0877e Merge "Fix two bugs in dicttool" 2013-04-11 03:07:30 +00:00
Tadashi G. Takaoka
a4463d7a9a More precise geometry checking for more keys keyboard
Bug: 8484528
Change-Id: I0dd09530a5262fee9c19bb0f11d5830b00306944
2013-04-11 10:44:54 +09:00
Kurt Partridge
cdaee868a3 Merge "Preserve a class for testing" 2013-04-10 23:45:33 +00:00
Kurt Partridge
3684036eed Preserve a class for testing
Addresses b/8583091

Change-Id: I89605223784312d9572dfc7c8aaa7e5eba44c4f6
2013-04-10 16:40:17 -07:00
Kurt Partridge
099dd3f277 Merge "Better release build reporting" 2013-04-10 22:51:21 +00:00
Baligh Uddin
cc42e139c3 Import translations. DO NOT MERGE
Change-Id: Icb4c4f32b1549f3d98b99a48b7c2f1b0de1b5a04
Auto-generated-cl: translation import
2013-04-10 13:25:52 -07:00
Kurt Partridge
6108624a00 Better isolate ResearchLogging data
Calls to LatinIME#onStartInputViewInternal log important information
about the context in which an IME is used.  This is reported as a
single LogStatement.  Previously, this was not placed into a separate
LogUnit, and was mixed in with general word data.  This change wraps
this LogStatement in its own LogUnit.

Change-Id: I0fecd41c8a1de622a764cc4b5d6902336697046c
2013-04-10 11:53:38 -07:00
Kurt Partridge
dfa5628cd3 Better release build reporting
The ResearchLogger reports whether a build is a release build or not
to avoid polluting data with IME debugging work by developers.
Previously this was done by checking a constant flag, which was also
serving the dual purpose of masking out debug code in release builds.

This change introduces a heuristic to determine whether a build was
created by a developer (using the package versionName), and annotating
the data sent to the server appropriately.

Change-Id: Icbad17c66b703cabf6d23d05e2c7c41bcceaae45
2013-04-10 11:52:37 -07:00
Jean Chalard
ca0fdbbe2e Fix two bugs in dicttool
Both bugs only affect debug mode. One has the wrong object tested
with equals, the other has the iteration failing in some cases.

Change-Id: Ie9100d257a3f9e3be340cf3e38116f63417bdc1a
2013-04-10 22:10:31 +09:00
Jean Chalard
fb3e805722 Merge "Fix a bug where a space would not be inserted before a gesture" 2013-04-10 11:19:31 +00:00
Jean Chalard
30b8004b56 Fix a bug where a space would not be inserted before a gesture
Bug: 8583675
Change-Id: I14924fef5663f48481994c02c56be45f9f85be65
2013-04-10 20:10:28 +09:00
Tadashi G. Takaoka
c7d4158979 Merge "Use private object as a lock instead of synchronized method" 2013-04-10 09:56:27 +00:00
Tadashi G. Takaoka
12e77de212 Merge "Use private lock object instead of synchronized method" 2013-04-10 09:35:12 +00:00
Tadashi G. Takaoka
1e256f5888 Merge "Protect simultaneously modifying gesture preview data" 2013-04-10 09:34:59 +00:00
Tadashi G. Takaoka
951ea3c06d Use private object as a lock instead of synchronized method
Change-Id: I0b9a935d8c97ddfb18ab7950a9d6bf542863072a
2013-04-10 18:34:01 +09:00
Tadashi G. Takaoka
ce811f50d2 Use private lock object instead of synchronized method
Change-Id: Ifc62bacbd0583a7d102009681a94bdd9ccff7d47
2013-04-10 18:27:11 +09:00
Tadashi G. Takaoka
ad205b2e3f Protect simultaneously modifying gesture preview data
Bug: 8556775
Change-Id: I83272e3adbfc0c9cc14f9e8b479e926aabf4fa2a
2013-04-10 18:18:54 +09:00
Jean Chalard
99b93d17d5 Fix a bug where autocorrection status would be wrong.
Change-Id: Ic220129dc59f585164dbf63591cd1c96de17fe6f
2013-04-10 17:49:19 +09:00
Tadashi G. Takaoka
262d5bd9f9 Don't override EXTRA_SHOW_FRAGMENT if exists
Bug: 8541190
Change-Id: I37d3de12558efd55f157389d2e0b51fc83dc5da1
2013-04-10 16:24:17 +09:00
Tadashi G. Takaoka
10af4b6e45 Merge "Separate StringUtils.capitalizeFirstCharacter" 2013-04-10 06:30:33 +00:00
Tadashi G. Takaoka
d20c5a78e2 Separate StringUtils.capitalizeFirstCharacter
Bug: 8582061
Change-Id: Iac8f65defdd92d7df533bdf0e2937ad897d96363
2013-04-10 14:55:23 +09:00
Keisuke Kuroynagi
87fdde6ec4 Typing double letters via a 'circle' on the key.
Bug: 8550980
Change-Id: I5e432dea0e025ccea196f80e90a6bf945488e130
2013-04-10 12:43:13 +09:00
Tadashi G. Takaoka
f606fd8554 Hide Setup Wizard icon for stock keyboard
Bug: 8581647
Change-Id: Id530f1a33a5c919f4a732ec0d545dfbe76e56316
2013-04-10 12:24:40 +09:00
Tadashi G. Takaoka
869ea1e555 Use SparseIntArray instead of TreeMap<Integer, Integer>
Change-Id: I56a64228a5fd85d440d0d08ac67cba8bf2e5690d
2013-04-10 10:15:26 +09:00
Tadashi G. Takaoka
4fdfce6dcc Merge "Refactor SpellCheckerProximityInfo as extending ProximityInfo" 2013-04-10 01:06:36 +00:00
Baligh Uddin
224e969ef4 Merge "Import translations. DO NOT MERGE" 2013-04-09 19:42:18 +00:00
Kurt Partridge
09ab6495a2 Merge "[FileEncap18] Clean up uploading scheduling" 2013-04-09 19:08:40 +00:00
Jean Chalard
19dcd15493 Merge "Offer to add any OOV typed word to the dictionary." 2013-04-09 10:28:47 +00:00
Jean Chalard
ddafcf82dc Merge "Fix bugs and add tests" 2013-04-09 08:35:28 +00:00
Jean Chalard
9310f42a36 Offer to add any OOV typed word to the dictionary.
That includes gestures, which used not to work.

Bug: 8532637
Change-Id: I04606565d7000faadf954c4a806c39d4d162a2c1
2013-04-09 12:05:54 +09:00
Kurt Partridge
1f70a4d681 Merge "Allow logging while replaying" 2013-04-09 02:33:09 +00:00
Kurt Partridge
d117c1a116 Merge "Do not record log split time when handling separator" 2013-04-09 02:31:48 +00:00
Baligh Uddin
e4760624ce Import translations. DO NOT MERGE
Change-Id: I3605a7fd941d9ebe76460d114f384b1e233b3440
Auto-generated-cl: translation import
2013-04-08 14:47:06 -07:00
Ken Wakasa
d17c8bd929 Update comments
Change-Id: I6aef328ec9041666cc168c8323bed04d39591b71
2013-04-08 23:05:45 +09:00
Ken Wakasa
370461ef9f Clean up a few option strings under the Advanced settings
Change-Id: If41ac016128fce401dedcab0fa7d6c23edaca158
2013-04-08 01:16:32 +09:00
Jean Chalard
c87449497c Fix bugs and add tests
Change-Id: I6b56b91ace57f4a49584b5dceb71b145859f839e
2013-04-05 12:11:19 +09:00
Jean Chalard
7d3836d63a Move a generic string utility to StringUtils
Change-Id: I9cc2e9a7ac0b3346af40bcb083f939333336cf09
2013-04-05 12:09:14 +09:00
Baligh Uddin
4b8494c4fc Import translations. DO NOT MERGE
Change-Id: I66b30c5f9673fc4ed3b96753cfec023e7d498dec
Auto-generated-cl: translation import
2013-04-03 13:13:26 -07:00
Tadashi G. Takaoka
6e3f307266 Refactor SpellCheckerProximityInfo as extending ProximityInfo
Change-Id: I544eec9d661796d57749dbaa2163bc1e2a891353
2013-04-02 19:06:32 +09:00
Jean Chalard
ecb59eff90 Revert "[DO NOT MERGE] Activate hardware keyboard handling"
This reverts commit c741f1f83b
DO NOT MERGE is ignored and this is merged anyway :(

Change-Id: Ie044cdfc6021933379ec97ad7346c5c8591f70bf
2013-04-02 16:08:48 +09:00
Jean Chalard
c741f1f83b [DO NOT MERGE] Activate hardware keyboard handling
Change-Id: Ifdec9338a454291621b2b87c899f5d4301480b27
2013-04-02 15:38:13 +09:00
Kurt Partridge
30772c3758 Allow logging while replaying
Previously logging was disabled during replay.  This makes it impossible to use logged data as a
regression test, since the new log was unavailable.  This change corrects this problem.

Change-Id: I19dc31def2f2f87fd219dc561c739d18e4ab9c9c
2013-04-01 16:49:39 -07:00
Kurt Partridge
636b8c4231 Do not record log split time when handling separator
Previously handleSeparator() caused the ResearchLogger to mark the time at which a LogUnit should be
broken.  However, this causes the motion data associated with a separator to be associated with the
LogUnit of the previous word.  This change corrects this bug.

Change-Id: I8b4d4fa6de2a013de9e2a28bb668c446a07f1957
2013-04-01 16:48:15 -07:00
Kurt Partridge
5779bc91e6 Merge "Split LogUnits differently." 2013-04-01 23:08:21 +00:00
Baligh Uddin
02fc1ed512 Merge "Import translations. DO NOT MERGE" 2013-04-01 20:54:38 +00:00
Kurt Partridge
0c0ab2b4d9 Merge "Reorder ResearchLogger call" 2013-04-01 15:19:45 +00:00
Jean Chalard
0745fe83d4 am b8869ec1: am 0fcc4960: Deactivate hardware keyboard handling.
* commit 'b8869ec1e39c1751825841e790d21fc854dca9ce':
  Deactivate hardware keyboard handling.
2013-04-01 05:42:42 -07:00
Jean Chalard
b8869ec1e3 am 0fcc4960: Deactivate hardware keyboard handling.
* commit '0fcc4960bcd037b7e1482098f85342743eb2ddee':
  Deactivate hardware keyboard handling.
2013-04-01 05:40:07 -07:00
Jean Chalard
0fcc4960bc Deactivate hardware keyboard handling.
Bug: 8000119

Change-Id: I021481343d6d87efd8ff6110e9aa0906a1a3d11d
2013-04-01 21:35:45 +09:00
Tadashi G. Takaoka
75028af28c Interpolate gesture preview trails
There is the boolean flag to kill interpolation.

Bug: 7167303
Change-Id: Iac7e4cb88cf437c2ee77c003c9cddb92416025c7
2013-04-01 19:15:36 +09:00
Jean Chalard
43341ba042 Merge "Ask the client to make itself known when it's not" 2013-04-01 09:00:25 +00:00
Jean Chalard
76d5f512f9 Ask the client to make itself known when it's not
Upon invoking the settings of the dictionary pack with an unknown
client, we now launch an intent to ask the client to make itself known.
This change also includes the code that receives this intent and
acts upon it.

Bug: 8492879
Change-Id: I2c6496dea845646961ecafcf64e282cb93ee91dc
2013-04-01 17:37:22 +09:00
Jean Chalard
065f126f1d Merge "Fix two nasty bugs with surrogate pairs." 2013-04-01 08:28:08 +00:00
Jean Chalard
a411595b16 Fix two nasty bugs with surrogate pairs.
The important bug is in findWordInTree. The problem, which is
not obvious, is that we were calling codePointAt() with the
code point index in the string, instead of the char index.
The other bug this change fixes was harmless in the practice,
because it's in the iteration which is only used for debug and
pretty printing purposes. It's very similar in that it would
substract a length in code point to a length in chars and
truncate a StringBuilder at that length, so it would fail in a
quite similar manner. This changes the meaning of the "length"
attribute in Position, but it's clearer this way anyway.

Bug: 8450145
Change-Id: If396f883a9e6449de39351553ba83f5be5bd30f0
2013-04-01 17:06:19 +09:00
Baligh Uddin
bd4fdf8e4e Import translations. DO NOT MERGE
Change-Id: I8752437b40f9f8bcb7b8920bc1dc4342e51b3621
Auto-generated-cl: translation import
2013-03-29 21:27:10 -07:00
Jean Chalard
740da0d8d0 Fix an NPE
Also remove an unused method and make 2 private variables
final.

Bug: 8461093
Change-Id: I676d93fda28e82eb5a6978f2e7ad5a0add2cbecf
2013-03-29 18:41:29 +09:00
Tadashi G. Takaoka
48d8d8d0ae Fix potential NPE in MainKeyboardView.KeyTimerHandler
Bug: 8469652
Change-Id: Ib7a548e6a24d2e02de85ab444c0ec99d8f6b82c3
2013-03-28 17:54:36 +09:00
Jean Chalard
2188cbae63 Merge "Fix an NPE" 2013-03-28 06:56:49 +00:00