Commit graph

93 commits

Author SHA1 Message Date
Amith Yamasani
fac5dcb5fe Don't apply autotext to the wrong input language.
Since autotext is tied to the display language, if the input lang
is different from the display lang, don't apply autotext.

Bug: 2417495
2010-02-18 11:09:43 -08:00
Amith Yamasani
db84e0318c Remove dependency on google-common library.
Copied the newArrayList method over to LatinIME.
2010-02-17 14:42:51 -08:00
Amith Yamasani
d2a4e90a05 Use transparent keys for extension keyboard. 2010-02-12 06:23:06 -08:00
Ken Wakasa
9a503e07d5 Remove a trailing "auto space" at the end of the line when the user added a new line.
Bug: 2384116
2010-02-12 00:01:02 +09:00
Valentin Kravtsov
7131a5a969 Bug fix for: a spinner is shown on VoiceIME startup
The last change did not solve the bug completely, the spinner was still shown at times when no initialization dialog was shown

Change-Id: I43a5f8df4e333ffb6deb727c3bf45ed7b7a54069
2010-02-11 11:11:33 +00:00
Amith Yamasani
66a787b953 Show a hint when the user selects the typed word from the suggestion list.
Make it easy to add new words by tapping the word again.
Also, a small unbundling fix for vibration duration.
2010-02-10 17:45:35 -08:00
Valentin Kravtsov
0e7cdae045 bug fix: sometimes a spinner is shown on VoiceIME startup
bug: http://b/issue?id=2434331
Change-Id: Ia65d7d92fe4ce212be0323a3b00eb63044d3191b
2010-02-10 16:44:52 +00:00
Valentin Kravtsov
960ea65f3f Adding RecognitionManager.isRecognitionEnabled() check
This CL adds an aformentioned check to decide whether to show the mic button or not.

Change-Id: Idee6978b69777ac3118406219e96340d892c6508
2010-02-10 10:50:11 +00:00
Amith Yamasani
457fdffce4 Change the voice checkboxes into a 3-state list.
Also add a language-switch hint
2010-02-09 15:22:26 -08:00
Amith Yamasani
1b62ff1a3d Increase target size of preferred letters while typing.
This increases the chance of hitting the correct letter when typing a word
that exists in the dictionary, rather than only correct it after the fact.
It is most effective after 2 or 3 letters of a word have been typed and gets
more accurate with more typed letters in the word.

If 2 adjacent letters have similar probabilities of occuring, then there is no
hit correction applied.
2010-02-08 15:22:37 -08:00
Leon Scroggins
8fa317a61a Send KeyEvents for Tab.
Needed for http://b/issue?id=2414236
2010-02-08 13:09:35 -05:00
Amith Yamasani
676fb5b665 Use title-case for language name on spacebar, even for the abbrev.
And fix a bug in opening keyboard settings when Voice is not available.
2010-02-05 16:24:40 -08:00
Kristian Monsen
4a29e9fdea Merge "fixing ime crash in emulator" 2010-02-05 10:42:14 -08:00
Valentin Kravtsov
c2a862a17b Adding VoiceIME support for the modified RecognitionManager
Now there is a delay each time the voice recognition screen is opened, however, this is the correct behavior as microphone setup takes about 600ms.
The previous implementation, although being fast, was not actually recording the first 1/2 second of user's speech.

