aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/LatinIME.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2010-12-06 21:26:38 +0900
committerTadashi G. Takaoka <takaoka@google.com>2010-12-08 16:55:36 +0900
commite49bd1c43acad08f103b38430a8bbcba23f325b3 (patch)
tree8c4cee6b9ab4340ff73b0ebf2ff151bbacab921b /java/src/com/android/inputmethod/latin/LatinIME.java
parentada7ad2b0d0e0f1c908104fd4c7b6fda8ceab87f (diff)
downloadlatinime-e49bd1c43acad08f103b38430a8bbcba23f325b3.tar.gz
latinime-e49bd1c43acad08f103b38430a8bbcba23f325b3.tar.xz
latinime-e49bd1c43acad08f103b38430a8bbcba23f325b3.zip
Implement CandidateView using HorizontalScrollView
This change re-implements CandidateView using HorizontalScrollView and customized Button, so that the candidate strip can be flingable. This change also introduces the following features. - Highlighting candidate strip and space bar is configurable by @bool/config_candidate_highlight_enabled. - Candidate strip can be centered with left/right padding if @dimen/candidate_strip_padding size is greater than 0. - Candidate text size is configurable by @dimen/candidate_text_size. Bug: 1575885 Bug: 3230726 Change-Id: Iedf78ff31bc9f2f6291a8e8fb7faa0e6b961dd6d
Diffstat (limited to 'java/src/com/android/inputmethod/latin/LatinIME.java')
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java20
1 files changed, 15 insertions, 5 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 3089153ad..16a369a9e 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -51,8 +51,10 @@ import android.util.DisplayMetrics;
import android.util.Log;
import android.util.PrintWriterPrinter;
import android.util.Printer;
+import android.view.Gravity;
import android.view.HapticFeedbackConstants;
import android.view.KeyEvent;
+import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewParent;
@@ -65,6 +67,7 @@ import android.view.inputmethod.ExtractedTextRequest;
import android.view.inputmethod.InputConnection;
import android.view.inputmethod.InputMethodManager;
import android.view.inputmethod.InputMethodSubtype;
+import android.widget.HorizontalScrollView;
import android.widget.LinearLayout;
import java.io.FileDescriptor;
@@ -127,7 +130,7 @@ public class LatinIME extends InputMethodService
SUGGESTION_VISIBILILTY_HIDE_VALUE
};
- private LinearLayout mCandidateViewContainer;
+ private View mCandidateViewContainer;
private CandidateView mCandidateView;
private Suggest mSuggest;
private CompletionInfo[] mCompletions;
@@ -496,12 +499,19 @@ public class LatinIME extends InputMethodService
@Override
public View onCreateCandidatesView() {
- mCandidateViewContainer = (LinearLayout) getLayoutInflater().inflate(
- R.layout.candidates, null);
- mCandidateView = (CandidateView) mCandidateViewContainer.findViewById(R.id.candidates);
+ LayoutInflater inflater = getLayoutInflater();
+ LinearLayout container = (LinearLayout)inflater.inflate(R.layout.candidates, null);
+ mCandidateViewContainer = container;
+ if (container.getPaddingRight() != 0) {
+ HorizontalScrollView scrollView =
+ (HorizontalScrollView) container.findViewById(R.id.candidates_scroll_view);
+ scrollView.setOverScrollMode(View.OVER_SCROLL_NEVER);
+ container.setGravity(Gravity.CENTER_HORIZONTAL);
+ }
+ mCandidateView = (CandidateView) container.findViewById(R.id.candidates);
mCandidateView.setService(this);
setCandidatesViewShown(true);
- return mCandidateViewContainer;
+ return container;
}
private static boolean isPasswordVariation(int variation) {