Commit graph

96 commits

Author SHA1 Message Date
Amith Yamasani
718e813fbd Fix for #2244624 : Keyboard freezes up sometimes
I think the cause for this is the Contacts database being updated. This
causes the keyboard to reload the contacts once every 30 minutes. Since it
loads it synchronously, it affects people with several thousand contacts.

Although in my tests, with 3000 contacts, the delay was only 600ms, I've
had several reports from long-time googlers about this problem, so I'm
switching to loading the contacts asynchronously in a background thread.

Also fix a potential problem with capitalizing "i" if a contact has "i" as
one of the names.
2009-11-11 18:49:36 -08:00
Amith Yamasani
bf0f4d9c8b Remove dupes from suggestions. Fixes 2213629
Dupes are sometimes generated, especially for names, from Contacts
and main dictionary. Check for dupes before showing suggestions.
2009-10-28 10:53:29 -07:00
Amith Yamasani
8850bdc7e4 Fix for 2170453: Capitalization sticks when entering passwords in Browser
This is caused by a delay in changing the shift state for performance reasons.
The delay was too long, causing multiple characters to be in shifted state when
typing fast (300ms interval).

Fix removes the optimization for the forward typing case. Doesn't affect the
backspace long-press optimization.

Triage: Hiroshi
Dr. No: mcleron
2009-10-12 12:59:34 -07:00
Amith Yamasani
eef539c3f2 Fix a potential IllegalArgumentException caught by monkeys. #2176776
For some reason the key code is outside the code point range. Adding
a safeguard to deal with possible out of range key codes.
2009-10-09 07:03:11 -07:00
Amith Yamasani
b3f6d58b6e Fix for 2148982: Keyboard freezes while typing
Contacts dictionary code was being triggered too frequently during sync and
during presence updates and this seems expensive for accounts with a lot of
contacts.

Throttling the contacts read to every 30 minutes.
2009-10-08 13:06:37 -07:00
Amith Yamasani
12e582c79c Fix 2146178: On-screen keyboard is wider than screen
Sometimes the keyboard is getting confused about it's width when switching
between hard keyboard open and close state and portrait-forced home. Force
creation of keyboard layouts after a configuration change to fix the
inconsistent state.

Don't force create when just switching between input fields, too expensive.

Also fixes the problem of keyboard not changing layout after a locale change,
unless there's an orientation change.
2009-09-30 21:15:47 -07:00
Amith Yamasani
56f96fe05b AI 150810: Fix for 2023252 & 2023256: Turkish accented characters for the keyboard
BUG=2023252,2023256

Automated import of CL 150810
2009-09-30 17:37:51 -07:00
Eric Laurent
2296317b8f Fix issue 2141503: Keyclick sound doesn't honor volume settings.
Align sound effect volume on music volume.
2009-09-29 12:00:38 -07:00
Amith Yamasani
36ebae2e8d Handle new flag NO_SUGGESTIONS and no auto-correct for single-line fields unless requested. Fix: 2030364
Don't show suggestions if NO_SUGGESTIONS flag is specified. And don't do auto-correction unless
explicitly requested or it's a multi-line text.
2009-09-17 11:10:15 -07:00
Amith Yamasani
d9688c77a9 Adjust the size of bottom row of keys for email mode. Fix for 2099889
Also recreate the keyboards when locale changes.
2009-09-08 15:55:17 -07:00
Amith Yamasani
e3803800c5 Fixed accidental switch to symbols mode from alphabet.
The KeyboardSwitcher was remembering state from a previous edittext
where the user was in symbols mode and applying the switch code
when user hits space in the new edittext for the first time.
Make sure to reset the state when a new keyboard mode is requested.

Also make sure that we don't switch from symbols to alphabet keyboard
when editing in a number/datetime field and hitting space.
2009-09-01 14:05:19 -07:00
Amith Yamasani
5d11ccc27d Swipe down gesture to dismiss keyboard. 2009-08-27 17:35:33 -07:00
Dmitri Plotnikov
41fc8f4a18 [Issue 2061094] Upgrading ContactDictionary to new API 2009-08-27 11:24:57 -07:00
Amith Yamasani
6a001f58da Tweak spacebar target area between landscape and portrait. 2009-08-20 18:35:30 -07:00
Amith Yamasani
ffa3fdd819 Keyboard layout improvements.
Increase key height in portrait.
Increase spacebar width and reduce punctuation width.
Increase vertical target area for spacebar to avoid accidentally
   hitting "V" and "B".
Increase height of candidate strip.
2009-08-19 15:16:33 -07:00
Jeff Hamilton
10f1a4d39c Don't crash if the contacts provider returns a null Cursor. 2009-08-18 11:53:22 -05:00
Amith Yamasani
f51d16a4aa Reduce weight of missing-char suggestions. 2009-08-13 18:03:56 -07:00
Brandon Ballinger
71351469e3 Use public SDK APIs for the InputMethodManager and Vibrator. 2009-08-13 18:03:48 -07:00
Amith Yamasani
3263841911 Some performance optimizations.
Makes the user/contacts dictionary lookup faster. This is necessary because
there's more in these dictionaries now and it's written in Java.

Fix an auto-caps issue when moving the cursor. And do it a little lazily.

