Loading java/res/layout/emoji_palettes_view.xml +8 −8 Original line number Diff line number Diff line Loading @@ -89,22 +89,22 @@ android:layout_height="0dip" android:layout_weight="1" > <ImageButton android:id="@+id/emoji_keyboard_alphabet" <TextView android:id="@+id/emoji_keyboard_alphabet_left" android:layout_width="0dip" android:layout_weight="0.15" android:layout_height="match_parent" android:src="@drawable/ic_ime_switcher_dark" /> android:gravity="center" android:layout_height="match_parent" /> <ImageButton android:id="@+id/emoji_keyboard_space" android:layout_width="0dip" android:layout_weight="0.70" android:layout_height="match_parent" /> <ImageButton android:id="@+id/emoji_keyboard_alphabet2" <TextView android:id="@+id/emoji_keyboard_alphabet_right" android:layout_width="0dip" android:layout_weight="0.15" android:layout_height="match_parent" android:src="@drawable/ic_ime_switcher_dark" /> android:gravity="center" android:layout_height="match_parent" /> </LinearLayout> </com.android.inputmethod.keyboard.EmojiPalettesView> java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java +32 −15 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Color; import android.graphics.Rect; import android.graphics.Typeface; import android.os.Build; import android.os.CountDownTimer; import android.preference.PreferenceManager; Loading @@ -34,6 +35,7 @@ import android.util.AttributeSet; import android.util.Log; import android.util.Pair; import android.util.SparseArray; import android.util.TypedValue; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; Loading Loading @@ -84,6 +86,8 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange private EmojiPalettesAdapter mEmojiPalettesAdapter; private final EmojiLayoutParams mEmojiLayoutParams; private TextView mAlphabetKeyLeft; private TextView mAlphabetKeyRight; private TabHost mTabHost; private ViewPager mEmojiPager; private int mCurrentPagerPosition = 0; Loading Loading @@ -487,20 +491,23 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange deleteKey.setTag(Constants.CODE_DELETE); deleteKey.setOnTouchListener(mDeleteKeyOnTouchListener); // alphabetKey, alphabetKey2, and spaceKey depend on {@link View.OnClickListener} as well as // {@link View.OnTouchListener}. {@link View.OnTouchListener} is used as the trigger of // key-press, while {@link View.OnClickListener} is used as the trigger of key-release which // does not occur if the event is canceled by moving off the finger from the view. final ImageView alphabetKey = (ImageView)findViewById(R.id.emoji_keyboard_alphabet); alphabetKey.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); alphabetKey.setTag(Constants.CODE_ALPHA_FROM_EMOJI); alphabetKey.setOnTouchListener(this); alphabetKey.setOnClickListener(this); final ImageView alphabetKey2 = (ImageView)findViewById(R.id.emoji_keyboard_alphabet2); alphabetKey2.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); alphabetKey2.setTag(Constants.CODE_ALPHA_FROM_EMOJI); alphabetKey2.setOnTouchListener(this); alphabetKey2.setOnClickListener(this); // {@link #mAlphabetKeyLeft}, {@link #mAlphabetKeyRight, and spaceKey depend on // {@link View.OnClickListener} as well as {@link View.OnTouchListener}. // {@link View.OnTouchListener} is used as the trigger of key-press, while // {@link View.OnClickListener} is used as the trigger of key-release which does not occur // if the event is canceled by moving off the finger from the view. // The text on alphabet keys are set at // {@link #startEmojiPalettes(String,int,float,Typeface)}. mAlphabetKeyLeft = (TextView)findViewById(R.id.emoji_keyboard_alphabet_left); mAlphabetKeyLeft.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); mAlphabetKeyLeft.setTag(Constants.CODE_ALPHA_FROM_EMOJI); mAlphabetKeyLeft.setOnTouchListener(this); mAlphabetKeyLeft.setOnClickListener(this); mAlphabetKeyRight = (TextView)findViewById(R.id.emoji_keyboard_alphabet_right); mAlphabetKeyRight.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); mAlphabetKeyRight.setTag(Constants.CODE_ALPHA_FROM_EMOJI); mAlphabetKeyRight.setOnTouchListener(this); mAlphabetKeyRight.setOnClickListener(this); final ImageView spaceKey = (ImageView)findViewById(R.id.emoji_keyboard_space); spaceKey.setBackgroundResource(mKeyBackgroundId); spaceKey.setTag(Constants.CODE_SPACE); Loading Loading @@ -627,10 +634,20 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange // TODO: } public void startEmojiPalettes() { // Hack: These parameters are hacky. public void startEmojiPalettes(final String switchToAlphaLabel, final int switchToAlphaColor, final float switchToAlphaSize, final Typeface switchToAlphaTypeface) { if (DEBUG_PAGER) { Log.d(TAG, "allocate emoji palettes memory " + mCurrentPagerPosition); } mAlphabetKeyLeft.setText(switchToAlphaLabel); mAlphabetKeyLeft.setTextColor(switchToAlphaColor); mAlphabetKeyLeft.setTextSize(TypedValue.COMPLEX_UNIT_PX, switchToAlphaSize); mAlphabetKeyLeft.setTypeface(switchToAlphaTypeface); mAlphabetKeyRight.setText(switchToAlphaLabel); mAlphabetKeyRight.setTextColor(switchToAlphaColor); mAlphabetKeyRight.setTextSize(TypedValue.COMPLEX_UNIT_PX, switchToAlphaSize); mAlphabetKeyRight.setTypeface(switchToAlphaTypeface); mEmojiPager.setAdapter(mEmojiPalettesAdapter); mEmojiPager.setCurrentItem(mCurrentPagerPosition); } Loading java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +9 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.inputmethod.keyboard; import android.content.Context; import android.content.SharedPreferences; import android.content.res.Resources; import android.graphics.Paint; import android.preference.PreferenceManager; import android.util.Log; import android.view.ContextThemeWrapper; Loading @@ -30,6 +31,7 @@ import com.android.inputmethod.accessibility.AccessibleKeyboardViewProxy; import com.android.inputmethod.compat.InputMethodServiceCompatUtils; import com.android.inputmethod.keyboard.KeyboardLayoutSet.KeyboardLayoutSetException; import com.android.inputmethod.keyboard.internal.KeyboardState; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.InputView; import com.android.inputmethod.latin.LatinIME; import com.android.inputmethod.latin.LatinImeLogger; Loading Loading @@ -74,13 +76,13 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { private MainKeyboardView mKeyboardView; private EmojiPalettesView mEmojiPalettesView; private LatinIME mLatinIME; private Resources mResources; private boolean mIsHardwareAcceleratedDrawingEnabled; private KeyboardState mState; private KeyboardLayoutSet mKeyboardLayoutSet; private SettingsValues mCurrentSettingsValues; private Key mSwitchToAlphaKey; /** mIsAutoCorrectionActive indicates that auto corrected word will be input instead of * what user actually typed. */ Loading @@ -106,7 +108,6 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { private void initInternal(final LatinIME latinIme, final SharedPreferences prefs) { mLatinIME = latinIme; mResources = latinIme.getResources(); mPrefs = prefs; mSubtypeSwitcher = SubtypeSwitcher.getInstance(); mState = new KeyboardState(this); Loading Loading @@ -162,6 +163,8 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { mCurrentSettingsValues = settingsValues; try { mState.onLoadKeyboard(); final Keyboard symbols = mKeyboardLayoutSet.getKeyboard(KeyboardId.ELEMENT_SYMBOLS); mSwitchToAlphaKey = symbols.getKey(Constants.CODE_SWITCH_ALPHA_SYMBOL); } catch (KeyboardLayoutSetException e) { Log.w(TAG, "loading keyboard failed: " + e.mKeyboardId, e.getCause()); LatinImeLogger.logOnException(e.mKeyboardId.toString(), e.getCause()); Loading Loading @@ -287,7 +290,10 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { @Override public void setEmojiKeyboard() { mMainKeyboardFrame.setVisibility(View.GONE); mEmojiPalettesView.startEmojiPalettes(); final Paint paint = mKeyboardView.newLabelPaint(mSwitchToAlphaKey); mEmojiPalettesView.startEmojiPalettes( mSwitchToAlphaKey.getLabel(), paint.getColor(), paint.getTextSize(), paint.getTypeface()); mEmojiPalettesView.setVisibility(View.VISIBLE); } Loading java/src/com/android/inputmethod/keyboard/KeyboardView.java +1 −0 Original line number Diff line number Diff line Loading @@ -582,6 +582,7 @@ public class KeyboardView extends View { paint.setTypeface(mKeyDrawParams.mTypeface); paint.setTextSize(mKeyDrawParams.mLabelSize); } else { paint.setColor(key.selectTextColor(mKeyDrawParams)); paint.setTypeface(key.selectTypeface(mKeyDrawParams)); paint.setTextSize(key.selectTextSize(mKeyDrawParams)); } Loading Loading
java/res/layout/emoji_palettes_view.xml +8 −8 Original line number Diff line number Diff line Loading @@ -89,22 +89,22 @@ android:layout_height="0dip" android:layout_weight="1" > <ImageButton android:id="@+id/emoji_keyboard_alphabet" <TextView android:id="@+id/emoji_keyboard_alphabet_left" android:layout_width="0dip" android:layout_weight="0.15" android:layout_height="match_parent" android:src="@drawable/ic_ime_switcher_dark" /> android:gravity="center" android:layout_height="match_parent" /> <ImageButton android:id="@+id/emoji_keyboard_space" android:layout_width="0dip" android:layout_weight="0.70" android:layout_height="match_parent" /> <ImageButton android:id="@+id/emoji_keyboard_alphabet2" <TextView android:id="@+id/emoji_keyboard_alphabet_right" android:layout_width="0dip" android:layout_weight="0.15" android:layout_height="match_parent" android:src="@drawable/ic_ime_switcher_dark" /> android:gravity="center" android:layout_height="match_parent" /> </LinearLayout> </com.android.inputmethod.keyboard.EmojiPalettesView>
java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java +32 −15 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Color; import android.graphics.Rect; import android.graphics.Typeface; import android.os.Build; import android.os.CountDownTimer; import android.preference.PreferenceManager; Loading @@ -34,6 +35,7 @@ import android.util.AttributeSet; import android.util.Log; import android.util.Pair; import android.util.SparseArray; import android.util.TypedValue; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; Loading Loading @@ -84,6 +86,8 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange private EmojiPalettesAdapter mEmojiPalettesAdapter; private final EmojiLayoutParams mEmojiLayoutParams; private TextView mAlphabetKeyLeft; private TextView mAlphabetKeyRight; private TabHost mTabHost; private ViewPager mEmojiPager; private int mCurrentPagerPosition = 0; Loading Loading @@ -487,20 +491,23 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange deleteKey.setTag(Constants.CODE_DELETE); deleteKey.setOnTouchListener(mDeleteKeyOnTouchListener); // alphabetKey, alphabetKey2, and spaceKey depend on {@link View.OnClickListener} as well as // {@link View.OnTouchListener}. {@link View.OnTouchListener} is used as the trigger of // key-press, while {@link View.OnClickListener} is used as the trigger of key-release which // does not occur if the event is canceled by moving off the finger from the view. final ImageView alphabetKey = (ImageView)findViewById(R.id.emoji_keyboard_alphabet); alphabetKey.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); alphabetKey.setTag(Constants.CODE_ALPHA_FROM_EMOJI); alphabetKey.setOnTouchListener(this); alphabetKey.setOnClickListener(this); final ImageView alphabetKey2 = (ImageView)findViewById(R.id.emoji_keyboard_alphabet2); alphabetKey2.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); alphabetKey2.setTag(Constants.CODE_ALPHA_FROM_EMOJI); alphabetKey2.setOnTouchListener(this); alphabetKey2.setOnClickListener(this); // {@link #mAlphabetKeyLeft}, {@link #mAlphabetKeyRight, and spaceKey depend on // {@link View.OnClickListener} as well as {@link View.OnTouchListener}. // {@link View.OnTouchListener} is used as the trigger of key-press, while // {@link View.OnClickListener} is used as the trigger of key-release which does not occur // if the event is canceled by moving off the finger from the view. // The text on alphabet keys are set at // {@link #startEmojiPalettes(String,int,float,Typeface)}. mAlphabetKeyLeft = (TextView)findViewById(R.id.emoji_keyboard_alphabet_left); mAlphabetKeyLeft.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); mAlphabetKeyLeft.setTag(Constants.CODE_ALPHA_FROM_EMOJI); mAlphabetKeyLeft.setOnTouchListener(this); mAlphabetKeyLeft.setOnClickListener(this); mAlphabetKeyRight = (TextView)findViewById(R.id.emoji_keyboard_alphabet_right); mAlphabetKeyRight.setBackgroundResource(mEmojiFunctionalKeyBackgroundId); mAlphabetKeyRight.setTag(Constants.CODE_ALPHA_FROM_EMOJI); mAlphabetKeyRight.setOnTouchListener(this); mAlphabetKeyRight.setOnClickListener(this); final ImageView spaceKey = (ImageView)findViewById(R.id.emoji_keyboard_space); spaceKey.setBackgroundResource(mKeyBackgroundId); spaceKey.setTag(Constants.CODE_SPACE); Loading Loading @@ -627,10 +634,20 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange // TODO: } public void startEmojiPalettes() { // Hack: These parameters are hacky. public void startEmojiPalettes(final String switchToAlphaLabel, final int switchToAlphaColor, final float switchToAlphaSize, final Typeface switchToAlphaTypeface) { if (DEBUG_PAGER) { Log.d(TAG, "allocate emoji palettes memory " + mCurrentPagerPosition); } mAlphabetKeyLeft.setText(switchToAlphaLabel); mAlphabetKeyLeft.setTextColor(switchToAlphaColor); mAlphabetKeyLeft.setTextSize(TypedValue.COMPLEX_UNIT_PX, switchToAlphaSize); mAlphabetKeyLeft.setTypeface(switchToAlphaTypeface); mAlphabetKeyRight.setText(switchToAlphaLabel); mAlphabetKeyRight.setTextColor(switchToAlphaColor); mAlphabetKeyRight.setTextSize(TypedValue.COMPLEX_UNIT_PX, switchToAlphaSize); mAlphabetKeyRight.setTypeface(switchToAlphaTypeface); mEmojiPager.setAdapter(mEmojiPalettesAdapter); mEmojiPager.setCurrentItem(mCurrentPagerPosition); } Loading
java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +9 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.inputmethod.keyboard; import android.content.Context; import android.content.SharedPreferences; import android.content.res.Resources; import android.graphics.Paint; import android.preference.PreferenceManager; import android.util.Log; import android.view.ContextThemeWrapper; Loading @@ -30,6 +31,7 @@ import com.android.inputmethod.accessibility.AccessibleKeyboardViewProxy; import com.android.inputmethod.compat.InputMethodServiceCompatUtils; import com.android.inputmethod.keyboard.KeyboardLayoutSet.KeyboardLayoutSetException; import com.android.inputmethod.keyboard.internal.KeyboardState; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.InputView; import com.android.inputmethod.latin.LatinIME; import com.android.inputmethod.latin.LatinImeLogger; Loading Loading @@ -74,13 +76,13 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { private MainKeyboardView mKeyboardView; private EmojiPalettesView mEmojiPalettesView; private LatinIME mLatinIME; private Resources mResources; private boolean mIsHardwareAcceleratedDrawingEnabled; private KeyboardState mState; private KeyboardLayoutSet mKeyboardLayoutSet; private SettingsValues mCurrentSettingsValues; private Key mSwitchToAlphaKey; /** mIsAutoCorrectionActive indicates that auto corrected word will be input instead of * what user actually typed. */ Loading @@ -106,7 +108,6 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { private void initInternal(final LatinIME latinIme, final SharedPreferences prefs) { mLatinIME = latinIme; mResources = latinIme.getResources(); mPrefs = prefs; mSubtypeSwitcher = SubtypeSwitcher.getInstance(); mState = new KeyboardState(this); Loading Loading @@ -162,6 +163,8 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { mCurrentSettingsValues = settingsValues; try { mState.onLoadKeyboard(); final Keyboard symbols = mKeyboardLayoutSet.getKeyboard(KeyboardId.ELEMENT_SYMBOLS); mSwitchToAlphaKey = symbols.getKey(Constants.CODE_SWITCH_ALPHA_SYMBOL); } catch (KeyboardLayoutSetException e) { Log.w(TAG, "loading keyboard failed: " + e.mKeyboardId, e.getCause()); LatinImeLogger.logOnException(e.mKeyboardId.toString(), e.getCause()); Loading Loading @@ -287,7 +290,10 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions { @Override public void setEmojiKeyboard() { mMainKeyboardFrame.setVisibility(View.GONE); mEmojiPalettesView.startEmojiPalettes(); final Paint paint = mKeyboardView.newLabelPaint(mSwitchToAlphaKey); mEmojiPalettesView.startEmojiPalettes( mSwitchToAlphaKey.getLabel(), paint.getColor(), paint.getTextSize(), paint.getTypeface()); mEmojiPalettesView.setVisibility(View.VISIBLE); } Loading
java/src/com/android/inputmethod/keyboard/KeyboardView.java +1 −0 Original line number Diff line number Diff line Loading @@ -582,6 +582,7 @@ public class KeyboardView extends View { paint.setTypeface(mKeyDrawParams.mTypeface); paint.setTextSize(mKeyDrawParams.mLabelSize); } else { paint.setColor(key.selectTextColor(mKeyDrawParams)); paint.setTypeface(key.selectTypeface(mKeyDrawParams)); paint.setTextSize(key.selectTextSize(mKeyDrawParams)); } Loading