diff options
author | 2011-08-26 19:30:57 +0900 | |
---|---|---|
committer | 2011-08-26 20:05:19 +0900 | |
commit | 013ba3e3e785980b74db83ac5ab1e11b438485da (patch) | |
tree | 10210d08630d3d56763616050a874b7549a6d933 /java | |
parent | 7fe084a85620bdb6a849c65dade1e8db36b49e0e (diff) | |
download | latinime-013ba3e3e785980b74db83ac5ab1e11b438485da.tar.gz latinime-013ba3e3e785980b74db83ac5ab1e11b438485da.tar.xz latinime-013ba3e3e785980b74db83ac5ab1e11b438485da.zip |
Move debug information back to suggestions strip
Change-Id: I8cfad5f780a481a251cc4f752bff3cda5ae3ffbe
Diffstat (limited to 'java')
-rw-r--r-- | java/res/layout/candidates_strip.xml | 15 | ||||
-rw-r--r-- | java/src/com/android/inputmethod/latin/CandidateView.java | 20 |
2 files changed, 24 insertions, 11 deletions
diff --git a/java/res/layout/candidates_strip.xml b/java/res/layout/candidates_strip.xml index 46cd691a7..fdb13f73e 100644 --- a/java/res/layout/candidates_strip.xml +++ b/java/res/layout/candidates_strip.xml @@ -22,9 +22,16 @@ xmlns:android="http://schemas.android.com/apk/res/android" xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" > - <LinearLayout - android:id="@+id/candidates_strip" - android:orientation="horizontal" + <!-- Placer for debug information --> + <RelativeLayout + android:id="@+id/candidates_placer" android:layout_width="match_parent" - android:layout_height="match_parent" /> + android:layout_height="match_parent" + > + <LinearLayout + android:id="@+id/candidates_strip" + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + </RelativeLayout> </merge> diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/CandidateView.java index 85870f38e..cf8852983 100644 --- a/java/src/com/android/inputmethod/latin/CandidateView.java +++ b/java/src/com/android/inputmethod/latin/CandidateView.java @@ -64,6 +64,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private static final boolean DBG = LatinImeLogger.sDBG; + private final ViewGroup mCandidatesPlacer; private final ViewGroup mCandidatesStrip; private ViewGroup mCandidatesPane; private ViewGroup mCandidatesPaneContainer; @@ -235,8 +236,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo lastView = info; info.measure(WRAP_CONTENT, WRAP_CONTENT); final int infoWidth = info.getMeasuredWidth(); - FrameLayoutCompatUtils.placeViewAt(info, x - infoWidth, y, infoWidth, - info.getMeasuredHeight()); + FrameLayoutCompatUtils.placeViewAt( + info, x - infoWidth, y, infoWidth, info.getMeasuredHeight()); } } if (x != 0) { @@ -388,7 +389,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo return word; } - public int layout(SuggestedWords suggestions, ViewGroup stripView, ViewGroup paneView, + public int layout(SuggestedWords suggestions, ViewGroup stripView, ViewGroup placer, int stripWidth) { if (suggestions.isPunctuationSuggestions()) { return layoutPunctuationSuggestions(suggestions, stripView); @@ -405,6 +406,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final View divider = mDividers.get(pos); // Add divider if this isn't the left most suggestion in candidate strip. stripView.addView(divider); + x += divider.getMeasuredWidth(); } final CharSequence styled = mTexts.get(pos); @@ -429,18 +431,19 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo word.setTextScaleX(scaleX); stripView.addView(word); setLayoutWeight(word, getCandidateWeight(index), MATCH_PARENT); + x += word.getMeasuredWidth(); if (DBG) { final CharSequence debugInfo = getDebugInfo(suggestions, pos); if (debugInfo != null) { final TextView info = mInfos.get(pos); info.setText(debugInfo); - paneView.addView(info); + placer.addView(info); info.measure(WRAP_CONTENT, WRAP_CONTENT); final int infoWidth = info.getMeasuredWidth(); final int y = info.getMeasuredHeight(); - FrameLayoutCompatUtils.placeViewAt(info, x, 0, infoWidth, y); - x += infoWidth * 2; + FrameLayoutCompatUtils.placeViewAt( + info, x - infoWidth, y, infoWidth, info.getMeasuredHeight()); } } } @@ -559,6 +562,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mPreviewPopup.setContentView(mPreviewText); mPreviewPopup.setBackgroundDrawable(null); + mCandidatesPlacer = (ViewGroup)findViewById(R.id.candidates_placer); mCandidatesStrip = (ViewGroup)findViewById(R.id.candidates_strip); for (int pos = 0; pos < MAX_SUGGESTIONS; pos++) { final TextView word = (TextView)inflater.inflate(R.layout.candidate_word, null); @@ -612,7 +616,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final int width = getWidth(); final int countInStrip = mStripParams.layout( - mSuggestions, mCandidatesStrip, mCandidatesPane, width); + mSuggestions, mCandidatesStrip, mCandidatesPlacer, width); mPaneParams.layout( mSuggestions, mCandidatesPane, countInStrip, mStripParams.getTextColor(), width); } @@ -774,6 +778,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo public void clear() { mShowingAutoCorrectionInverted = false; + mCandidatesPlacer.removeAllViews(); + mCandidatesPlacer.addView(mCandidatesStrip); mCandidatesStrip.removeAllViews(); mCandidatesPane.removeAllViews(); closeCandidatesPane(); |