Fixed a bug that was causing user dictionary words to get a much
higher weightage than the main dictionary.
2009-08-13 18:03:41 -07:00
Amith Yamasani
f115088924 Allow for non-starting letters to be upper case in dictionary lookup.
Add lowercase optimization to user dictionary as well.
2009-08-13 18:03:07 -07:00
Amith Yamasani
81115075d2 Fix a stack overflow when typing long words. Limit the size of auto-added words. 2009-08-13 17:30:57 -07:00
Amith Yamasani
63fa90a791 Check for missing characters in User/Contacts dictionary as well.
Also accomodate for missing characters when doing diffs between words.
2009-08-13 17:29:34 -07:00
Eric Fischer
e5c7f0981d Add check for null contact name when setting up dictionary.
Bug 2021966
2009-08-13 17:28:32 -07:00
Eric Fischer
2bed1531c2 Have the Latin IME also use the names of your contacts as suggestions.
Bug 1597304
2009-08-13 17:27:30 -07:00
Amith Yamasani
d67fe0e758 Improve auto-add heuristics.
Also add auto-switch back to alphabet mode on pressing enter key.
2009-08-13 17:27:12 -07:00
Amith Yamasani
4a7ff90d51 Less aggressive CAPS mode prediction.
Don't auto-correct if the typed word has more than one uppercase letter.
Also, delay applying shift state to the keyboard so that fast backspaces are not interrupted by the
time taken to render the shifted/unshifted keyboard.
Show ellipsis on the ?123 key
2009-08-13 17:26:55 -07:00
Amith Yamasani
b19668cfc1 Auto-switch back from symbols keyboard on space.
Also fix bug 1904029: Rotating keyboard while texting causes words to be deleted.
2009-08-13 17:21:54 -07:00
Amith Yamasani
34386e6988 Auto add new words to the user dictionary.
First pass at automatically adding new words that the user types and deliberately
accepts.
After typing the word 4 times, the word gets promoted to being valid.
After typing the word 7 times, the word gets added into the UserDictionary and can
be removed from the UserDictionary Settings UI.

Also add a second row of symbols to the period popup.
2009-08-13 17:17:58 -07:00
Amith Yamasani
322dc3d3f3 Prune out suggestions that have a very large edit distance.
If the number of keys picked from proximity is too large, prune out
the subtree. Otherwise you get vastly unrelated suggestions.

Fix a bug introduced with the missing_chars checkin.
2009-08-13 17:17:27 -07:00
Amith Yamasani
c3df2d6fd2 Correction algorithm to check for missing single characters.
Searches for alternative words by trying wild-card characters at different
character positions.
2009-08-13 17:16:39 -07:00
Amith Yamasani
ff74ee5825 Backup Latin IME settings shared preferences.
Backup the shared preferences when they change.
2009-07-05 14:12:04 -07:00
Amith Yamasani
6c7c8f5b47 Browser text fields should suggest but not auto correct.
Only if the browser explicitly specifies the AUTO_CORRECT flag, IME will
enable auto correction.
2009-06-04 15:31:01 -07:00
Amith Yamasani
5e8a2fc5d5 Increase sensitivity of spacebar.
Revert the touch target of the spacebar to be the same as other keys.
2009-06-04 12:24:14 -07:00
Amith Yamasani
230cd6f7f2 Fix Bug #1833943 - CapsLock using long-press doesn't update keys.
Use new API in KeyboardView to invalidate all keys on long-press of shift key.
2009-05-06 17:38:00 -07:00
Brandon Ballinger
c5bb4591b6 AI 147900: Set symbols state when setting keyboard in LatinIME [bug fix for 1815418].
BUG=1815418

Automated import of CL 147900
2009-04-28 11:38:42 -07:00
Brandon Ballinger
0221514bd1 AI 147226: Create symbols and shifted symbols keyboards when initializing KeyboardSwitcher.
Automated import of CL 147226
2009-04-21 14:36:33 -07:00
Brandon Ballinger
353da6d207 AI 146596: Re-factor KeyboardSwitcher to keep a map of KeyboardId->Keyboard rather than a separate variable for each configuration. This makes it more maintainable to add more states in the future.
Automated import of CL 146596
2009-04-16 12:56:10 -07:00
Amith Yamasani
73f3cd032d AI 145909: Manual merge of CL 145663 from //branches/cupcake/ to //branches/donutburger/
Added -d to the "g4 integrate" command.

Automated import of CL 145909
2009-04-13 12:27:25 -07:00
Amith Yamasani
6ec55a1599 AI 143780: am: CL 143728 Fix # 1743137: Suggestion bubble doesn't go away after empty space on right end of suggestion strip is tapped.
The empty space on right end sometimes registers as the word at the left end. Fixed this by checking for -1.
  Also fixed a bug where the strip moves in the wrong direction on drag, when it shouldn't move at all.
  Original author: yamasani
  Merged from: //branches/cupcake/...

Automated import of CL 143780
2009-03-31 14:50:26 -07:00
Amith Yamasani
2306c6afcf Automated import from //branches/donutburger/...@142822,142822 2009-03-25 18:08:30 -07:00
Amith Yamasani
6e3d427c32 Automated import from //branches/donutburger/...@142787,142787 2009-03-25 17:39:38 -07:00
Amith Yamasani
808202b60f Automated import from //branches/donutburger/...@142718,142718 2009-03-25 16:58:32 -07:00
Amith Yamasani
a200a9bff7 Automated import from //branches/donutburger/...@140835,140835 2009-03-24 18:40:11 -07:00
Amith Yamasani
5ff5160ff8 Automated import from //branches/donutburger/...@140473,140473 2009-03-24 17:43:19 -07:00
The Android Open Source Project
264b19a685 auto import from //branches/cupcake_rel/...@140373 2009-03-18 17:39:49 -07:00
The Android Open Source Project
923bf41f85 auto import from //branches/cupcake/...@138744 2009-03-13 15:11:42 -07:00