Change-Id: I8b8373a59658502f7451150ff4a4ffd1c8e83205
2010-02-05 14:14:37 +00:00
Kristian Monsen
1322b7f899 fixing ime crash in emulator
Just guarding some calls with if (VOICE_INSTALLED). Also added an &, probably a typo.
2010-02-05 12:11:59 +00:00
Mike LeBeau
2e3aa86cf3 Add additional language information to FieldContext used for voice input.
This will allow us to choose the right voice input language for the user
on the VoiceSearch side.
2010-02-04 19:43:44 -08:00
Eric Fischer
30a7315878 Merge "Capitalize the names of languages in the dictionary picker." 2010-02-04 10:37:37 -08:00
Eric Fischer
6fd70d9259 Capitalize the names of languages in the dictionary picker.
Bug 2417503
2010-02-03 17:32:56 -08:00
Amith Yamasani
6a6075caba Suggest punctuations between word suggestions, for easy access to ?,!, etc.
Also fix a visual bug with the dividers between suggested words.
2010-02-03 15:55:12 -08:00
Amith Yamasani
f892861b7b Try again to set the correct bounds.
Forgot to upload this patchset in my last checkin.
2010-02-02 13:04:06 -08:00
Amith Yamasani
cc03f196ad Updated some keyboard assets.
Let the arrows obscure the sliding language text to create the fade effect.
Initialize the preview icon bounds.
2010-02-02 10:42:32 -08:00
Amith Yamasani
3f7d75060a Language switching with slide gesture on spacebar. Bug: 2331173
Shows the language on the spacebar and in the preview bubble. Allows
dragging of the spacebar from side to side to switch to previous or
next languages.
2010-02-01 09:49:24 -08:00
Ken Wakasa
41a5197295 Make the ".com" key input smarter if there's already '.' at the end of the previous text.
Bug: 2306114
2010-02-01 01:40:59 +09:00
Maryam Garrett
8600725789 Use de-duped version on LoggingEvents now in android-common.
This CL now simply moves LatinIME to use the version of
LoggingEvents in android-common, rather than duplicating
the LoggingEvents class between VoiceSearch, Browser, and
LatinIME.

I also added in a TIMESTAMP to the START broadcast, so that
we would be able to evaluate if various events happened
after a user tried  Voice Input.

Change-Id: Ic88ff40fcedf707abc3c5eb2e68dfd0fcdef3701
2010-01-29 12:40:13 -05:00
Amith Yamasani
b8f98ad014 Fix a crash when starting up LatinIME or changing orientation. Bug:2403575 2010-01-28 12:35:29 -08:00
Doug Zongker
a16ff1b19e remove references to Gservices from LatinIME
Open-sourced platform code shouldn't refer to Gservices.  Use the
platform-standard Secure settings table instead (which we can still
push values into from the servers on google-experience devices, like
gservices), but can be populated by other mechanisms for non-ged
phones.

Change-Id: Id0b5830bfc78c1d10dc732dce46546cd09cd1422
2010-01-28 10:09:44 -08:00
Amith Yamasani
b1cd701602 Setting to move microphone to secondary keyboard.
Microphone button can be optionally moved to the symbols keyboard
to get your comma back. You can also completely disable voice input.

Now you can get your comma back but still use the swipe gesture to
activate voice input.
2010-01-28 07:33:27 -08:00
Amith Yamasani
7a722cbfc8 Unbundling phase 1.
Removed dependency on mScrollX which is a hidden field.
Added some required static libraries.

TODO: When BackupManager is ready, make sure we don't use any private
APIs from there.
2010-01-27 17:29:35 -08:00
Amith Yamasani
cf02653097 New keyboard layout for bottom row.
Additional mode for WEB_EDIT fields w/Tab key for next field.
Button assets refresh and fix for a highlight asset bug.
2010-01-27 14:03:42 -08:00
Valentin Kravtsov
16668d952f Adding VoiceIME support for new RecognitionManager interface
Change-Id: I14506149def2f5b47fa2697aef49ff5cd41b64a8
2010-01-26 10:17:39 +00:00
Amith Yamasani
359f168161 Fix for #2373295 : Capitalize suggestions when typing a capitalized word.
When the user starts typing a word with a capital, whether automatically due
to sentence beginning or since the user pressed shift, then all suggestions
presented are capitalized as well, to be more WYSIWYG.
2010-01-25 15:27:43 -08:00
Mike LeBeau
440d1fd333 Merge "Put the LoggingEvents class in sync with latest - adds some VoiceSearch events which won't be used by LatinIME." 2010-01-25 10:28:59 -08:00
Mike LeBeau
053a3feae1 Put the LoggingEvents class in sync with latest - adds some VoiceSearch
events which won't be used by LatinIME.
2010-01-25 12:02:11 -05:00
Amith Yamasani
1c55125110 Auto-added words will only be capitalized if user intended to. #2373284
If a user creates a new word at the beginning of a sentence, then don't
add it as a capitalized word in the dictionary.
2010-01-24 07:34:07 -08:00
Amith Yamasani
8eb2e34d5b Enable language switching with long-press of space bar.
This is a temporary solution until slide-on-space is implemented.
2010-01-22 13:57:20 -08:00
Mike LeBeau
d856450612 Reintroduce Amith's memory leak fix from 388ce92ab8,
after it was clobbered by my overwrite of LatinIME with the voice version.
2010-01-17 16:55:56 -05:00
Mike LeBeau
466741d8a7 Migrate voice features into the open-source LatinIME. This includes
the change to logging to remove any private dependencies and use
broadcast intents to VoiceSearch instead.

