From ddb61ea461b920d87be4ad78c8a36eec1013b965 Mon Sep 17 00:00:00 2001 From: "Tadashi G. Takaoka" Date: Mon, 6 Jun 2011 17:23:18 +0900 Subject: Separate candidate divider from candidate view This change is one of the preparations for suggestion strip redesign. Bug: 4175031 Change-Id: Ia0dc487c11c3005ef19b87ec0efcc18e48411f76 --- java/src/com/android/inputmethod/latin/CandidateView.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'java/src/com/android/inputmethod/latin/CandidateView.java') diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/CandidateView.java index abdf30e6b..6c6eb72bb 100644 --- a/java/src/com/android/inputmethod/latin/CandidateView.java +++ b/java/src/com/android/inputmethod/latin/CandidateView.java @@ -16,8 +16,6 @@ package com.android.inputmethod.latin; -import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; - import android.content.Context; import android.content.res.Resources; import android.graphics.Color; @@ -40,11 +38,12 @@ import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnLongClickListener; import android.view.ViewGroup; -import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.PopupWindow; import android.widget.TextView; +import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; + import java.util.ArrayList; import java.util.List; @@ -57,6 +56,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private static final boolean DBG = LatinImeLogger.sDBG; private final ArrayList mWords = new ArrayList(); + private final ArrayList mDividers = new ArrayList(); private final boolean mConfigCandidateHighlightFontColorEnabled; private final CharacterStyle mInvertedForegroundColorSpan; private final CharacterStyle mInvertedBackgroundColorSpan; @@ -148,10 +148,11 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo tv.setOnClickListener(this); if (i == 0) tv.setOnLongClickListener(this); - ImageView divider = (ImageView)v.findViewById(R.id.candidate_divider); - // Do not display divider of first candidate. - divider.setVisibility(i == 0 ? INVISIBLE : VISIBLE); mWords.add(v); + if (i > 0) { + View divider = inflater.inflate(R.layout.candidate_divider, null); + mDividers.add(divider); + } } scrollTo(0, getScrollY()); @@ -237,6 +238,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } else { dv.setVisibility(GONE); } + if (i > 0) + addView(mDividers.get(i - 1)); addView(v); } -- cgit v1.2.3-83-g751a From f20eb55d4f8063f89c6c0abb3af3029fe23cb845 Mon Sep 17 00:00:00 2001 From: "Tadashi G. Takaoka" Date: Tue, 7 Jun 2011 12:30:28 +0900 Subject: Fix NPE introduced by Ia0dc487c Bug: 4553273 Change-Id: Iaf7a969b2c96750070a296791108d67887d613e4 --- java/src/com/android/inputmethod/latin/CandidateView.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'java/src/com/android/inputmethod/latin/CandidateView.java') diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/CandidateView.java index 6c6eb72bb..fe3c72f4c 100644 --- a/java/src/com/android/inputmethod/latin/CandidateView.java +++ b/java/src/com/android/inputmethod/latin/CandidateView.java @@ -278,7 +278,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo setSuggestions(builder.build()); mShowingAddToDictionary = true; // Disable R.string.hint_add_to_dictionary button - TextView tv = (TextView)getChildAt(1).findViewById(R.id.candidate_word); + TextView tv = (TextView)mWords.get(1).findViewById(R.id.candidate_word); tv.setClickable(false); } @@ -311,7 +311,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo previewText.setText(word); previewText.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); - View v = getChildAt(index); + View v = mWords.get(index); final int[] offsetInWindow = new int[2]; v.getLocationInWindow(offsetInWindow); final int posX = offsetInWindow[0]; -- cgit v1.2.3-83-g751a From 1e273fa6d1e8babfebebbbe331d87d3854755e7f Mon Sep 17 00:00:00 2001 From: "Tadashi G. Takaoka" Date: Tue, 7 Jun 2011 17:18:53 +0900 Subject: Separate debug information display from candidate view This change is one of the preparations for suggestion strip redesign. Bug: 4175031 Change-Id: I82675936773ed6cf132a52486909ff21af828256 --- java/res/layout/candidate.xml | 33 ++--- java/res/layout/candidate_divider.xml | 1 - java/res/values/colors.xml | 6 +- .../android/inputmethod/latin/CandidateView.java | 146 +++++++++++---------- 4 files changed, 89 insertions(+), 97 deletions(-) (limited to 'java/src/com/android/inputmethod/latin/CandidateView.java') diff --git a/java/res/layout/candidate.xml b/java/res/layout/candidate.xml index aa2845fb4..8437bf90d 100644 --- a/java/res/layout/candidate.xml +++ b/java/res/layout/candidate.xml @@ -18,31 +18,14 @@ */ --> - -