diff --git a/java/res/drawable-hdpi/btn_candidate_pressed.9.png b/java/res/drawable-hdpi/btn_suggestion_pressed.9.png similarity index 100% rename from java/res/drawable-hdpi/btn_candidate_pressed.9.png rename to java/res/drawable-hdpi/btn_suggestion_pressed.9.png diff --git a/java/res/drawable-hdpi/candidate_feedback_background.9.png b/java/res/drawable-hdpi/suggestion_feedback_background.9.png similarity index 100% rename from java/res/drawable-hdpi/candidate_feedback_background.9.png rename to java/res/drawable-hdpi/suggestion_feedback_background.9.png diff --git a/java/res/drawable-mdpi/btn_candidate_pressed.9.png b/java/res/drawable-mdpi/btn_suggestion_pressed.9.png similarity index 100% rename from java/res/drawable-mdpi/btn_candidate_pressed.9.png rename to java/res/drawable-mdpi/btn_suggestion_pressed.9.png diff --git a/java/res/drawable-mdpi/candidate_feedback_background.9.png b/java/res/drawable-mdpi/suggestion_feedback_background.9.png similarity index 100% rename from java/res/drawable-mdpi/candidate_feedback_background.9.png rename to java/res/drawable-mdpi/suggestion_feedback_background.9.png diff --git a/java/res/drawable-xhdpi/btn_candidate_pressed.9.png b/java/res/drawable-xhdpi/btn_suggestion_pressed.9.png similarity index 100% rename from java/res/drawable-xhdpi/btn_candidate_pressed.9.png rename to java/res/drawable-xhdpi/btn_suggestion_pressed.9.png diff --git a/java/res/drawable-xhdpi/candidate_feedback_background.9.png b/java/res/drawable-xhdpi/suggestion_feedback_background.9.png similarity index 100% rename from java/res/drawable-xhdpi/candidate_feedback_background.9.png rename to java/res/drawable-xhdpi/suggestion_feedback_background.9.png diff --git a/java/res/drawable/btn_candidate.xml b/java/res/drawable/btn_suggestion.xml similarity index 86% rename from java/res/drawable/btn_candidate.xml rename to java/res/drawable/btn_suggestion.xml index efcee9f54bbabbd6e5eec0315c758cdd9e0276ac..cde12fe552c6e9b9c9aa9cf7724d42a10a98c8ed 100644 --- a/java/res/drawable/btn_candidate.xml +++ b/java/res/drawable/btn_suggestion.xml @@ -2,7 +2,7 @@ <!-- /* ** -** Copyright 2010, The Android Open Source Project +** Copyright 2011, 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. @@ -23,5 +23,5 @@ > <item android:state_pressed="true" - android:drawable="@drawable/btn_candidate_pressed" /> + android:drawable="@drawable/btn_suggestion_pressed" /> </selector> diff --git a/java/res/drawable/btn_candidate_ics.xml b/java/res/drawable/btn_suggestion_ics.xml similarity index 100% rename from java/res/drawable/btn_candidate_ics.xml rename to java/res/drawable/btn_suggestion_ics.xml diff --git a/java/res/layout/input_view.xml b/java/res/layout/input_view.xml index 821082f916628c68bba4296767350bb5c1abb4f2..328469517cbf8bd447ec7daa1fe7a6942f338c9c 100644 --- a/java/res/layout/input_view.xml +++ b/java/res/layout/input_view.xml @@ -25,55 +25,34 @@ android:layout_width="match_parent" android:layout_height="wrap_content" > - <!-- On tablets, the candidate strip is centered with horizontal paddings on both sides because - width of the landscape mode is too long for the candidate strip. This LinearLayout is - required to hold the paddings. --> + <!-- On tablets, the suggestions strip is centered with horizontal paddings on both sides + because width of the landscape mode is too long for the suggestions strip. This + LinearLayout is required to hold the paddings. --> <LinearLayout - android:id="@+id/candidates_container" + android:id="@+id/suggestions_container" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" - android:minHeight="@dimen/candidate_strip_minimum_height" + android:minHeight="@dimen/suggestions_strip_minimum_height" android:gravity="bottom" > <View - android:layout_width="@dimen/candidate_strip_padding" - android:layout_height="@dimen/candidate_strip_height" + android:layout_width="@dimen/suggestions_strip_padding" + android:layout_height="@dimen/suggestions_strip_height" style="?attr/suggestionsStripBackgroundStyle" /> - <com.android.inputmethod.latin.CandidateView - android:id="@+id/candidates" + <com.android.inputmethod.latin.SuggestionsView + android:id="@+id/suggestions_view" android:layout_weight="1.0" android:layout_width="0dp" - android:layout_height="@dimen/candidate_strip_height" + android:layout_height="@dimen/suggestions_strip_height" android:gravity="center_vertical" - style="?attr/candidateViewStyle" /> + style="?attr/suggestionsViewStyle" /> <View - android:layout_width="@dimen/candidate_strip_padding" - android:layout_height="@dimen/candidate_strip_height" + android:layout_width="@dimen/suggestions_strip_padding" + android:layout_height="@dimen/suggestions_strip_height" style="?attr/suggestionsStripBackgroundStyle" /> </LinearLayout> - <LinearLayout - android:id="@+id/candidates_pane_container" - android:orientation="horizontal" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:visibility="gone" - style="?attr/suggestionsStripBackgroundStyle" - > - <View - android:layout_width="@dimen/candidate_strip_padding" - android:layout_height="@dimen/candidate_strip_height" /> - <FrameLayout - android:id="@+id/candidates_pane" - android:layout_weight="1.0" - android:layout_width="0dp" - android:layout_height="match_parent" /> - <View - android:layout_width="@dimen/candidate_strip_padding" - android:layout_height="@dimen/candidate_strip_height" /> - </LinearLayout> - <com.android.inputmethod.keyboard.LatinKeyboardView android:id="@+id/keyboard_view" android:layout_alignParentBottom="true" diff --git a/java/res/layout/more_suggestions.xml b/java/res/layout/more_suggestions.xml index d387a1573a9d7bb4b1b9f3e85287b5b8adef7a72..6aa82e19766c9780a47f7b1c0339341837b50c5f 100644 --- a/java/res/layout/more_suggestions.xml +++ b/java/res/layout/more_suggestions.xml @@ -30,7 +30,7 @@ android:layout_alignParentBottom="true" android:layout_width="wrap_content" android:layout_height="wrap_content" - latin:keyLabelSize="@dimen/candidate_text_size" + latin:keyLabelSize="@dimen/suggestion_text_size" latin:keyHintLetterRatio="@fraction/more_suggestions_info_ratio" latin:keyHintLetterColor="@android:color/white" /> diff --git a/java/res/layout/candidate_divider.xml b/java/res/layout/suggestion_divider.xml similarity index 94% rename from java/res/layout/candidate_divider.xml rename to java/res/layout/suggestion_divider.xml index dc5e779663fee7ce568460058581295c878c654c..e38a725b1725165f1140c5c7c71d4b33c12dd3e1 100644 --- a/java/res/layout/candidate_divider.xml +++ b/java/res/layout/suggestion_divider.xml @@ -2,7 +2,7 @@ <!-- /* ** -** Copyright 2010, The Android Open Source Project +** Copyright 2011, 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. diff --git a/java/res/layout/candidate_info.xml b/java/res/layout/suggestion_info.xml similarity index 100% rename from java/res/layout/candidate_info.xml rename to java/res/layout/suggestion_info.xml diff --git a/java/res/layout/candidate_preview.xml b/java/res/layout/suggestion_preview.xml similarity index 81% rename from java/res/layout/candidate_preview.xml rename to java/res/layout/suggestion_preview.xml index 32705c996cd54c2c59afd98dfb00034707e43cb4..3c026ae0e6ad329591d70273e50b942570ad5061 100644 --- a/java/res/layout/candidate_preview.xml +++ b/java/res/layout/suggestion_preview.xml @@ -1,19 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> <!-- -/* +/* ** -** Copyright 2008, The Android Open Source Project +** Copyright 2011, 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 +** 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 +** 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 +** 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. */ --> diff --git a/java/res/layout/candidate_word.xml b/java/res/layout/suggestion_word.xml similarity index 79% rename from java/res/layout/candidate_word.xml rename to java/res/layout/suggestion_word.xml index b711e8f2917b4d7646be6e148370848dcfa4e7f4..d64cacf04b6105a0f43df57bc543e2ae01854ca2 100644 --- a/java/res/layout/candidate_word.xml +++ b/java/res/layout/suggestion_word.xml @@ -2,7 +2,7 @@ <!-- /* ** -** Copyright 2010, The Android Open Source Project +** Copyright 2011, 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. @@ -22,12 +22,12 @@ xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" - android:minWidth="@dimen/candidate_min_width" - android:textSize="@dimen/candidate_text_size" + android:minWidth="@dimen/suggestion_min_width" + android:textSize="@dimen/suggestion_text_size" android:gravity="center" - android:paddingLeft="@dimen/candidate_padding" + android:paddingLeft="@dimen/suggestion_padding" android:paddingTop="0dp" - android:paddingRight="@dimen/candidate_padding" + android:paddingRight="@dimen/suggestion_padding" android:paddingBottom="0dp" android:focusable="false" android:clickable="false" diff --git a/java/res/layout/candidates_strip.xml b/java/res/layout/suggestions_strip.xml similarity index 92% rename from java/res/layout/candidates_strip.xml rename to java/res/layout/suggestions_strip.xml index fdb13f73ec1d661cbc364143cd40c1d44b4530df..9252017b480fef9bdc1262ac75bf4adb66c00db9 100644 --- a/java/res/layout/candidates_strip.xml +++ b/java/res/layout/suggestions_strip.xml @@ -24,12 +24,12 @@ > <!-- Placer for debug information --> <RelativeLayout - android:id="@+id/candidates_placer" + android:id="@+id/suggestions_placer" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout - android:id="@+id/candidates_strip" + android:id="@+id/suggestions_strip" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent" /> diff --git a/java/res/values-land/dimens.xml b/java/res/values-land/dimens.xml index 4bf0e2092f1c3614073e250c7e76fcf931818fdc..322b6a63b550758515436c37cf087df20263bebc 100644 --- a/java/res/values-land/dimens.xml +++ b/java/res/values-land/dimens.xml @@ -58,10 +58,9 @@ <dimen name="key_preview_offset_ics">0.01in</dimen> - <dimen name="candidate_strip_height">36dip</dimen> + <dimen name="suggestions_strip_height">36dip</dimen> <dimen name="more_suggestions_row_height">36dip</dimen> - <dimen name="candidate_strip_minimum_height">160sp</dimen> - <dimen name="candidate_strip_fading_edge_length">63dip</dimen> + <dimen name="suggestions_strip_minimum_height">160sp</dimen> <!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. --> <!-- popup_key_height x 1.2 --> <dimen name="mini_keyboard_slide_allowance">0.336in</dimen> diff --git a/java/res/values-sw600dp-land/dimens.xml b/java/res/values-sw600dp-land/dimens.xml index 1d26338c5eafca265951fd038b51cc22dbde300e..f1715af642638f4322f4ae793eeb993d6c84ab44 100644 --- a/java/res/values-sw600dp-land/dimens.xml +++ b/java/res/values-sw600dp-land/dimens.xml @@ -50,5 +50,5 @@ <fraction name="key_hint_label_ratio">34%</fraction> <fraction name="key_uppercase_letter_ratio">29%</fraction> - <dimen name="candidate_strip_padding">40.0mm</dimen> + <dimen name="suggestions_strip_padding">40.0mm</dimen> </resources> diff --git a/java/res/values-sw600dp/dimens.xml b/java/res/values-sw600dp/dimens.xml index 6ce23cc70ada2d87c4776f39f344df42e92b21c0..6955736b36e1532d37d7c6c4a72ac9b3ef07ce7c 100644 --- a/java/res/values-sw600dp/dimens.xml +++ b/java/res/values-sw600dp/dimens.xml @@ -66,10 +66,10 @@ <dimen name="key_preview_height_ics">15.0mm</dimen> <dimen name="key_preview_offset_ics">0.05in</dimen> - <dimen name="candidate_strip_height">44dip</dimen> + <dimen name="suggestions_strip_height">44dip</dimen> <dimen name="more_suggestions_row_height">44dip</dimen> - <dimen name="candidate_strip_padding">15.0mm</dimen> - <dimen name="candidate_min_width">0.3in</dimen> - <dimen name="candidate_padding">12dip</dimen> - <dimen name="candidate_text_size">22dip</dimen> + <dimen name="suggestions_strip_padding">15.0mm</dimen> + <dimen name="suggestion_min_width">0.3in</dimen> + <dimen name="suggestion_padding">12dip</dimen> + <dimen name="suggestion_text_size">22dip</dimen> </resources> diff --git a/java/res/values-sw768dp-land/dimens.xml b/java/res/values-sw768dp-land/dimens.xml index 0cfdffddddfe3460516f37225e42e3267bda4a41..7303ea1e787eb72e943fd9dda5f50f25d3b43af3 100644 --- a/java/res/values-sw768dp-land/dimens.xml +++ b/java/res/values-sw768dp-land/dimens.xml @@ -58,5 +58,5 @@ <dimen name="key_preview_height_ics">26.5mm</dimen> <dimen name="key_preview_offset_ics">0.05in</dimen> - <dimen name="candidate_strip_padding">40.0mm</dimen> + <dimen name="suggestions_strip_padding">40.0mm</dimen> </resources> diff --git a/java/res/values-sw768dp/dimens.xml b/java/res/values-sw768dp/dimens.xml index 9b307e6f3e885ba44ed59df20df33cfd0898def0..7db1df7b4b7c1446bfe6f343ba8d79aea1a4ffc7 100644 --- a/java/res/values-sw768dp/dimens.xml +++ b/java/res/values-sw768dp/dimens.xml @@ -69,11 +69,11 @@ <dimen name="key_preview_height_ics">15.0mm</dimen> <dimen name="key_preview_offset_ics">0.05in</dimen> - <dimen name="candidate_strip_height">44dip</dimen> + <dimen name="suggestions_strip_height">44dip</dimen> <dimen name="more_suggestions_row_height">44dip</dimen> - <dimen name="candidate_strip_minimum_height">200sp</dimen> - <dimen name="candidate_strip_padding">15.0mm</dimen> - <dimen name="candidate_min_width">46dip</dimen> - <dimen name="candidate_padding">8dip</dimen> - <dimen name="candidate_text_size">22dip</dimen> + <dimen name="suggestions_strip_minimum_height">200sp</dimen> + <dimen name="suggestions_strip_padding">15.0mm</dimen> + <dimen name="suggestion_min_width">46dip</dimen> + <dimen name="suggestion_padding">8dip</dimen> + <dimen name="suggestion_text_size">22dip</dimen> </resources> diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml index 9d34268420cee0556f6cf66dd85c7031ac145182..fa6b2eb392bb2e00281d954b4d0afb8056f0e381 100644 --- a/java/res/values/attrs.xml +++ b/java/res/values/attrs.xml @@ -30,7 +30,7 @@ <attr name="suggestionsPaneViewStyle" format="reference" /> <attr name="suggestionBackgroundStyle" format="reference" /> <attr name="suggestionPreviewBackgroundStyle" format="reference" /> - <attr name="candidateViewStyle" format="reference" /> + <attr name="suggestionsViewStyle" format="reference" /> </declare-styleable> <declare-styleable name="KeyboardView"> @@ -112,7 +112,7 @@ </attr> </declare-styleable> - <declare-styleable name="CandidateView"> + <declare-styleable name="SuggestionsView"> <attr name="suggestionStripOption" format="integer"> <flag name="autoCorrectBold" value="0x01" /> <flag name="autoCorrectUnderline" value="0x02" /> @@ -122,8 +122,8 @@ <attr name="colorTypedWord" format="color" /> <attr name="colorAutoCorrect" format="color" /> <attr name="colorSuggested" format="color" /> - <attr name="candidateCountInStrip" format="integer" /> - <attr name="centerCandidatePercentile" format="integer" /> + <attr name="suggestionsCountInStrip" format="integer" /> + <attr name="centerSuggestionPercentile" format="integer" /> </declare-styleable> <declare-styleable name="Keyboard"> diff --git a/java/res/values/config.xml b/java/res/values/config.xml index 923e37d85f2cc2a1ffa4fd8042a47110a0725327..1ffbbacbe12c359389f80b6f5383b680e9964ea3 100644 --- a/java/res/values/config.xml +++ b/java/res/values/config.xml @@ -30,11 +30,11 @@ <bool name="config_digit_more_keys_enabled">true</bool> <!-- Whether or not Popup on key press is enabled by default --> <bool name="config_default_popup_preview">true</bool> - <!-- Default value for bigram suggestion: while showing candidates for a word should we weigh + <!-- Default value for bigram suggestion: while showing suggestions for a word should we weigh in the previous word? --> <bool name="config_default_bigram_suggestions">true</bool> <!-- Default value for bigram prediction: after entering a word and a space only, should we look - at input history to suggest a hopefully helpful candidate for the next word? --> + at input history to suggest a hopefully helpful suggestions for the next word? --> <bool name="config_default_bigram_prediction">false</bool> <bool name="config_default_compat_recorrection_enabled">true</bool> <bool name="config_default_sound_enabled">false</bool> diff --git a/java/res/values/dimens.xml b/java/res/values/dimens.xml index b7609a4acd395712925f288d6a819d4f5fd0d5de..bd8c1565a49cb696c1b336ba7b849eafa3f13500 100644 --- a/java/res/values/dimens.xml +++ b/java/res/values/dimens.xml @@ -76,19 +76,18 @@ <dimen name="key_preview_height_ics">80sp</dimen> <dimen name="key_preview_offset_ics">0.05in</dimen> - <dimen name="candidate_strip_height">40dip</dimen> + <dimen name="suggestions_strip_height">40dip</dimen> <dimen name="more_suggestions_key_horizontal_padding">12dip</dimen> <dimen name="more_suggestions_row_height">40dip</dimen> <dimen name="more_suggestions_slide_allowance">0.2in</dimen> <fraction name="more_suggestions_info_ratio">12%</fraction> - <dimen name="candidate_strip_minimum_height">200sp</dimen> - <dimen name="candidate_strip_fading_edge_length">63dip</dimen> - <dimen name="candidate_strip_padding">0dip</dimen> - <dimen name="candidate_min_width">44dip</dimen> - <dimen name="candidate_padding">6dip</dimen> - <dimen name="candidate_text_size">18dip</dimen> - <integer name="candidate_count_in_strip">3</integer> - <integer name="center_candidate_percentile">36</integer> + <dimen name="suggestions_strip_minimum_height">200sp</dimen> + <dimen name="suggestions_strip_padding">0dip</dimen> + <dimen name="suggestion_min_width">44dip</dimen> + <dimen name="suggestion_padding">6dip</dimen> + <dimen name="suggestion_text_size">18dip</dimen> + <integer name="suggestions_count_in_strip">3</integer> + <integer name="center_suggestion_percentile">36</integer> <!-- If the screen height in landscape is larger than the below value, then the keyboard will not go into extract (fullscreen) mode. --> diff --git a/java/res/values/donottranslate.xml b/java/res/values/donottranslate.xml index 5cd995be9d58c746006972c98db941c745ebf4c9..228380da74cec7449742163eae4b4ce87f200a1d 100644 --- a/java/res/values/donottranslate.xml +++ b/java/res/values/donottranslate.xml @@ -44,13 +44,6 @@ <!-- Label for "switch to phone symbols" key. Must be short to fit on key! --> <string name="label_to_phone_symbols_key">\uff0a\uff03</string> - <!-- Character for candidate divider (BOX DRAWINGS LIGHT VERTICAL) --> - <string name="label_candidate_divider">\u2502</string> - <!-- Character for expand candidates pane (BLACK DOWN-POINTING TRIANGLE) --> - <string name="label_expand_candidates_pane">\u25bc</string> - <!-- Character for close candidates pane (BLACK UP-POINTING TRIANGLE) --> - <string name="label_close_candidates_pane">\u25b2</string> - <!-- Always show the suggestion strip --> <string name="prefs_suggestion_visibility_show_value">0</string> <!-- Show the suggestion strip only on portrait mode --> diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index 2a3d705b0758992eb55f4c5a3e7d5a817dd3b24b..fa80519f7f0eb8f91fad02461d2aa23be553c542 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -99,11 +99,11 @@ <string name="auto_correction_summary">Spacebar and punctuation automatically correct mistyped words</string> <!-- Option to disable auto correction. [CHAR LIMIT=20] --> <string name="auto_correction_threshold_mode_off">Off</string> - <!-- Option to suggest auto correction candidates modestly. Auto-corrects only to a word which has small edit distance from typed word. [CHAR LIMIT=20] --> + <!-- Option to suggest auto correction suggestions modestly. Auto-corrects only to a word which has small edit distance from typed word. [CHAR LIMIT=20] --> <string name="auto_correction_threshold_mode_modest">Modest</string> - <!-- Option to suggest auto correction candidates aggressively. Auto-corrects to a word which has even large edit distance from typed word. [CHAR LIMIT=20] --> + <!-- Option to suggest auto correction suggestions aggressively. Auto-corrects to a word which has even large edit distance from typed word. [CHAR LIMIT=20] --> <string name="auto_correction_threshold_mode_aggeressive">Aggressive</string> - <!-- Option to suggest auto correction candidates very aggressively. Auto-corrects to a word which has even large edit distance from typed word. [CHAR LIMIT=20] --> + <!-- Option to suggest auto correction suggestions very aggressively. Auto-corrects to a word which has even large edit distance from typed word. [CHAR LIMIT=20] --> <string name="auto_correction_threshold_mode_very_aggeressive">Very aggressive</string> <!-- Option to enable bigram correction --> diff --git a/java/res/values/styles.xml b/java/res/values/styles.xml index 4cc2a530664f6c58eb256db79e6b3942e865018e..17b3d14abf01d27f9e632682a0ae699d9e23d389 100644 --- a/java/res/values/styles.xml +++ b/java/res/values/styles.xml @@ -88,21 +88,21 @@ <item name="android:background">@drawable/keyboard_suggest_strip</item> </style> <style name="SuggestionBackgroundStyle"> - <item name="android:background">@drawable/btn_candidate</item> + <item name="android:background">@drawable/btn_suggestion</item> </style> <style name="SuggestionPreviewBackgroundStyle"> - <item name="android:background">@drawable/candidate_feedback_background</item> + <item name="android:background">@drawable/suggestion_feedback_background</item> </style> <style - name="CandidateViewStyle" + name="SuggestionsViewStyle" parent="SuggestionsStripBackgroundStyle" > <item name="suggestionStripOption">autoCorrectBold</item> <item name="colorTypedWord">#FFFFFFFF</item> <item name="colorAutoCorrect">#FFFCAE00</item> <item name="colorSuggested">#FFFCAE00</item> - <item name="candidateCountInStrip">@integer/candidate_count_in_strip</item> - <item name="centerCandidatePercentile">@integer/center_candidate_percentile</item> + <item name="suggestionsCountInStrip">@integer/suggestions_count_in_strip</item> + <item name="centerSuggestionPercentile">@integer/center_suggestion_percentile</item> </style> <!-- Theme "Basic high contrast" --> <style @@ -233,7 +233,7 @@ <item name="android:background">@drawable/keyboard_suggest_strip_holo</item> </style> <style name="SuggestionBackgroundStyle.IceCreamSandwich"> - <item name="android:background">@drawable/btn_candidate_ics</item> + <item name="android:background">@drawable/btn_suggestion_ics</item> </style> <style name="SuggestionPreviewBackgroundStyle.IceCreamSandwich" @@ -246,15 +246,15 @@ > </style> <style - name="CandidateViewStyle.IceCreamSandwich" + name="SuggestionsViewStyle.IceCreamSandwich" parent="SuggestionsStripBackgroundStyle.IceCreamSandwich" > <item name="suggestionStripOption">autoCorrectBold|validTypedWordBold</item> <item name="colorTypedWord">#FFBCBEC0</item> <item name="colorAutoCorrect">#FF0099CC</item> <item name="colorSuggested">#FFA7A9AC</item> - <item name="candidateCountInStrip">@integer/candidate_count_in_strip</item> - <item name="centerCandidatePercentile">@integer/center_candidate_percentile</item> + <item name="suggestionsCountInStrip">@integer/suggestions_count_in_strip</item> + <item name="centerSuggestionPercentile">@integer/center_suggestion_percentile</item> </style> <style name="MiniKeyboardAnimation"> <item name="android:windowEnterAnimation">@anim/mini_keyboard_fadein</item> diff --git a/java/res/values/themes-basic-highcontrast.xml b/java/res/values/themes-basic-highcontrast.xml index 51bf2f1d26f5199965db30b607ceb7d58abf4c40..ee41093268597c5e958397fc39307f17b14c8e1d 100644 --- a/java/res/values/themes-basic-highcontrast.xml +++ b/java/res/values/themes-basic-highcontrast.xml @@ -25,6 +25,6 @@ <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item> <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item> <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item> - <item name="candidateViewStyle">@style/CandidateViewStyle</item> + <item name="suggestionsViewStyle">@style/SuggestionsViewStyle</item> </style> </resources> diff --git a/java/res/values/themes-basic.xml b/java/res/values/themes-basic.xml index 7288dbacbd023e295ece4eff85914d0a09dc2f5d..ff7f9ed357b46f4c297b20550599e2f91bc236f7 100644 --- a/java/res/values/themes-basic.xml +++ b/java/res/values/themes-basic.xml @@ -25,6 +25,6 @@ <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item> <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item> <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item> - <item name="candidateViewStyle">@style/CandidateViewStyle</item> + <item name="suggestionsViewStyle">@style/SuggestionsViewStyle</item> </style> </resources> diff --git a/java/res/values/themes-gingerbread.xml b/java/res/values/themes-gingerbread.xml index 5b62378f65aed53476cf0d7ec0e025a662b5d158..af91c3bedfade01f1a2edf8103f50cc971d5020b 100644 --- a/java/res/values/themes-gingerbread.xml +++ b/java/res/values/themes-gingerbread.xml @@ -25,6 +25,6 @@ <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item> <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item> <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item> - <item name="candidateViewStyle">@style/CandidateViewStyle</item> + <item name="suggestionsViewStyle">@style/SuggestionsViewStyle</item> </style> </resources> diff --git a/java/res/values/themes-ics.xml b/java/res/values/themes-ics.xml index 597d87b4c1e2f0577848e1ed764b55002d98b2b3..341afcc5329b7395ea5bb258e02a05d8671ca6a5 100644 --- a/java/res/values/themes-ics.xml +++ b/java/res/values/themes-ics.xml @@ -25,6 +25,6 @@ <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle.IceCreamSandwich</item> <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle.IceCreamSandwich</item> <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle.IceCreamSandwich</item> - <item name="candidateViewStyle">@style/CandidateViewStyle.IceCreamSandwich</item> + <item name="suggestionsViewStyle">@style/SuggestionsViewStyle.IceCreamSandwich</item> </style> </resources> diff --git a/java/res/values/themes-stone-bold.xml b/java/res/values/themes-stone-bold.xml index ff7107d3288d224343498c1a01b5cb85698cad99..915f2263e606031f5afdf3aa39437d5360699bef 100644 --- a/java/res/values/themes-stone-bold.xml +++ b/java/res/values/themes-stone-bold.xml @@ -25,6 +25,6 @@ <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item> <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item> <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item> - <item name="candidateViewStyle">@style/CandidateViewStyle</item> + <item name="suggestionsViewStyle">@style/SuggestionsViewStyle</item> </style> </resources> diff --git a/java/res/values/themes-stone.xml b/java/res/values/themes-stone.xml index 35390d1116b0b9ed35e10f6f68a3a0c185a38090..6d5b9dbaec0d10f3b0a20220eed087127d787cb0 100644 --- a/java/res/values/themes-stone.xml +++ b/java/res/values/themes-stone.xml @@ -25,6 +25,6 @@ <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item> <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item> <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item> - <item name="candidateViewStyle">@style/CandidateViewStyle</item> + <item name="suggestionsViewStyle">@style/SuggestionsViewStyle</item> </style> </resources> diff --git a/java/src/com/android/inputmethod/deprecated/recorrection/Recorrection.java b/java/src/com/android/inputmethod/deprecated/recorrection/Recorrection.java index bf2512d7b03a384f1f16d916cb4c3dc872b196bb..75efa52f2bbfc08f0c46969bc6a9db904e76beb2 100644 --- a/java/src/com/android/inputmethod/deprecated/recorrection/Recorrection.java +++ b/java/src/com/android/inputmethod/deprecated/recorrection/Recorrection.java @@ -16,28 +16,28 @@ package com.android.inputmethod.deprecated.recorrection; +import android.content.SharedPreferences; +import android.content.res.Resources; +import android.text.TextUtils; +import android.view.inputmethod.ExtractedText; +import android.view.inputmethod.ExtractedTextRequest; +import android.view.inputmethod.InputConnection; + import com.android.inputmethod.compat.InputConnectionCompatUtils; import com.android.inputmethod.compat.SuggestionSpanUtils; import com.android.inputmethod.deprecated.VoiceProxy; import com.android.inputmethod.keyboard.KeyboardSwitcher; import com.android.inputmethod.latin.AutoCorrection; -import com.android.inputmethod.latin.CandidateView; import com.android.inputmethod.latin.EditingUtils; import com.android.inputmethod.latin.LatinIME; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.Settings; import com.android.inputmethod.latin.Suggest; import com.android.inputmethod.latin.SuggestedWords; +import com.android.inputmethod.latin.SuggestionsView; import com.android.inputmethod.latin.TextEntryState; import com.android.inputmethod.latin.WordComposer; -import android.content.SharedPreferences; -import android.content.res.Resources; -import android.text.TextUtils; -import android.view.inputmethod.ExtractedText; -import android.view.inputmethod.ExtractedTextRequest; -import android.view.inputmethod.InputConnection; - import java.util.ArrayList; /** @@ -107,7 +107,7 @@ public class Recorrection implements SharedPreferences.OnSharedPreferenceChangeL } public void updateRecorrectionSelection(KeyboardSwitcher keyboardSwitcher, - CandidateView candidateView, int candidatesStart, int candidatesEnd, + SuggestionsView suggestionsView, int candidatesStart, int candidatesEnd, int newSelStart, int newSelEnd, int oldSelStart, int lastSelectionStart, int lastSelectionEnd, boolean hasUncommittedTypedChars) { if (SuggestionSpanUtils.SUGGESTION_SPAN_IS_SUPPORTED || !mRecorrectionEnabled) return; @@ -127,7 +127,7 @@ public class Recorrection implements SharedPreferences.OnSharedPreferenceChangeL // If showing the "touch again to save" hint, do not replace it. Else, // show the bigrams if we are at the end of the text, punctuation // otherwise. - if (candidateView != null && !candidateView.isShowingAddToDictionaryHint()) { + if (suggestionsView != null && !suggestionsView.isShowingAddToDictionaryHint()) { InputConnection ic = mService.getCurrentInputConnection(); if (null == ic || !TextUtils.isEmpty(ic.getTextAfterCursor(1, 0))) { if (!mService.isShowingPunctuationList()) { @@ -219,13 +219,13 @@ public class Recorrection implements SharedPreferences.OnSharedPreferenceChangeL } public void fetchAndDisplayRecorrectionSuggestions(VoiceProxy voiceProxy, - CandidateView candidateView, Suggest suggest, KeyboardSwitcher keyboardSwitcher, + SuggestionsView suggestionsView, Suggest suggest, KeyboardSwitcher keyboardSwitcher, WordComposer word, boolean hasUncommittedTypedChars, int lastSelectionStart, int lastSelectionEnd, String wordSeparators) { if (!InputConnectionCompatUtils.RECORRECTION_SUPPORTED) return; if (SuggestionSpanUtils.SUGGESTION_SPAN_IS_SUPPORTED || !mRecorrectionEnabled) return; voiceProxy.setShowingVoiceSuggestions(false); - if (candidateView != null && candidateView.isShowingAddToDictionaryHint()) { + if (suggestionsView != null && suggestionsView.isShowingAddToDictionaryHint()) { return; } InputConnection ic = mService.getCurrentInputConnection(); @@ -260,7 +260,7 @@ public class Recorrection implements SharedPreferences.OnSharedPreferenceChangeL if (SuggestionSpanUtils.SUGGESTION_SPAN_IS_SUPPORTED) return; if (force || TextEntryState.isRecorrecting()) { TextEntryState.onAbortRecorrection(); - mService.setCandidatesViewShown(mService.isCandidateStripVisible()); + mService.setCandidatesViewShown(mService.isSuggestionsStripVisible()); mService.getCurrentInputConnection().finishComposingText(); mService.clearSuggestions(); } diff --git a/java/src/com/android/inputmethod/latin/AutoCorrection.java b/java/src/com/android/inputmethod/latin/AutoCorrection.java index d3119792cd3676137113dae54f438aa651d9ecd4..e6ae2c5c7dd4901a015ce7f6221e58ff2a66e20b 100644 --- a/java/src/com/android/inputmethod/latin/AutoCorrection.java +++ b/java/src/com/android/inputmethod/latin/AutoCorrection.java @@ -119,15 +119,15 @@ public class AutoCorrection { if (wordComposer.size() > 1 && (correctionMode == Suggest.CORRECTION_FULL || correctionMode == Suggest.CORRECTION_FULL_BIGRAM) && typedWord != null && suggestions.size() > 0 && sortedScores.length > 0) { - final CharSequence autoCorrectionCandidate = suggestions.get(0); - final int autoCorrectionCandidateScore = sortedScores[0]; + final CharSequence autoCorrectionSuggestion = suggestions.get(0); + final int autoCorrectionSuggestionScore = sortedScores[0]; // TODO: when the normalized score of the first suggestion is nearly equals to // the normalized score of the second suggestion, behave less aggressive. mNormalizedScore = Utils.calcNormalizedScore( - typedWord,autoCorrectionCandidate, autoCorrectionCandidateScore); + typedWord,autoCorrectionSuggestion, autoCorrectionSuggestionScore); if (DBG) { - Log.d(TAG, "Normalized " + typedWord + "," + autoCorrectionCandidate + "," - + autoCorrectionCandidateScore + ", " + mNormalizedScore + Log.d(TAG, "Normalized " + typedWord + "," + autoCorrectionSuggestion + "," + + autoCorrectionSuggestionScore + ", " + mNormalizedScore + "(" + autoCorrectionThreshold + ")"); } if (mNormalizedScore >= autoCorrectionThreshold) { diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index da6c22107d3db9692cb9f4c03145e44f1020ce63..85363fd36416d3e26abac74fc0c89c66abb4a95c 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -77,7 +77,7 @@ import java.util.Locale; * Input method implementation for Qwerty'ish keyboard. */ public class LatinIME extends InputMethodServiceCompatWrapper implements KeyboardActionListener, - CandidateView.Listener { + SuggestionsView.Listener { private static final String TAG = LatinIME.class.getSimpleName(); private static final boolean PERF_DEBUG = false; private static final boolean TRACE = false; @@ -157,9 +157,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar private Settings.Values mSettingsValues; - private View mCandidateViewContainer; - private int mCandidateStripHeight; - private CandidateView mCandidateView; + private View mSuggestionsContainer; + private int mSuggestionsStripHeight; + private SuggestionsView mSuggestionsView; private Suggest mSuggest; private CompletionInfo[] mApplicationSpecifiedCompletions; @@ -254,7 +254,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar break; case MSG_UPDATE_OLD_SUGGESTIONS: latinIme.mRecorrection.fetchAndDisplayRecorrectionSuggestions( - latinIme.mVoiceProxy, latinIme.mCandidateView, + latinIme.mVoiceProxy, latinIme.mSuggestionsView, latinIme.mSuggest, latinIme.mKeyboardSwitcher, latinIme.mWordComposer, latinIme.mHasUncommittedTypedChars, latinIme.mLastSelectionStart, latinIme.mLastSelectionEnd, latinIme.mSettingsValues.mWordSeparators); @@ -607,11 +607,11 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar @Override public void setInputView(View view) { super.setInputView(view); - mCandidateViewContainer = view.findViewById(R.id.candidates_container); - mCandidateView = (CandidateView) view.findViewById(R.id.candidates); - if (mCandidateView != null) - mCandidateView.setListener(this, view); - mCandidateStripHeight = (int)mResources.getDimension(R.dimen.candidate_strip_height); + mSuggestionsContainer = view.findViewById(R.id.suggestions_container); + mSuggestionsView = (SuggestionsView) view.findViewById(R.id.suggestions_view); + if (mSuggestionsView != null) + mSuggestionsView.setListener(this, view); + mSuggestionsStripHeight = (int)mResources.getDimension(R.dimen.suggestions_strip_height); } @Override @@ -678,9 +678,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar switcher.loadKeyboard(attribute, mSettingsValues); } - if (mCandidateView != null) - mCandidateView.clear(); - setSuggestionStripShownInternal(isCandidateStripVisible(), /* needsInputViewShown */ false); + if (mSuggestionsView != null) + mSuggestionsView.clear(); + setSuggestionStripShownInternal( + isSuggestionsStripVisible(), /* needsInputViewShown */ false); // Delay updating suggestions because keyboard input view may not be shown at this point. mHandler.postUpdateSuggestions(); @@ -708,7 +709,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar if ((inputType & InputType.TYPE_MASK_CLASS) == InputType.TYPE_CLASS_TEXT) { mIsSettingsSuggestionStripOn = true; - // Make sure that passwords are not displayed in candidate view + // Make sure that passwords are not displayed in {@link SuggestionsView}. if (InputTypeCompatUtils.isPasswordInputType(inputType) || InputTypeCompatUtils.isVisiblePasswordInputType(inputType)) { mIsSettingsSuggestionStripOn = false; @@ -819,7 +820,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar && (selectionChanged || candidatesCleared)) { if (candidatesCleared) { // If the composing span has been cleared, save the typed word in the history for - // recorrection before we reset the candidate strip. Then, we'll be able to show + // recorrection before we reset the suggestions strip. Then, we'll be able to show // suggestions for recorrection right away. mRecorrection.saveRecorrectionSuggestion(mWordComposer, mComposingStringBuilder); } @@ -853,7 +854,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar mLastSelectionEnd = newSelEnd; mRecorrection.updateRecorrectionSelection(mKeyboardSwitcher, - mCandidateView, candidatesStart, candidatesEnd, newSelStart, + mSuggestionsView, candidatesStart, candidatesEnd, newSelStart, newSelEnd, oldSelStart, mLastSelectionStart, mLastSelectionEnd, mHasUncommittedTypedChars); } @@ -866,10 +867,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar /** * This is called when the user has clicked on the extracted text view, * when running in fullscreen mode. The default implementation hides - * the candidates view when this happens, but only if the extracted text + * the suggestions view when this happens, but only if the extracted text * editor has a vertical scroll bar because its text doesn't fit. * Here we override the behavior due to the possibility that a re-correction could - * cause the candidate strip to disappear and re-appear. + * cause the suggestions strip to disappear and re-appear. */ @Override public void onExtractedTextClicked() { @@ -881,11 +882,11 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar /** * This is called when the user has performed a cursor movement in the * extracted text view, when it is running in fullscreen mode. The default - * implementation hides the candidates view when a vertical movement + * implementation hides the suggestions view when a vertical movement * happens, but only if the extracted text editor has a vertical scroll bar * because its text doesn't fit. * Here we override the behavior due to the possibility that a re-correction could - * cause the candidate strip to disappear and re-appear. + * cause the suggestions strip to disappear and re-appear. */ @Override public void onExtractedCursorMovement(int dx, int dy) { @@ -938,20 +939,20 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } private void setSuggestionStripShownInternal(boolean shown, boolean needsInputViewShown) { - // TODO: Modify this if we support candidates with hard keyboard - if (onEvaluateInputViewShown() && mCandidateViewContainer != null) { - final boolean shouldShowCandidates = shown + // TODO: Modify this if we support suggestions with hard keyboard + if (onEvaluateInputViewShown() && mSuggestionsContainer != null) { + final boolean shouldShowSuggestions = shown && (needsInputViewShown ? mKeyboardSwitcher.isInputViewShown() : true); if (isFullscreenMode()) { // No need to have extra space to show the key preview. - mCandidateViewContainer.setMinimumHeight(0); - mCandidateViewContainer.setVisibility( - shouldShowCandidates ? View.VISIBLE : View.GONE); + mSuggestionsContainer.setMinimumHeight(0); + mSuggestionsContainer.setVisibility( + shouldShowSuggestions ? View.VISIBLE : View.GONE); } else { // We must control the visibility of the suggestion strip in order to avoid clipped // key previews, even when we don't show the suggestion strip. - mCandidateViewContainer.setVisibility( - shouldShowCandidates ? View.VISIBLE : View.INVISIBLE); + mSuggestionsContainer.setVisibility( + shouldShowSuggestions ? View.VISIBLE : View.INVISIBLE); } } } @@ -964,14 +965,14 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar public void onComputeInsets(InputMethodService.Insets outInsets) { super.onComputeInsets(outInsets); final KeyboardView inputView = mKeyboardSwitcher.getKeyboardView(); - if (inputView == null || mCandidateViewContainer == null) + if (inputView == null || mSuggestionsContainer == null) return; - final int containerHeight = mCandidateViewContainer.getHeight(); + final int containerHeight = mSuggestionsContainer.getHeight(); int touchY = containerHeight; // Need to set touchable region only if input view is being shown if (mKeyboardSwitcher.isInputViewShown()) { - if (mCandidateViewContainer.getVisibility() == View.VISIBLE) { - touchY -= mCandidateStripHeight; + if (mSuggestionsContainer.getVisibility() == View.VISIBLE) { + touchY -= mSuggestionsStripHeight; } final int touchWidth = inputView.getWidth(); final int touchHeight = inputView.getHeight() + containerHeight @@ -1321,7 +1322,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar if (mEnteredText != null && sameAsTextBeforeCursor(ic, mEnteredText)) { ic.deleteSurroundingText(mEnteredText.length(), 0); } else if (deleteChar) { - if (mCandidateView != null && mCandidateView.dismissAddToDictionaryHint()) { + if (mSuggestionsView != null && mSuggestionsView.dismissAddToDictionaryHint()) { // Go back to the suggestion mode if the user canceled the // "Touch again to save". // NOTE: In gerenal, we don't revert the word when backspacing @@ -1440,7 +1441,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar mVoiceProxy.handleSeparator(); // Should dismiss the "Touch again to save" message when handling separator - if (mCandidateView != null && mCandidateView.dismissAddToDictionaryHint()) { + if (mSuggestionsView != null && mSuggestionsView.dismissAddToDictionaryHint()) { mHandler.cancelUpdateBigramPredictions(); mHandler.postUpdateSuggestions(); } @@ -1491,8 +1492,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar if (!TextUtils.isEmpty(typedWord) && !typedWord.equals(mBestWord)) { InputConnectionCompatUtils.commitCorrection( ic, mLastSelectionEnd - typedWord.length(), typedWord, mBestWord); - if (mCandidateView != null) - mCandidateView.onAutoCorrectionInverted(mBestWord); + if (mSuggestionsView != null) + mSuggestionsView.onAutoCorrectionInverted(mBestWord); } } if (Keyboard.CODE_SPACE == primaryCode) { @@ -1527,7 +1528,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } public boolean isShowingPunctuationList() { - return mSettingsValues.mSuggestPuncList == mCandidateView.getSuggestions(); + return mSettingsValues.mSuggestPuncList == mSuggestionsView.getSuggestions(); } public boolean isShowingSuggestionsStrip() { @@ -1536,10 +1537,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar && mDisplayOrientation == Configuration.ORIENTATION_PORTRAIT); } - public boolean isCandidateStripVisible() { - if (mCandidateView == null) + public boolean isSuggestionsStripVisible() { + if (mSuggestionsView == null) return false; - if (mCandidateView.isShowingAddToDictionaryHint() || TextEntryState.isRecorrecting()) + if (mSuggestionsView.isShowingAddToDictionaryHint() || TextEntryState.isRecorrecting()) return true; if (!isShowingSuggestionsStrip()) return false; @@ -1561,7 +1562,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } setInputView(v); } - setSuggestionStripShown(isCandidateStripVisible()); + setSuggestionStripShown(isSuggestionsStripVisible()); updateInputViewShown(); mHandler.postUpdateSuggestions(); } @@ -1571,8 +1572,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } public void setSuggestions(SuggestedWords words) { - if (mCandidateView != null) { - mCandidateView.setSuggestions(words); + if (mSuggestionsView != null) { + mSuggestionsView.setSuggestions(words); mKeyboardSwitcher.onAutoCorrectionStateChanged( words.hasWordAboveAutoCorrectionScoreThreshold()); } @@ -1625,11 +1626,11 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar // length == 1). if (typedWord != null) { if (builder.size() > 1 || typedWord.length() == 1 || typedWordValid - || mCandidateView.isShowingAddToDictionaryHint()) { + || mSuggestionsView.isShowingAddToDictionaryHint()) { builder.setTypedWordValid(typedWordValid).setHasMinimalSuggestion( autoCorrectionAvailable); } else { - final SuggestedWords previousSuggestions = mCandidateView.getSuggestions(); + final SuggestedWords previousSuggestions = mSuggestionsView.getSuggestions(); if (previousSuggestions == mSettingsValues.mSuggestPuncList) return; builder.addTypedWordAndPreviousSuggestions(typedWord, previousSuggestions); @@ -1651,11 +1652,11 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } else { mBestWord = null; } - setSuggestionStripShown(isCandidateStripVisible()); + setSuggestionStripShown(isSuggestionsStripVisible()); } private boolean pickDefaultSuggestion(int separatorCode) { - // Complete any pending candidate query first + // Complete any pending suggestions query first if (mHandler.hasPendingUpdateSuggestions()) { mHandler.cancelUpdateSuggestions(); updateSuggestions(); @@ -1674,7 +1675,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar @Override public void pickSuggestionManually(int index, CharSequence suggestion) { - SuggestedWords suggestions = mCandidateView.getSuggestions(); + SuggestedWords suggestions = mSuggestionsView.getSuggestions(); mVoiceProxy.flushAndLogAllTextModificationCounters(index, suggestion, mSettingsValues.mWordSeparators); @@ -1690,8 +1691,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar ic.commitCompletion(completionInfo); } mCommittedLength = suggestion.length(); - if (mCandidateView != null) { - mCandidateView.clear(); + if (mSuggestionsView != null) { + mSuggestionsView.clear(); } mKeyboardSwitcher.updateShiftState(); if (ic != null) { @@ -1786,7 +1787,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } if (showingAddToDictionaryHint) { if (mIsUserDictionaryAvaliable) { - mCandidateView.showAddToDictionaryHint(suggestion); + mSuggestionsView.showAddToDictionaryHint(suggestion); } else { mHandler.postUpdateSuggestions(); } @@ -1806,7 +1807,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar final InputConnection ic = getCurrentInputConnection(); if (ic != null) { mVoiceProxy.rememberReplacedWord(bestWord, mSettingsValues.mWordSeparators); - SuggestedWords suggestedWords = mCandidateView.getSuggestions(); + SuggestedWords suggestedWords = mSuggestionsView.getSuggestions(); ic.commitText(SuggestionSpanUtils.getTextWithSuggestionSpan( this, bestWord, suggestedWords), 1); } @@ -1842,7 +1843,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar public void setPunctuationSuggestions() { setSuggestions(mSettingsValues.mSuggestPuncList); - setSuggestionStripShown(isCandidateStripVisible()); + setSuggestionStripShown(isSuggestionsStripVisible()); } private void addToUserUnigramAndBigramDictionaries(CharSequence suggestion, diff --git a/java/src/com/android/inputmethod/latin/MoreSuggestions.java b/java/src/com/android/inputmethod/latin/MoreSuggestions.java index 0446fb2a87ad426dfe41199253be8c711a938ad3..a9e75b7b3478ee988423f3aca5edbae60f183789 100644 --- a/java/src/com/android/inputmethod/latin/MoreSuggestions.java +++ b/java/src/com/android/inputmethod/latin/MoreSuggestions.java @@ -43,10 +43,10 @@ public class MoreSuggestions extends Keyboard { private int mToPos; public static class MoreSuggestionsParam extends KeyboardParams { - private final int[] mWidths = new int[CandidateView.MAX_SUGGESTIONS]; - private final int[] mRowNumbers = new int[CandidateView.MAX_SUGGESTIONS]; - private final int[] mColumnOrders = new int[CandidateView.MAX_SUGGESTIONS]; - private final int[] mNumColumnsInRow = new int[CandidateView.MAX_SUGGESTIONS]; + private final int[] mWidths = new int[SuggestionsView.MAX_SUGGESTIONS]; + private final int[] mRowNumbers = new int[SuggestionsView.MAX_SUGGESTIONS]; + private final int[] mColumnOrders = new int[SuggestionsView.MAX_SUGGESTIONS]; + private final int[] mNumColumnsInRow = new int[SuggestionsView.MAX_SUGGESTIONS]; private static final int MAX_COLUMNS_IN_ROW = 3; private int mNumRows; @@ -60,7 +60,7 @@ public class MoreSuggestions extends Keyboard { int row = 0; int pos = fromPos, rowStartPos = fromPos; - final int size = Math.min(suggestions.size(), CandidateView.MAX_SUGGESTIONS); + final int size = Math.min(suggestions.size(), SuggestionsView.MAX_SUGGESTIONS); while (pos < size) { final CharSequence word = suggestions.getWord(pos); // TODO: Should take care of text x-scaling. diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/SuggestionsView.java similarity index 82% rename from java/src/com/android/inputmethod/latin/CandidateView.java rename to java/src/com/android/inputmethod/latin/SuggestionsView.java index fe48f0bc18899a999277360180cedbf6a1cb86cf..617d7f1f2a73478e27646d42192c3be5845aa0a7 100644 --- a/java/src/com/android/inputmethod/latin/CandidateView.java +++ b/java/src/com/android/inputmethod/latin/SuggestionsView.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010 The Android Open Source Project + * Copyright (C) 2011 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 @@ -57,7 +57,7 @@ import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; import java.util.ArrayList; import java.util.List; -public class CandidateView extends LinearLayout implements OnClickListener, OnLongClickListener { +public class SuggestionsView extends LinearLayout implements OnClickListener, OnLongClickListener { public interface Listener { public boolean addWordToDictionary(String word); public void pickSuggestionManually(int index, CharSequence word); @@ -68,8 +68,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private static final boolean DBG = LatinImeLogger.sDBG; - private final ViewGroup mCandidatesPlacer; - private final ViewGroup mCandidatesStrip; + private final ViewGroup mSuggestionsPlacer; + private final ViewGroup mSuggestionsStrip; private View mKeyboardView; private final View mMoreSuggestionsContainer; @@ -93,26 +93,26 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private final UiHandler mHandler = new UiHandler(this); - private static class UiHandler extends StaticInnerHandlerWrapper<CandidateView> { + private static class UiHandler extends StaticInnerHandlerWrapper<SuggestionsView> { private static final int MSG_HIDE_PREVIEW = 0; private static final int MSG_UPDATE_SUGGESTION = 1; private static final long DELAY_HIDE_PREVIEW = 1300; private static final long DELAY_UPDATE_SUGGESTION = 300; - public UiHandler(CandidateView outerInstance) { + public UiHandler(SuggestionsView outerInstance) { super(outerInstance); } @Override public void dispatchMessage(Message msg) { - final CandidateView candidateView = getOuterInstance(); + final SuggestionsView suggestionsView = getOuterInstance(); switch (msg.what) { case MSG_HIDE_PREVIEW: - candidateView.hidePreview(); + suggestionsView.hidePreview(); break; case MSG_UPDATE_SUGGESTION: - candidateView.updateSuggestions(); + suggestionsView.updateSuggestions(); break; } } @@ -142,16 +142,16 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } } - private static class CandidateViewParams { + private static class SuggestionsViewParams { public final int mPadding; public final int mDividerWidth; - public final int mCandidateStripHeight; + public final int mSuggestionsStripHeight; protected final List<TextView> mWords; protected final List<View> mDividers; protected final List<TextView> mInfos; - protected CandidateViewParams(List<TextView> words, List<View> dividers, + protected SuggestionsViewParams(List<TextView> words, List<View> dividers, List<TextView> infos) { mWords = words; mDividers = dividers; @@ -165,22 +165,22 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mDividerWidth = divider.getMeasuredWidth(); final Resources res = word.getResources(); - mCandidateStripHeight = res.getDimensionPixelSize(R.dimen.candidate_strip_height); + mSuggestionsStripHeight = res.getDimensionPixelSize(R.dimen.suggestions_strip_height); } } - private static class SuggestionsStripParams extends CandidateViewParams { - private static final int DEFAULT_CANDIDATE_COUNT_IN_STRIP = 3; - private static final int DEFAULT_CENTER_CANDIDATE_PERCENTILE = 40; + private static class SuggestionsStripParams extends SuggestionsViewParams { + private static final int DEFAULT_SUGGESTIONS_COUNT_IN_STRIP = 3; + private static final int DEFAULT_CENTER_SUGGESTION_PERCENTILE = 40; private static final int PUNCTUATIONS_IN_STRIP = 6; private final int mColorTypedWord; private final int mColorAutoCorrect; - private final int mColorSuggestedCandidate; - public final int mCandidateCountInStrip; - private final float mCenterCandidateWeight; - private final int mCenterCandidateIndex; - private final Drawable mMoreCandidateHint; + private final int mColorSuggested; + public final int mSuggestionsCountInStrip; + private final float mCenterSuggestionWeight; + private final int mCenterSuggestionIndex; + private final Drawable mMoreSuggestionsHint; private static final CharacterStyle BOLD_SPAN = new StyleSpan(Typeface.BOLD); private static final CharacterStyle UNDERLINE_SPAN = new UnderlineSpan(); @@ -205,33 +205,33 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo List<TextView> words, List<View> dividers, List<TextView> infos) { super(words, dividers, infos); final TypedArray a = context.obtainStyledAttributes( - attrs, R.styleable.CandidateView, defStyle, R.style.CandidateViewStyle); - mSuggestionStripOption = a.getInt(R.styleable.CandidateView_suggestionStripOption, 0); - mColorTypedWord = a.getColor(R.styleable.CandidateView_colorTypedWord, 0); - mColorAutoCorrect = a.getColor(R.styleable.CandidateView_colorAutoCorrect, 0); - mColorSuggestedCandidate = a.getColor(R.styleable.CandidateView_colorSuggested, 0); - mCandidateCountInStrip = a.getInt( - R.styleable.CandidateView_candidateCountInStrip, - DEFAULT_CANDIDATE_COUNT_IN_STRIP); - mCenterCandidateWeight = a.getInt( - R.styleable.CandidateView_centerCandidatePercentile, - DEFAULT_CENTER_CANDIDATE_PERCENTILE) / 100.0f; + attrs, R.styleable.SuggestionsView, defStyle, R.style.SuggestionsViewStyle); + mSuggestionStripOption = a.getInt(R.styleable.SuggestionsView_suggestionStripOption, 0); + mColorTypedWord = a.getColor(R.styleable.SuggestionsView_colorTypedWord, 0); + mColorAutoCorrect = a.getColor(R.styleable.SuggestionsView_colorAutoCorrect, 0); + mColorSuggested = a.getColor(R.styleable.SuggestionsView_colorSuggested, 0); + mSuggestionsCountInStrip = a.getInt( + R.styleable.SuggestionsView_suggestionsCountInStrip, + DEFAULT_SUGGESTIONS_COUNT_IN_STRIP); + mCenterSuggestionWeight = a.getInt( + R.styleable.SuggestionsView_centerSuggestionPercentile, + DEFAULT_CENTER_SUGGESTION_PERCENTILE) / 100.0f; a.recycle(); - mCenterCandidateIndex = mCandidateCountInStrip / 2; + mCenterSuggestionIndex = mSuggestionsCountInStrip / 2; final Resources res = context.getResources(); - mMoreCandidateHint = res.getDrawable(R.drawable.more_suggestions_hint); + mMoreSuggestionsHint = res.getDrawable(R.drawable.more_suggestions_hint); mInvertedForegroundColorSpan = new ForegroundColorSpan(mColorTypedWord ^ 0x00ffffff); mInvertedBackgroundColorSpan = new BackgroundColorSpan(mColorTypedWord); final LayoutInflater inflater = LayoutInflater.from(context); - mWordToSaveView = (TextView)inflater.inflate(R.layout.candidate_word, null); - mHintToSaveView = (TextView)inflater.inflate(R.layout.candidate_word, null); + mWordToSaveView = (TextView)inflater.inflate(R.layout.suggestion_word, null); + mHintToSaveView = (TextView)inflater.inflate(R.layout.suggestion_word, null); mHintToSaveText = context.getText(R.string.hint_add_to_dictionary); } - private CharSequence getStyledCandidateWord(SuggestedWords suggestions, int pos) { + private CharSequence getStyledSuggestionWord(SuggestedWords suggestions, int pos) { final CharSequence word = suggestions.getWord(pos); final boolean isAutoCorrect = pos == 1 && willAutoCorrect(suggestions); final boolean isTypedWordValid = pos == 0 && suggestions.mTypedWordValid; @@ -259,24 +259,24 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo // TODO: This works for 3 suggestions. Revisit this algorithm when there are 5 or more // suggestions. final int centerPos = willAutoCorrect(suggestions) ? 1 : 0; - if (index == mCenterCandidateIndex) { + if (index == mCenterSuggestionIndex) { return centerPos; } else if (index == centerPos) { - return mCenterCandidateIndex; + return mCenterSuggestionIndex; } else { return index; } } - private int getCandidateTextColor(int index, SuggestedWords suggestions, int pos) { + private int getSuggestionTextColor(int index, SuggestedWords suggestions, int pos) { // TODO: Need to revisit this logic with bigram suggestions - final boolean isSuggestedCandidate = (pos != 0); + final boolean isSuggested = (pos != 0); final int color; - if (index == mCenterCandidateIndex && willAutoCorrect(suggestions)) { + if (index == mCenterSuggestionIndex && willAutoCorrect(suggestions)) { color = mColorAutoCorrect; - } else if (isSuggestedCandidate) { - color = mColorSuggestedCandidate; + } else if (isSuggested) { + color = mColorSuggested; } else { color = mColorTypedWord; } @@ -312,7 +312,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo return; } - final int countInStrip = mCandidateCountInStrip; + final int countInStrip = mSuggestionsCountInStrip; setupTexts(suggestions, countInStrip); mMoreSuggestionsAvailable = (suggestions.size() > countInStrip); int x = 0; @@ -321,34 +321,34 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo if (index != 0) { final View divider = mDividers.get(pos); - // Add divider if this isn't the left most suggestion in candidate strip. + // Add divider if this isn't the left most suggestion in suggestions strip. stripView.addView(divider); x += divider.getMeasuredWidth(); } final CharSequence styled = mTexts.get(pos); final TextView word = mWords.get(pos); - if (index == mCenterCandidateIndex && mMoreSuggestionsAvailable) { + if (index == mCenterSuggestionIndex && mMoreSuggestionsAvailable) { // TODO: This "more suggestions hint" should have nicely designed icon. word.setCompoundDrawablesWithIntrinsicBounds( - null, null, null, mMoreCandidateHint); + null, null, null, mMoreSuggestionsHint); // HACK: To align with other TextView that has no compound drawables. - word.setCompoundDrawablePadding(-mMoreCandidateHint.getIntrinsicHeight()); + word.setCompoundDrawablePadding(-mMoreSuggestionsHint.getIntrinsicHeight()); } else { word.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null); } - // Disable this candidate if the suggestion is null or empty. + // Disable this suggestion if the suggestion is null or empty. word.setEnabled(!TextUtils.isEmpty(styled)); - word.setTextColor(getCandidateTextColor(index, suggestions, pos)); - final int width = getCandidateWidth(index, stripWidth); + word.setTextColor(getSuggestionTextColor(index, suggestions, pos)); + final int width = getSuggestionWidth(index, stripWidth); final CharSequence text = getEllipsizedText(styled, width, word.getPaint()); final float scaleX = word.getTextScaleX(); word.setText(text); // TextView.setText() resets text scale x to 1.0. word.setTextScaleX(scaleX); stripView.addView(word); setLayoutWeight( - word, getCandidateWeight(index), ViewGroup.LayoutParams.MATCH_PARENT); + word, getSuggestionWeight(index), ViewGroup.LayoutParams.MATCH_PARENT); x += word.getMeasuredWidth(); if (DBG) { @@ -368,19 +368,19 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } } - private int getCandidateWidth(int index, int maxWidth) { - final int paddings = mPadding * mCandidateCountInStrip; - final int dividers = mDividerWidth * (mCandidateCountInStrip - 1); + private int getSuggestionWidth(int index, int maxWidth) { + final int paddings = mPadding * mSuggestionsCountInStrip; + final int dividers = mDividerWidth * (mSuggestionsCountInStrip - 1); final int availableWidth = maxWidth - paddings - dividers; - return (int)(availableWidth * getCandidateWeight(index)); + return (int)(availableWidth * getSuggestionWeight(index)); } - private float getCandidateWeight(int index) { - if (index == mCenterCandidateIndex) { - return mCenterCandidateWeight; + private float getSuggestionWeight(int index) { + if (index == mCenterSuggestionIndex) { + return mCenterSuggestionWeight; } else { // TODO: Revisit this for cases of 5 or more suggestions - return (1.0f - mCenterCandidateWeight) / (mCandidateCountInStrip - 1); + return (1.0f - mCenterSuggestionWeight) / (mSuggestionsCountInStrip - 1); } } @@ -388,7 +388,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mTexts.clear(); final int count = Math.min(suggestions.size(), countInStrip); for (int pos = 0; pos < count; pos++) { - final CharSequence styled = getStyledCandidateWord(suggestions, pos); + final CharSequence styled = getStyledSuggestionWord(suggestions, pos); mTexts.add(styled); } for (int pos = count; pos < countInStrip; pos++) { @@ -401,7 +401,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final int countInStrip = Math.min(suggestions.size(), PUNCTUATIONS_IN_STRIP); for (int index = 0; index < countInStrip; index++) { if (index != 0) { - // Add divider if this isn't the left most suggestion in candidate strip. + // Add divider if this isn't the left most suggestion in suggestions strip. stripView.addView(mDividers.get(index)); } @@ -413,7 +413,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo word.setTextScaleX(1.0f); word.setCompoundDrawables(null, null, null, null); stripView.addView(word); - setLayoutWeight(word, 1.0f, mCandidateStripHeight); + setLayoutWeight(word, 1.0f, mSuggestionsStripHeight); } mMoreSuggestionsAvailable = false; } @@ -424,14 +424,14 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final TextView wordView = mWordToSaveView; wordView.setTextColor(mColorTypedWord); - final int wordWidth = (int)(width * mCenterCandidateWeight); + final int wordWidth = (int)(width * mCenterSuggestionWeight); final CharSequence text = getEllipsizedText(word, wordWidth, wordView.getPaint()); final float wordScaleX = wordView.getTextScaleX(); wordView.setTag(word); wordView.setText(text); wordView.setTextScaleX(wordScaleX); stripView.addView(wordView); - setLayoutWeight(wordView, mCenterCandidateWeight, ViewGroup.LayoutParams.MATCH_PARENT); + setLayoutWeight(wordView, mCenterSuggestionWeight, ViewGroup.LayoutParams.MATCH_PARENT); stripView.addView(mDividers.get(0)); @@ -443,56 +443,56 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo hintView.setTextScaleX(hintScaleX); stripView.addView(hintView); setLayoutWeight( - hintView, 1.0f - mCenterCandidateWeight, ViewGroup.LayoutParams.MATCH_PARENT); + hintView, 1.0f - mCenterSuggestionWeight, ViewGroup.LayoutParams.MATCH_PARENT); } } /** - * Construct a CandidateView for showing suggested words for completion. + * Construct a {@link SuggestionsView} for showing suggested words for completion. * @param context * @param attrs */ - public CandidateView(Context context, AttributeSet attrs) { - this(context, attrs, R.attr.candidateViewStyle); + public SuggestionsView(Context context, AttributeSet attrs) { + this(context, attrs, R.attr.suggestionsViewStyle); } - public CandidateView(Context context, AttributeSet attrs, int defStyle) { + public SuggestionsView(Context context, AttributeSet attrs, int defStyle) { // Note: Up to version 10 (Gingerbread) of the API, LinearLayout doesn't have 3-argument // constructor. // TODO: Call 3-argument constructor, super(context, attrs, defStyle), when we abandon // backward compatibility with the version 10 or earlier of the API. super(context, attrs); - if (defStyle != R.attr.candidateViewStyle) { + if (defStyle != R.attr.suggestionsViewStyle) { throw new IllegalArgumentException( - "can't accept defStyle other than R.attr.candidateViewStyle: defStyle=" + "can't accept defStyle other than R.attr.suggestionsViewStyle: defStyle=" + defStyle); } setBackgroundDrawable(LinearLayoutCompatUtils.getBackgroundDrawable( - context, attrs, defStyle, R.style.CandidateViewStyle)); + context, attrs, defStyle, R.style.SuggestionsViewStyle)); final LayoutInflater inflater = LayoutInflater.from(context); - inflater.inflate(R.layout.candidates_strip, this); + inflater.inflate(R.layout.suggestions_strip, this); mPreviewPopup = new PopupWindow(context); - mPreviewText = (TextView) inflater.inflate(R.layout.candidate_preview, null); + mPreviewText = (TextView) inflater.inflate(R.layout.suggestion_preview, null); mPreviewPopup.setWindowLayoutMode( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); mPreviewPopup.setContentView(mPreviewText); mPreviewPopup.setBackgroundDrawable(null); - mCandidatesPlacer = (ViewGroup)findViewById(R.id.candidates_placer); - mCandidatesStrip = (ViewGroup)findViewById(R.id.candidates_strip); + mSuggestionsPlacer = (ViewGroup)findViewById(R.id.suggestions_placer); + mSuggestionsStrip = (ViewGroup)findViewById(R.id.suggestions_strip); for (int pos = 0; pos < MAX_SUGGESTIONS; pos++) { - final TextView word = (TextView)inflater.inflate(R.layout.candidate_word, null); + final TextView word = (TextView)inflater.inflate(R.layout.suggestion_word, null); word.setTag(pos); word.setOnClickListener(this); word.setOnLongClickListener(this); mWords.add(word); - final View divider = inflater.inflate(R.layout.candidate_divider, null); + final View divider = inflater.inflate(R.layout.suggestion_divider, null); divider.setTag(pos); divider.setOnClickListener(this); mDividers.add(divider); - mInfos.add((TextView)inflater.inflate(R.layout.candidate_info, null)); + mInfos.add((TextView)inflater.inflate(R.layout.suggestion_info, null)); } mStripParams = new SuggestionsStripParams(context, attrs, defStyle, mWords, mDividers, @@ -534,7 +534,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo if (mSuggestions.size() == 0) return; - mStripParams.layout(mSuggestions, mCandidatesStrip, mCandidatesPlacer, getWidth()); + mStripParams.layout(mSuggestions, mSuggestionsStrip, mSuggestionsPlacer, getWidth()); } private static CharSequence getDebugInfo(SuggestedWords suggestions, int pos) { @@ -632,13 +632,13 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } public boolean isShowingAddToDictionaryHint() { - return mCandidatesStrip.getChildCount() > 0 - && mCandidatesStrip.getChildAt(0) == mStripParams.mWordToSaveView; + return mSuggestionsStrip.getChildCount() > 0 + && mSuggestionsStrip.getChildAt(0) == mStripParams.mWordToSaveView; } public void showAddToDictionaryHint(CharSequence word) { clear(); - mStripParams.layoutAddToDictionaryHint(word, mCandidatesStrip, getWidth()); + mStripParams.layoutAddToDictionaryHint(word, mSuggestionsStrip, getWidth()); } public boolean dismissAddToDictionaryHint() { @@ -655,9 +655,9 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo public void clear() { mShowingAutoCorrectionInverted = false; - mCandidatesPlacer.removeAllViews(); - mCandidatesPlacer.addView(mCandidatesStrip); - mCandidatesStrip.removeAllViews(); + mSuggestionsPlacer.removeAllViews(); + mSuggestionsPlacer.addView(mSuggestionsStrip); + mSuggestionsStrip.removeAllViews(); mMoreSuggestionsWindow.dismiss(); } @@ -736,7 +736,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo // TODO: Revise how we determine the height final int maxHeight = dm.heightPixels - mKeyboardView.getHeight() - getHeight() * 3; final MoreSuggestions.Builder builder = mMoreSuggestionsBuilder; - builder.layout(mSuggestions, params.mCandidateCountInStrip, maxWidth, maxHeight); + builder.layout(mSuggestions, params.mSuggestionsCountInStrip, maxWidth, maxHeight); mMoreSuggestionsView.setKeyboard(builder.build()); container.measure( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); diff --git a/java/src/com/android/inputmethod/latin/Utils.java b/java/src/com/android/inputmethod/latin/Utils.java index 60a4cfb389c16a52b2d8384b53b974fd75443fb8..6263ebefad2eb43e7a39e56c8456dc7adf9f87ad 100644 --- a/java/src/com/android/inputmethod/latin/Utils.java +++ b/java/src/com/android/inputmethod/latin/Utils.java @@ -16,15 +16,7 @@ package com.android.inputmethod.latin; -import com.android.inputmethod.compat.InputMethodInfoCompatWrapper; -import com.android.inputmethod.compat.InputMethodManagerCompatWrapper; -import com.android.inputmethod.compat.InputMethodSubtypeCompatWrapper; -import com.android.inputmethod.compat.InputTypeCompatUtils; -import com.android.inputmethod.keyboard.Keyboard; -import com.android.inputmethod.keyboard.KeyboardId; - import android.content.Context; -import android.content.res.Configuration; import android.content.res.Resources; import android.inputmethodservice.InputMethodService; import android.os.AsyncTask; @@ -37,6 +29,13 @@ import android.text.format.DateUtils; import android.util.Log; import android.view.inputmethod.EditorInfo; +import com.android.inputmethod.compat.InputMethodInfoCompatWrapper; +import com.android.inputmethod.compat.InputMethodManagerCompatWrapper; +import com.android.inputmethod.compat.InputMethodSubtypeCompatWrapper; +import com.android.inputmethod.compat.InputTypeCompatUtils; +import com.android.inputmethod.keyboard.Keyboard; +import com.android.inputmethod.keyboard.KeyboardId; + import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; @@ -47,7 +46,6 @@ import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; -import java.util.HashMap; import java.util.List; import java.util.Locale; @@ -175,21 +173,21 @@ public class Utils { // If user selected aggressive auto correction mode, there is no need to use the safety // net. if (suggest.isAggressiveAutoCorrectionMode()) return false; - CharSequence typedWord = suggestions.getWord(0); + final CharSequence typedWord = suggestions.getWord(0); // If the length of typed word is less than MINIMUM_SAFETY_NET_CHAR_LENGTH, // we should not use net because relatively edit distance can be big. if (typedWord.length() < MINIMUM_SAFETY_NET_CHAR_LENGTH) return false; - CharSequence candidateWord = suggestions.getWord(1); + final CharSequence suggestionWord = suggestions.getWord(1); final int typedWordLength = typedWord.length(); final int maxEditDistanceOfNativeDictionary = typedWordLength < 5 ? 2 : typedWordLength / 2; - final int distance = Utils.editDistance(typedWord, candidateWord); + final int distance = Utils.editDistance(typedWord, suggestionWord); if (DBG) { Log.d(TAG, "Autocorrected edit distance = " + distance + ", " + maxEditDistanceOfNativeDictionary); } if (distance > maxEditDistanceOfNativeDictionary) { if (DBG) { - Log.d(TAG, "Safety net: before = " + typedWord + ", after = " + candidateWord); + Log.d(TAG, "Safety net: before = " + typedWord + ", after = " + suggestionWord); Log.w(TAG, "(Error) The edit distance of this correction exceeds limit. " + "Turning off auto-correction."); } @@ -717,7 +715,7 @@ public class Utils { // Don't cache suggestions.size(), since we may be removing items while (i < suggestions.size()) { final CharSequence cur = suggestions.get(i); - // Compare each candidate with each previous candidate + // Compare each suggestion with each previous suggestion for (int j = 0; j < i; j++) { CharSequence previous = suggestions.get(j); if (TextUtils.equals(cur, previous)) {