I have audited this code and it appears good to go for open-source,
but would appreciate a second pair of eyes.

Still to do after submitting this CL:

* Reintroduce Amith's memory leak fix (37557) which was the only CL
  added to LatinIME since the last merge over to the private copy.
* Make some changes to allow LatinIME to work without voice search
  installed. Currently I believe it will show the mic but fail if
  you press it. We need to base the visibility on the mic on the
  availability of the service.
* Fix this code to use the new Gservices framework, it's still trying
  to use the old one.
2010-01-17 02:42:58 -05:00
Amith Yamasani
388ce92ab8 Fixed a memory leak that happens when switching input languages. 2010-01-15 13:43:50 -08:00
Amith Yamasani
e8f1edefeb Enable auto-correction only if there is a significant size main dictionary.
Added e-umlaut popup for Russian keyboard.
Added a French Canadian string resource but wont help until we add fr_CA to
the supported locales list.
2009-12-18 14:32:48 -08:00
Amith Yamasani
6a442663d6 Fix for auto-add and reduced auto-add threshold. Bug: 2332071
Fixed the regression of auto-add.

Reduced the threshold of auto-add (to accept) to 2 times.
Reduced the threshold of auto-add (to suggest) to 4 times.
2009-12-16 19:21:11 -08:00
Amith Yamasani
36fcf25833 Input language switching. Bug: 2331173
New feature to enable fast switching between input languages for
multilingual users. Keyboard settings lets you select a bunch of
languages to switch between from the Latin IME.

Use the Globe icon to toggle between languages.

Needs more work and some layout changes in specialized keyboards.

Also added a Russian keyboard (needs some pixel TLC at the right edge).
2009-12-16 17:48:23 -08:00
Amith Yamasani
358e485b14 Experimental Extension keyboard
Slide up on keyboard to get an extended keyboard for numbers and
punctuations. This is work in progress...
2009-12-08 14:35:37 -08:00
Amith Yamasani
24c1ff4993 am 5b63c38d: Fix 2306814: Too aggressive suggesting names from my contacts list.
Merge commit '5b63c38d1fc9e42348a8a90edf8dce6103f72864' into eclair-mr2

* commit '5b63c38d1fc9e42348a8a90edf8dce6103f72864':
  Fix 2306814: Too aggressive suggesting names from my contacts list.
2009-12-08 10:07:42 -08:00
Amith Yamasani
5b63c38d1f Fix 2306814: Too aggressive suggesting names from my contacts list.
When there is more than one instance of a name in the Contacts, it
gets a very high weightage and can override corrections for very
high frequency words such as "the".

This fix prevents multiple occurences from increasing the frequency
of a contact and also from bumping it above 255, which is the frequency
of "the", "is", etc.
2009-12-07 11:42:09 -08:00
Amith Yamasani
82c68bfbfc Fix for 2305181: "shift A shift M" quickly gives Am instead of AM
There was a delayed changing of keyboard to lowercase after typing
a shifted letter that was triggering after the user pressed shift
again. Removed the delayed message when user hits shift.
2009-12-04 11:58:57 -08:00
Amith Yamasani
bb6f9146f1 DO NOT MERGE: Fix for 2295810: Auto-correction of English results in Englishman
Comparisons were always happening with lowercase version of the typed
word, which wouldn't match the uppercase word in the dictionary, so it
became an unrecognized word when typed in full. Highlight was then going
to the next word in the list.

Fix compares the lowercase and uppercase versions of the word for
validity.

Merge from eclair-mr2
2009-12-02 16:43:21 -08:00
Amith Yamasani
f590a49739 Fix for 2295810: Auto-correction of English results in Englishman
Comparisons were always happening with lowercase version of the typed
word, which wouldn't match the uppercase word in the dictionary, so it
became an unrecognized word when typed in full. Highlight was then going
to the next word in the list.

Fix compares the lowercase and uppercase versions of the word for
validity.
2009-12-01 11:44:22 -08:00
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