From 070760dc5abdb9a850a94c509eeb9f486515af59 Mon Sep 17 00:00:00 2001 From: "Tadashi G. Takaoka" <takaoka@google.com> Date: Mon, 13 Jun 2011 14:46:37 +0900 Subject: [PATCH] Clean up candidate strip view hierarchy Bug: 4175031 Change-Id: I8073739ac7624d2c0a111c5ef7043d8766162a83 --- java/res/layout-sw768dp/candidates.xml | 55 ------------------- java/res/layout/candidate.xml | 6 +- java/res/layout/candidates.xml | 46 ---------------- java/res/layout/input_view.xml | 40 ++++++++++++-- .../keyboard/KeyboardSwitcher.java | 3 +- .../inputmethod/latin/CandidateView.java | 4 +- 6 files changed, 39 insertions(+), 115 deletions(-) delete mode 100644 java/res/layout-sw768dp/candidates.xml delete mode 100644 java/res/layout/candidates.xml diff --git a/java/res/layout-sw768dp/candidates.xml b/java/res/layout-sw768dp/candidates.xml deleted file mode 100644 index 93b0304229..0000000000 --- a/java/res/layout-sw768dp/candidates.xml +++ /dev/null @@ -1,55 +0,0 @@ -<?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. -*/ ---> - -<LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" - android:id="@+id/candidates_container" - android:orientation="horizontal" - android:gravity="bottom" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:minHeight="@dimen/candidate_strip_minimum_height" -> - <!-- 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. --> - <LinearLayout - android:orientation="horizontal" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:paddingRight="@dimen/candidate_strip_padding" - android:paddingLeft="@dimen/candidate_strip_padding" - style="?attr/suggestionsStripBackgroundStyle" - > - <HorizontalScrollView - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:fadingEdge="horizontal" - android:fadingEdgeLength="@dimen/candidate_strip_fading_edge_length" - android:scrollbars="none" - > - <com.android.inputmethod.latin.CandidateView - android:id="@+id/candidates" - android:layout_width="match_parent" - android:layout_height="@dimen/candidate_strip_height" - android:gravity="center_vertical" /> - </HorizontalScrollView> - </LinearLayout> -</LinearLayout> diff --git a/java/res/layout/candidate.xml b/java/res/layout/candidate.xml index 8437bf90db..94ae2b44e1 100644 --- a/java/res/layout/candidate.xml +++ b/java/res/layout/candidate.xml @@ -21,11 +21,7 @@ <Button xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" - android:layout_height="match_parent" + android:layout_height="wrap_content" android:minWidth="@dimen/candidate_min_width" android:textSize="@dimen/candidate_text_size" - android:textColor="@color/candidate_typed_word" - android:focusable="true" - android:clickable="true" - android:gravity="center_vertical|center_horizontal" style="?attr/suggestionBackgroundStyle" /> diff --git a/java/res/layout/candidates.xml b/java/res/layout/candidates.xml deleted file mode 100644 index 2bcafc9853..0000000000 --- a/java/res/layout/candidates.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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. -*/ ---> - -<LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" - android:id="@+id/candidates_container" - android:orientation="horizontal" - android:gravity="bottom" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:minHeight="@dimen/candidate_strip_minimum_height" - android:paddingRight="@dimen/candidate_strip_padding" - android:paddingLeft="@dimen/candidate_strip_padding" -> - <HorizontalScrollView - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:fadingEdge="horizontal" - android:fadingEdgeLength="@dimen/candidate_strip_fading_edge_length" - android:scrollbars="none" - style="?attr/suggestionsStripBackgroundStyle" - > - <com.android.inputmethod.latin.CandidateView - android:id="@+id/candidates" - android:layout_width="match_parent" - android:layout_height="@dimen/candidate_strip_height" - android:gravity="center_vertical" /> - </HorizontalScrollView> -</LinearLayout> diff --git a/java/res/layout/input_view.xml b/java/res/layout/input_view.xml index c8820b02e5..5da1a4826e 100644 --- a/java/res/layout/input_view.xml +++ b/java/res/layout/input_view.xml @@ -25,12 +25,42 @@ android:layout_width="match_parent" android:layout_height="wrap_content" > - <include - layout="@layout/candidates" /> + <!-- 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. --> + <LinearLayout + android:id="@+id/candidates_container" + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="wrap_content" + style="?attr/suggestionsStripBackgroundStyle" + > + <View + android:layout_width="@dimen/candidate_strip_padding" + android:layout_height="@dimen/candidate_strip_height" + style="?attr/suggestionsStripBackgroundStyle" /> + <HorizontalScrollView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:fadingEdge="horizontal" + android:fadingEdgeLength="@dimen/candidate_strip_fading_edge_length" + android:scrollbars="none" + > + <com.android.inputmethod.latin.CandidateView + android:id="@+id/candidates" + android:layout_width="match_parent" + android:layout_height="@dimen/candidate_strip_height" + android:gravity="center_vertical" /> + </HorizontalScrollView> + <View + android:layout_width="@dimen/candidate_strip_padding" + android:layout_height="@dimen/candidate_strip_height" + style="?attr/suggestionsStripBackgroundStyle" /> + </LinearLayout> + <com.android.inputmethod.keyboard.LatinKeyboardView - android:id="@+id/latin_keyboard_view" + android:id="@+id/keyboard_view" android:layout_alignParentBottom="true" android:layout_width="match_parent" - android:layout_height="wrap_content" - android:padding="0dip" /> + android:layout_height="wrap_content" /> </LinearLayout> diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java index 2512118d48..7c68c93f24 100644 --- a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java @@ -745,8 +745,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } } - mKeyboardView = (LatinKeyboardView) mCurrentInputView.findViewById( - R.id.latin_keyboard_view); + mKeyboardView = (LatinKeyboardView) mCurrentInputView.findViewById(R.id.keyboard_view); mKeyboardView.setOnKeyboardActionListener(mInputMethodService); mThemeIndex = themeIndex; return mCurrentInputView; diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/CandidateView.java index a8381020f1..b4f6b2c918 100644 --- a/java/src/com/android/inputmethod/latin/CandidateView.java +++ b/java/src/com/android/inputmethod/latin/CandidateView.java @@ -156,7 +156,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo tv.setOnLongClickListener(this); mWords.add(tv); if (i > 0) { - View divider = inflater.inflate(R.layout.candidate_divider, null); + final View divider = inflater.inflate(R.layout.candidate_divider, null); mDividers.add(divider); } } @@ -198,7 +198,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final int color; if (isAutoCorrect && mConfigCandidateHighlightFontColorEnabled) { color = mColorAutoCorrect; - } else if (isSuggestedCandidate) { + } else if (isSuggestedCandidate && mConfigCandidateHighlightFontColorEnabled) { color = mColorSuggestedCandidate; } else { color = mColorTypedWord; -- GitLab