diff options
29 files changed, 197 insertions, 69 deletions
diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml index b398ce80d..29b0faf77 100644 --- a/java/res/values-cs/strings.xml +++ b/java/res/values-cs/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-da/strings.xml b/java/res/values-da/strings.xml index 0751c67db..47397e103 100644 --- a/java/res/values-da/strings.xml +++ b/java/res/values-da/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-de/strings.xml b/java/res/values-de/strings.xml index a7be8fd34..3353e5651 100644 --- a/java/res/values-de/strings.xml +++ b/java/res/values-de/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-el/strings.xml b/java/res/values-el/strings.xml index 6e6f3a754..fd2e02a14 100644 --- a/java/res/values-el/strings.xml +++ b/java/res/values-el/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-es-rUS/strings.xml b/java/res/values-es-rUS/strings.xml index 54ec3b94c..27589fb44 100644 --- a/java/res/values-es-rUS/strings.xml +++ b/java/res/values-es-rUS/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml index fe8578bc0..e5c69e47f 100644 --- a/java/res/values-es/strings.xml +++ b/java/res/values-es/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-fr/strings.xml b/java/res/values-fr/strings.xml index f5d18edf4..9d4d1be0d 100644 --- a/java/res/values-fr/strings.xml +++ b/java/res/values-fr/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-it/strings.xml b/java/res/values-it/strings.xml index f710ca7fe..30cb2a3a6 100644 --- a/java/res/values-it/strings.xml +++ b/java/res/values-it/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-ja/strings.xml b/java/res/values-ja/strings.xml index e2d6e2629..6a5d643e8 100644 --- a/java/res/values-ja/strings.xml +++ b/java/res/values-ja/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-ko/strings.xml b/java/res/values-ko/strings.xml index 1e06e15ec..cf9ebc8d8 100644 --- a/java/res/values-ko/strings.xml +++ b/java/res/values-ko/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-nb/strings.xml b/java/res/values-nb/strings.xml index 5666521e4..be0dcebaa 100644 --- a/java/res/values-nb/strings.xml +++ b/java/res/values-nb/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index b45587d72..afc66af08 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-pl/strings.xml b/java/res/values-pl/strings.xml index 6417cd94a..1a2715b80 100644 --- a/java/res/values-pl/strings.xml +++ b/java/res/values-pl/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-pt-rPT/strings.xml b/java/res/values-pt-rPT/strings.xml index 63259bc5e..886dd67c3 100644 --- a/java/res/values-pt-rPT/strings.xml +++ b/java/res/values-pt-rPT/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-pt/strings.xml b/java/res/values-pt/strings.xml index 734dc9cd5..ee1340aba 100644 --- a/java/res/values-pt/strings.xml +++ b/java/res/values-pt/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-rm/strings.xml b/java/res/values-rm/strings.xml index 91dbf72ff..08c397202 100644 --- a/java/res/values-rm/strings.xml +++ b/java/res/values-rm/strings.xml @@ -130,6 +130,8 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> + <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> + <skip /> + <!-- no translation found for subtype_mode_voice (4394113125441627771) --> <skip /> </resources> diff --git a/java/res/values-ru/strings.xml b/java/res/values-ru/strings.xml index 11371f8b1..f225bee46 100644 --- a/java/res/values-ru/strings.xml +++ b/java/res/values-ru/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-sv/strings.xml b/java/res/values-sv/strings.xml index 44ae2697d..5652ee479 100644 --- a/java/res/values-sv/strings.xml +++ b/java/res/values-sv/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-tr/strings.xml b/java/res/values-tr/strings.xml index d5ed22597..6d6b48388 100644 --- a/java/res/values-tr/strings.xml +++ b/java/res/values-tr/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-xlarge/bools.xml b/java/res/values-xlarge/bools.xml new file mode 100644 index 000000000..fe8fc5838 --- /dev/null +++ b/java/res/values-xlarge/bools.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** +** Copyright 2010, The Android Open Source Project +** +** Licensed under the Apache License, Version 2.0 (the "License"); +** you may not use this file except in compliance with the License. +** You may obtain a copy of the License at +** +** http://www.apache.org/licenses/LICENSE-2.0 +** +** Unless required by applicable law or agreed to in writing, software +** distributed under the License is distributed on an "AS IS" BASIS, +** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +** See the License for the specific language governing permissions and +** limitations under the License. +*/ +--> +<resources> + <!-- Whether or not Popup on key press is enabled by default --> + <bool name="default_popup_preview">false</bool> +</resources> diff --git a/java/res/values-xlarge/dimens.xml b/java/res/values-xlarge/dimens.xml new file mode 100644 index 000000000..4e1c52877 --- /dev/null +++ b/java/res/values-xlarge/dimens.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** +** Copyright 2010, The Android Open Source Project +** +** Licensed under the Apache License, Version 2.0 (the "License"); +** you may not use this file except in compliance with the License. +** You may obtain a copy of the License at +** +** http://www.apache.org/licenses/LICENSE-2.0 +** +** Unless required by applicable law or agreed to in writing, software +** distributed under the License is distributed on an "AS IS" BASIS, +** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +** See the License for the specific language governing permissions and +** limitations under the License. +*/ +--> + +<resources> + <dimen name="key_height">72dip</dimen> + <dimen name="candidate_strip_height">46dip</dimen> + <dimen name="spacebar_vertical_correction">0dip</dimen> + <dimen name="key_text_size">35sp</dimen> +</resources> diff --git a/java/res/values-zh-rCN/strings.xml b/java/res/values-zh-rCN/strings.xml index 3cfd59996..8e49da897 100644 --- a/java/res/values-zh-rCN/strings.xml +++ b/java/res/values-zh-rCN/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values-zh-rTW/strings.xml b/java/res/values-zh-rTW/strings.xml index 3f9781154..a9d37998a 100644 --- a/java/res/values-zh-rTW/strings.xml +++ b/java/res/values-zh-rTW/strings.xml @@ -128,8 +128,6 @@ <skip /> <!-- no translation found for keyboard_layout (437433231038683666) --> <skip /> - <!-- no translation found for prefs_debug_mode (3889340783846594980) --> - <skip /> <!-- no translation found for subtype_mode_keyboard (2242090416595003881) --> <skip /> <!-- no translation found for subtype_mode_voice (4394113125441627771) --> diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index 56dceef2d..f9bb54881 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -31,7 +31,7 @@ <!-- Option to play back sound on keypress in soft keyboard --> <string name="sound_on_keypress">Sound on keypress</string> - <!-- Option to pop up the character with a larger font above soft keyboard --> + <!-- Option to control whether or not to show a popup with a larger font on each key press. --> <string name="popup_on_keypress">Popup on keypress</string> <!-- Option to enable using nearby keys when correcting/predicting --> diff --git a/java/res/xml/method.xml b/java/res/xml/method.xml index e5654e96d..fab4bd72b 100644 --- a/java/res/xml/method.xml +++ b/java/res/xml/method.xml @@ -20,7 +20,114 @@ <!-- The attributes in this XML file provide configuration information --> <!-- for the Input Method Manager. --> +<!-- cs, da, de, en, es, fr, it, iw, nb, nl, ru, sr, sv --> +<!-- TODO: use <lang>_keyboard icon instead of a common keyboard icon. --> +<!-- TODO: use <lang>_mic icon instead of a common mic icon. --> <input-method xmlns:android="http://schemas.android.com/apk/res/android" android:settingsActivity="com.android.inputmethod.latin.LatinIMESettings" - android:isDefault="@bool/im_is_default" -/> + android:isDefault="@bool/im_is_default"> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="cs" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="da" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="de" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="en" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="es" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="fr" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="it" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="iw" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="nb" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="nl" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="ru" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="sr" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_keyboard" + android:imeSubtypeLocale="sv" + android:imeSubtypeMode="@string/subtype_mode_keyboard" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="cs" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="da" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="de" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="en" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="es" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="fr" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="it" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="iw" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="nb" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="nl" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="ru" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="sr" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> + <subtype android:icon="@drawable/ic_subtype_mic" + android:imeSubtypeLocale="sv" + android:imeSubtypeMode="@string/subtype_mode_voice" + /> +</input-method> diff --git a/java/res/xml/prefs.xml b/java/res/xml/prefs.xml index a554ad27b..60824b9a3 100644 --- a/java/res/xml/prefs.xml +++ b/java/res/xml/prefs.xml @@ -51,13 +51,13 @@ android:defaultValue="true" /> - <!-- <CheckBoxPreference + <CheckBoxPreference android:key="enable_logging" android:title="@string/prefs_enable_log" android:summary="@string/prefs_description_log" android:persistent="true" android:defaultValue="false" - />--> + /> <ListPreference android:key="settings_key" @@ -121,6 +121,15 @@ android:defaultValue="@bool/enable_autocorrect" android:dependency="show_suggestions" /> + + <CheckBoxPreference + android:key="bigram_suggestion" + android:title="@string/bigram_suggestion" + android:summary="@string/bigram_suggestion_summary" + android:persistent="true" + android:defaultValue="true" + android:dependency="auto_complete" + /> </PreferenceCategory> </PreferenceScreen> diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 2c0b80961..64f3b8746 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -94,7 +94,7 @@ public class LatinIME extends InputMethodService private static final String PREF_QUICK_FIXES = "quick_fixes"; private static final String PREF_SHOW_SUGGESTIONS = "show_suggestions"; private static final String PREF_AUTO_COMPLETE = "auto_complete"; - //private static final String PREF_BIGRAM_SUGGESTIONS = "bigram_suggestion"; + private static final String PREF_BIGRAM_SUGGESTIONS = "bigram_suggestion"; private static final String PREF_VOICE_MODE = "voice_mode"; // Whether or not the user has used voice input before (and thus, whether to show the @@ -190,8 +190,7 @@ public class LatinIME extends InputMethodService private boolean mJustAddedAutoSpace; private boolean mAutoCorrectEnabled; private boolean mReCorrectionEnabled; - // Bigram Suggestion is disabled in this version. - private final boolean mBigramSuggestionEnabled = false; + private boolean mBigramSuggestionEnabled; private boolean mAutoCorrectOn; // TODO move this state variable outside LatinIME private boolean mCapsLock; @@ -1815,13 +1814,13 @@ public class LatinIME extends InputMethodService } public void pickSuggestionManually(int index, CharSequence suggestion) { - if (mAfterVoiceInput && mShowingVoiceSuggestions) mVoiceInput.logNBestChoose(index); List<CharSequence> suggestions = mCandidateView.getSuggestions(); - - if (mAfterVoiceInput && !mShowingVoiceSuggestions) { + if (mAfterVoiceInput && mShowingVoiceSuggestions) { mVoiceInput.flushAllTextModificationCounters(); // send this intent AFTER logging any prior aggregated edits. - mVoiceInput.logTextModifiedByChooseSuggestion(suggestion.length()); + mVoiceInput.logTextModifiedByChooseSuggestion(suggestion.toString(), index, + mWordSeparators, + getCurrentInputConnection()); } final boolean correcting = TextEntryState.isCorrecting(); @@ -2449,8 +2448,7 @@ public class LatinIME extends InputMethodService } mAutoCorrectEnabled = sp.getBoolean(PREF_AUTO_COMPLETE, mResources.getBoolean(R.bool.enable_autocorrect)) & mShowSuggestions; - //mBigramSuggestionEnabled = sp.getBoolean( - // PREF_BIGRAM_SUGGESTIONS, true) & mShowSuggestions; + mBigramSuggestionEnabled = sp.getBoolean(PREF_BIGRAM_SUGGESTIONS, true) & mShowSuggestions; updateCorrectionMode(); updateAutoTextEnabled(mResources.getConfiguration().locale); mLanguageSwitcher.loadLocales(sp); diff --git a/java/src/com/android/inputmethod/voice/VoiceInput.java b/java/src/com/android/inputmethod/voice/VoiceInput.java index f24c180d0..4c54dd3c5 100644 --- a/java/src/com/android/inputmethod/voice/VoiceInput.java +++ b/java/src/com/android/inputmethod/voice/VoiceInput.java @@ -16,6 +16,7 @@ package com.android.inputmethod.voice; +import com.android.inputmethod.latin.EditingUtil; import com.android.inputmethod.latin.R; import android.content.ContentResolver; @@ -30,6 +31,7 @@ import android.speech.RecognitionListener; import android.speech.SpeechRecognizer; import android.speech.RecognizerIntent; import android.util.Log; +import android.view.inputmethod.InputConnection; import android.view.View; import android.view.View.OnClickListener; @@ -423,8 +425,14 @@ public class VoiceInput implements OnClickListener { mLogger.textModifiedByTypingDeletion(length); } - public void logTextModifiedByChooseSuggestion(int length) { - mLogger.textModifiedByChooseSuggestion(length); + public void logTextModifiedByChooseSuggestion(String suggestion, int index, + String wordSeparators, InputConnection ic) { + EditingUtil.Range range = new EditingUtil.Range(); + String wordToBeReplaced = EditingUtil.getWordAtCursor(ic, wordSeparators, range); + // If we enable phrase-based alternatives, only send up the first word + // in suggestion and wordToBeReplaced. + mLogger.textModifiedByChooseSuggestion(suggestion.length(), wordToBeReplaced.length(), + index, wordToBeReplaced, suggestion); } public void logKeyboardWarningDialogShown() { @@ -455,10 +463,6 @@ public class VoiceInput implements OnClickListener { mLogger.voiceInputDelivered(length); } - public void logNBestChoose(int index) { - mLogger.nBestChoose(index); - } - public void logInputEnded() { mLogger.inputEnded(); } diff --git a/java/src/com/android/inputmethod/voice/VoiceInputLogger.java b/java/src/com/android/inputmethod/voice/VoiceInputLogger.java index 9d3a92037..4d50f5ee8 100644 --- a/java/src/com/android/inputmethod/voice/VoiceInputLogger.java +++ b/java/src/com/android/inputmethod/voice/VoiceInputLogger.java @@ -178,20 +178,19 @@ public class VoiceInputLogger { mContext.sendBroadcast(i); } - public void textModifiedByChooseSuggestion(int length) { + public void textModifiedByChooseSuggestion(int suggestionLength, int replacedPhraseLength, + int index, String before, String after) { Intent i = newLoggingBroadcast(LoggingEvents.VoiceIme.TEXT_MODIFIED); - i.putExtra(LoggingEvents.VoiceIme.EXTRA_TEXT_MODIFIED_LENGTH, length); + i.putExtra(LoggingEvents.VoiceIme.EXTRA_TEXT_MODIFIED_LENGTH, suggestionLength); + i.putExtra(LoggingEvents.VoiceIme.EXTRA_TEXT_REPLACED_LENGTH, replacedPhraseLength); i.putExtra(LoggingEvents.VoiceIme.EXTRA_TEXT_MODIFIED_TYPE, LoggingEvents.VoiceIme.TEXT_MODIFIED_TYPE_CHOOSE_SUGGESTION); - mContext.sendBroadcast(i); - } - - public void nBestChoose(int index) { - Intent i = newLoggingBroadcast(LoggingEvents.VoiceIme.N_BEST_CHOOSE); i.putExtra(LoggingEvents.VoiceIme.EXTRA_N_BEST_CHOOSE_INDEX, index); + i.putExtra(LoggingEvents.VoiceIme.EXTRA_BEFORE_N_BEST_CHOOSE, before); + i.putExtra(LoggingEvents.VoiceIme.EXTRA_AFTER_N_BEST_CHOOSE, after); mContext.sendBroadcast(i); } - + public void inputEnded() { mContext.sendBroadcast(newLoggingBroadcast(LoggingEvents.VoiceIme.INPUT_ENDED)); } |