aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--java/res/values-cs/strings.xml2
-rw-r--r--java/res/values-da/strings.xml2
-rw-r--r--java/res/values-de/strings.xml2
-rw-r--r--java/res/values-el/strings.xml2
-rw-r--r--java/res/values-es-rUS/strings.xml2
-rw-r--r--java/res/values-es/strings.xml2
-rw-r--r--java/res/values-fr/strings.xml2
-rw-r--r--java/res/values-it/strings.xml2
-rw-r--r--java/res/values-ja/strings.xml2
-rw-r--r--java/res/values-ko/strings.xml2
-rw-r--r--java/res/values-nb/strings.xml2
-rw-r--r--java/res/values-nl/strings.xml2
-rw-r--r--java/res/values-pl/strings.xml2
-rw-r--r--java/res/values-pt-rPT/strings.xml2
-rw-r--r--java/res/values-pt/strings.xml2
-rw-r--r--java/res/values-rm/strings.xml4
-rw-r--r--java/res/values-ru/strings.xml2
-rw-r--r--java/res/values-sv/strings.xml2
-rw-r--r--java/res/values-tr/strings.xml2
-rw-r--r--java/res/values-xlarge/bools.xml23
-rw-r--r--java/res/values-xlarge/dimens.xml26
-rw-r--r--java/res/values-zh-rCN/strings.xml2
-rw-r--r--java/res/values-zh-rTW/strings.xml2
-rw-r--r--java/res/values/strings.xml2
-rw-r--r--java/res/xml/method.xml111
-rw-r--r--java/res/xml/prefs.xml9
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java16
-rw-r--r--java/src/com/android/inputmethod/voice/VoiceInput.java16
-rw-r--r--java/src/com/android/inputmethod/voice/VoiceInputLogger.java15
29 files changed, 195 insertions, 67 deletions
diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml
index 55f4a661d..1269658dd 100644
--- a/java/res/values-cs/strings.xml
+++ b/java/res/values-cs/strings.xml
@@ -138,8 +138,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 dbadd930b..ff9dec5f5 100644
--- a/java/res/values-da/strings.xml
+++ b/java/res/values-da/strings.xml
@@ -138,8 +138,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 7147adca3..d00a7d1d0 100644
--- a/java/res/values-de/strings.xml
+++ b/java/res/values-de/strings.xml
@@ -138,8 +138,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 b53301c3f..7f5c1f761 100644
--- a/java/res/values-el/strings.xml
+++ b/java/res/values-el/strings.xml
@@ -138,8 +138,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 9244e71f9..068555a9d 100644
--- a/java/res/values-es-rUS/strings.xml
+++ b/java/res/values-es-rUS/strings.xml
@@ -138,8 +138,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 4f9d45b3a..0fdb509fb 100644
--- a/java/res/values-es/strings.xml
+++ b/java/res/values-es/strings.xml
@@ -138,8 +138,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 a3e419594..56643bc88 100644
--- a/java/res/values-fr/strings.xml
+++ b/java/res/values-fr/strings.xml
@@ -138,8 +138,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 7c42fa467..c1d44bc22 100644
--- a/java/res/values-it/strings.xml
+++ b/java/res/values-it/strings.xml
@@ -138,8 +138,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 06923899d..c5757597b 100644
--- a/java/res/values-ja/strings.xml
+++ b/java/res/values-ja/strings.xml
@@ -138,8 +138,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 9dfd3efa5..b61285253 100644
--- a/java/res/values-ko/strings.xml
+++ b/java/res/values-ko/strings.xml
@@ -138,8 +138,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 debc644f9..53eeab9f1 100644
--- a/java/res/values-nb/strings.xml
+++ b/java/res/values-nb/strings.xml
@@ -138,8 +138,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 542a1846a..8e33a3463 100644
--- a/java/res/values-nl/strings.xml
+++ b/java/res/values-nl/strings.xml
@@ -138,8 +138,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 ac9d06f29..a4b5210b9 100644
--- a/java/res/values-pl/strings.xml
+++ b/java/res/values-pl/strings.xml
@@ -138,8 +138,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 4c6a2ceb0..2fd97f0d9 100644
--- a/java/res/values-pt-rPT/strings.xml
+++ b/java/res/values-pt-rPT/strings.xml
@@ -138,8 +138,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 14d519921..88f2ce151 100644
--- a/java/res/values-pt/strings.xml
+++ b/java/res/values-pt/strings.xml
@@ -138,8 +138,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 c32a2efa9..f30b41fa2 100644
--- a/java/res/values-rm/strings.xml
+++ b/java/res/values-rm/strings.xml
@@ -140,6 +140,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 448c8e2ad..dabbf036d 100644
--- a/java/res/values-ru/strings.xml
+++ b/java/res/values-ru/strings.xml
@@ -138,8 +138,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 2df9c696f..397672884 100644
--- a/java/res/values-sv/strings.xml
+++ b/java/res/values-sv/strings.xml
@@ -138,8 +138,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 fb48fb02b..1dc55a777 100644
--- a/java/res/values-tr/strings.xml
+++ b/java/res/values-tr/strings.xml
@@ -138,8 +138,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 d38490c4d..fd37c2bd6 100644
--- a/java/res/values-zh-rCN/strings.xml
+++ b/java/res/values-zh-rCN/strings.xml
@@ -138,8 +138,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 6a6f37efb..0ef399e85 100644
--- a/java/res/values-zh-rTW/strings.xml
+++ b/java/res/values-zh-rTW/strings.xml
@@ -138,8 +138,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 09521146f..1bcd6feb1 100644
--- a/java/res/values/strings.xml
+++ b/java/res/values/strings.xml
@@ -29,7 +29,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 b4d2d903d..be484b28f 100644
--- a/java/res/xml/prefs.xml
+++ b/java/res/xml/prefs.xml
@@ -105,6 +105,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 76f774c96..1bcebba7d 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
@@ -193,8 +193,7 @@ public class LatinIME extends InputMethodService
private boolean mAutoSpace;
private boolean mJustAddedAutoSpace;
private boolean mAutoCorrectEnabled;
- // 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;
@@ -1726,13 +1725,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();
@@ -2350,8 +2349,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));
}