diff options
| author | Yohei Yukawa <yukawa@google.com> | 2016-04-10 00:39:28 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-04-10 00:39:29 +0000 |
| commit | 6feeedc72b582f042986218185877ddda49c867b (patch) | |
| tree | 0ee1a2513ba1c559ec5795f36950a8a951b2c391 /core/java/android | |
| parent | 8ed9ece93dca5c7266ca7d9c5fabe7c9a6b214e7 (diff) | |
| parent | 757224008e6187bbb04c89fadbe6921bf8ceda9f (diff) | |
Merge "Revert "Customizes input extract edit view for Wear"" into nyc-dev
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/inputmethodservice/CompactExtractEditLayout.java | 103 | ||||
| -rw-r--r-- | core/java/android/inputmethodservice/InputMethodService.java | 53 |
2 files changed, 7 insertions, 149 deletions
diff --git a/core/java/android/inputmethodservice/CompactExtractEditLayout.java b/core/java/android/inputmethodservice/CompactExtractEditLayout.java deleted file mode 100644 index f994c65f6935..000000000000 --- a/core/java/android/inputmethodservice/CompactExtractEditLayout.java +++ /dev/null @@ -1,103 +0,0 @@ -package android.inputmethodservice; - -import android.content.Context; -import android.content.res.Resources; -import android.annotation.FractionRes; -import android.util.AttributeSet; -import android.util.DisplayMetrics; -import android.view.Gravity; -import android.view.View; -import android.view.ViewGroup; -import android.widget.LinearLayout; - -/** - * A special purpose layout for the editor extract view for tiny (sub 250dp) screens. - * The layout is based on sizes proportional to screen pixel size to provide for the - * best layout fidelity on varying pixel sizes and densities. - * - * @hide - */ -public class CompactExtractEditLayout extends LinearLayout { - private View mInputExtractEditText; - private View mInputExtractAccessories; - private View mInputExtractAction; - private boolean mPerformLayoutChanges; - - public CompactExtractEditLayout(Context context) { - super(context); - } - - public CompactExtractEditLayout(Context context, AttributeSet attrs) { - super(context, attrs); - } - - public CompactExtractEditLayout(Context context, AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - } - - @Override - protected void onFinishInflate() { - super.onFinishInflate(); - mInputExtractEditText = findViewById(com.android.internal.R.id.inputExtractEditText); - mInputExtractAccessories = findViewById(com.android.internal.R.id.inputExtractAccessories); - mInputExtractAction = findViewById(com.android.internal.R.id.inputExtractAction); - - if (mInputExtractEditText != null && mInputExtractAccessories != null - && mInputExtractAction != null) { - mPerformLayoutChanges = true; - } - } - - private int applyFractionInt(@FractionRes int fraction, int whole) { - return Math.round(getResources().getFraction(fraction, whole, whole)); - } - - private static void setLayoutHeight(View v, int px) { - ViewGroup.LayoutParams lp = v.getLayoutParams(); - lp.height = px; - v.setLayoutParams(lp); - } - - private static void setLayoutMarginBottom(View v, int px) { - ViewGroup.MarginLayoutParams lp = (MarginLayoutParams) v.getLayoutParams(); - lp.bottomMargin = px; - v.setLayoutParams(lp); - } - - private void applyProportionalLayout(int screenWidthPx, int screenHeightPx) { - if (getResources().getConfiguration().isScreenRound()) { - setGravity(Gravity.BOTTOM); - } - setLayoutHeight(this, applyFractionInt( - com.android.internal.R.fraction.input_extract_layout_height, screenHeightPx)); - - setPadding( - applyFractionInt(com.android.internal.R.fraction.input_extract_layout_padding_left, - screenWidthPx), - 0, - applyFractionInt(com.android.internal.R.fraction.input_extract_layout_padding_right, - screenWidthPx), - 0); - - setLayoutMarginBottom(mInputExtractEditText, - applyFractionInt(com.android.internal.R.fraction.input_extract_text_margin_bottom, - screenHeightPx)); - - setLayoutMarginBottom(mInputExtractAccessories, - applyFractionInt(com.android.internal.R.fraction.input_extract_action_margin_bottom, - screenHeightPx)); - } - - @Override - protected void onAttachedToWindow() { - super.onAttachedToWindow(); - if (mPerformLayoutChanges) { - Resources res = getResources(); - DisplayMetrics dm = res.getDisplayMetrics(); - int heightPixels = dm.heightPixels; - int widthPixels = dm.widthPixels; - applyProportionalLayout(widthPixels, heightPixels); - } - } -} - diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java index 085b97cc0f6d..cc201bc78bb5 100644 --- a/core/java/android/inputmethodservice/InputMethodService.java +++ b/core/java/android/inputmethodservice/InputMethodService.java @@ -68,10 +68,9 @@ import android.view.inputmethod.InputConnection; import android.view.inputmethod.InputMethod; import android.view.inputmethod.InputMethodManager; import android.view.inputmethod.InputMethodSubtype; +import android.widget.Button; import android.widget.FrameLayout; -import android.widget.ImageButton; import android.widget.LinearLayout; -import android.widget.TextView; import java.io.FileDescriptor; import java.io.PrintWriter; @@ -303,7 +302,7 @@ public class InputMethodService extends AbstractInputMethodService { boolean mExtractViewHidden; ExtractEditText mExtractEditText; ViewGroup mExtractAccessories; - View mExtractAction; + Button mExtractAction; ExtractedText mExtractedText; int mExtractedToken; @@ -1345,7 +1344,7 @@ public class InputMethodService extends AbstractInputMethodService { mExtractEditText = (ExtractEditText)view.findViewById( com.android.internal.R.id.inputExtractEditText); mExtractEditText.setIME(this); - mExtractAction = view.findViewById( + mExtractAction = (Button)view.findViewById( com.android.internal.R.id.inputExtractAction); if (mExtractAction != null) { mExtractAccessories = (ViewGroup)view.findViewById( @@ -2409,35 +2408,7 @@ public class InputMethodService extends AbstractInputMethodService { return getText(com.android.internal.R.string.ime_action_default); } } - - /** - * Return a drawable resource id that can be used as a button icon for the given - * {@link EditorInfo#imeOptions EditorInfo.imeOptions}. - * - * @param imeOptions The value from @link EditorInfo#imeOptions EditorInfo.imeOptions}. - * - * @return Returns a drawable resource id to use. - */ - @DrawableRes - private int getIconForImeAction(int imeOptions) { - switch (imeOptions&EditorInfo.IME_MASK_ACTION) { - case EditorInfo.IME_ACTION_GO: - return com.android.internal.R.drawable.ic_input_extract_action_go; - case EditorInfo.IME_ACTION_SEARCH: - return com.android.internal.R.drawable.ic_input_extract_action_search; - case EditorInfo.IME_ACTION_SEND: - return com.android.internal.R.drawable.ic_input_extract_action_send; - case EditorInfo.IME_ACTION_NEXT: - return com.android.internal.R.drawable.ic_input_extract_action_next; - case EditorInfo.IME_ACTION_DONE: - return com.android.internal.R.drawable.ic_input_extract_action_done; - case EditorInfo.IME_ACTION_PREVIOUS: - return com.android.internal.R.drawable.ic_input_extract_action_previous; - default: - return com.android.internal.R.drawable.ic_input_extract_action_return; - } - } - + /** * Called when the fullscreen-mode extracting editor info has changed, * to determine whether the extracting (extract text and candidates) portion @@ -2488,20 +2459,10 @@ public class InputMethodService extends AbstractInputMethodService { if (hasAction) { mExtractAccessories.setVisibility(View.VISIBLE); if (mExtractAction != null) { - if (mExtractAction instanceof ImageButton) { - ((ImageButton) mExtractAction) - .setImageResource(getIconForImeAction(ei.imeOptions)); - if (ei.actionLabel != null) { - mExtractAction.setContentDescription(ei.actionLabel); - } else { - mExtractAction.setContentDescription(getTextForImeAction(ei.imeOptions)); - } + if (ei.actionLabel != null) { + mExtractAction.setText(ei.actionLabel); } else { - if (ei.actionLabel != null) { - ((TextView) mExtractAction).setText(ei.actionLabel); - } else { - ((TextView) mExtractAction).setText(getTextForImeAction(ei.imeOptions)); - } + mExtractAction.setText(getTextForImeAction(ei.imeOptions)); } mExtractAction.setOnClickListener(mActionClickListener); } |
