Revert "Support Emoji keyboard"

This reverts commit d7791a93b0.

Change-Id: I5ca4c0227f97540e8a22b487b5056dfa3611082b
main
Ken Wakasa 2013-08-30 07:23:42 +00:00
parent d7791a93b0
commit aabc972338
14 changed files with 49 additions and 143 deletions

View File

@ -20,33 +20,26 @@
<com.android.inputmethod.latin.InputView
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom|center_horizontal"
android:orientation="vertical" >
<include
layout="@layout/emoji_keyboard_view" />
<LinearLayout
android:id="@+id/main_keyboard_frame"
>
<!-- To ensure that key preview popup is correctly placed when the current system locale is
one of RTL locales, layoutDirection="ltr" is needed in the SDK version 17+. -->
<com.android.inputmethod.latin.suggestions.SuggestionStripView
android:id="@+id/suggestion_strip_view"
android:layoutDirection="ltr"
android:layout_width="match_parent"
android:layout_height="@dimen/suggestions_strip_height"
android:paddingRight="@dimen/suggestions_strip_padding"
android:paddingLeft="@dimen/suggestions_strip_padding"
style="?attr/suggestionStripViewStyle" />
<!-- To ensure that key preview popup is correctly placed when the current system locale is
one of RTL locales, layoutDirection="ltr" is needed in the SDK version 17+. -->
<com.android.inputmethod.keyboard.MainKeyboardView
android:id="@+id/keyboard_view"
android:layoutDirection="ltr"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<!-- To ensure that key preview popup is correctly placed when the current system locale is
one of RTL locales, layoutDirection="ltr" is needed in the SDK version 17+. -->
<com.android.inputmethod.latin.suggestions.SuggestionStripView
android:id="@+id/suggestion_strip_view"
android:layoutDirection="ltr"
android:layout_width="match_parent"
android:layout_height="@dimen/suggestions_strip_height"
android:paddingRight="@dimen/suggestions_strip_padding"
android:paddingLeft="@dimen/suggestions_strip_padding"
style="?attr/suggestionStripViewStyle" />
<!-- To ensure that key preview popup is correctly placed when the current system locale is
one of RTL locales, layoutDirection="ltr" is needed in the SDK version 17+. -->
<com.android.inputmethod.keyboard.MainKeyboardView
android:id="@+id/keyboard_view"
android:layoutDirection="ltr"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
android:layout_height="wrap_content" />
</com.android.inputmethod.latin.InputView>

View File

@ -36,73 +36,26 @@
name="emoji_nature"
format="string"
>
<item>2744</item> <!-- SNOWFLAKE -->
</array>
<array
name="emoji_symbols"
format="string"
>
<item>2460</item> <!-- CIRCLED DIGIT ONE -->
<item>2461</item> <!-- CIRCLED DIGIT TWO -->
<item>2462</item> <!-- CIRCLED DIGIT THREE -->
<item>2463</item> <!-- CIRCLED DIGIT FOUR -->
<item>2464</item> <!-- CIRCLED DIGIT FIVE -->
<item>2465</item> <!-- CIRCLED DIGIT SIX -->
<item>2466</item> <!-- CIRCLED DIGIT SEVEN -->
<item>2467</item> <!-- CIRCLED DIGIT EIGHT -->
<item>2468</item> <!-- CIRCLED DIGIT NINE -->
<item>2469</item> <!-- CIRCLED DIGIT TEN -->
<item>00ae</item> <!-- REGISTERED SIGN -->
<item>00a9</item> <!-- COPYRIGHT SIGN -->
<item>2122</item> <!-- TRADE MARK SIGN -->
<item>2734</item> <!-- EIGHT POINTED BLACK STAR -->
<item>2733</item> <!-- EIGHT POINTED PINWHEEL STAR -->
<item>2716</item> <!-- HEAVY MULTIPLICATION MARK -->
<item>2195</item> <!-- UP DOWN ARROW -->
<item>2197</item> <!-- NORTH EAST ARROW -->
<item>27a1</item> <!-- BLACK RIGHTWARDS ARROW -->
<item>2198</item> <!-- SOUTH EAST ARROW -->
<item>2199</item> <!-- SOUTH WEST ARROW -->
<item>2196</item> <!-- NORTH EAST ARROW -->
<item>2194</item> <!-- LEFT RIGHT ARROW -->
<item>25c0</item> <!-- BLACK LEFT-POINTING TRIANGLE -->
<item>25b6</item> <!-- BLACK ROGHT-POINTING TRIANGLE -->
<item>2747</item> <!-- SPARKLE -->
<item>25aa</item> <!-- BLACK SMALL SQUARE -->
<item>203c</item> <!-- DOUBLE EXCLAMATION MARK -->
<item>2660</item> <!-- BLACK SPADE SUIT -->
<item>2665</item> <!-- BLACK HEART SUIT -->
<item>2663</item> <!-- BLACK CLUB SUIT -->
<item>2666</item> <!-- BLACK DIAMOND SUIT -->
<item>21a9</item> <!-- LEFTWARDS ARROW WITH HOOK -->
<item>21aa</item> <!-- RIGHTWARDS ARROW WITH HOOK -->
</array>
<array
name="emoji_faces"
format="string"
>
<item>270C</item> <!-- VICTORY HAND -->
<item>2764</item> <!-- HEAVY BLACK HEART -->
</array>
<array
name="emoji_objects"
format="string"
>
<item>260e</item> <!-- BLACK TELEPHONE -->
<item>2709</item> <!-- ENVELOPE -->
<item>2712</item> <!-- BLACK NIB -->
<item>270f</item> <!-- PENCIL -->
<item>2702</item> <!-- BLACK SCISSORS -->
<item>2669</item> <!-- QUARTER NOTE -->
<item>266a</item> <!-- EIGHTH NOTE -->
<item>266c</item> <!-- BEAMED SIXTEENTH NOTES -->
</array>
<array
name="emoji_places"
format="string"
>
<item>2708</item> <!-- AIRPLANE -->
<item>2668</item> <!-- HOT SPRINGS -->
</array>
<array
name="emoji_emoticons"

View File

@ -104,14 +104,7 @@
<style
name="MainKeyboardView"
parent="KeyboardView" />
<!-- Though {@link EmojiKeyboardView} doesn't extend {@link KeyboardView}, some views inside it,
for instance delete button, need themed {@link KeyboardView} attributes. -->
<style
name="EmojiKeyboardView"
parent="KeyboardView"
>
<item name="emojiTabLabelColor">@color/emoji_tab_label_color_ics</item>
</style>
<style name="EmojiKeyboardView" />
<style name="MoreKeysKeyboard" />
<style
name="MoreKeysKeyboardView"

View File

@ -96,8 +96,6 @@
<item name="spacebarTextColor">@color/spacebar_text_color_gb</item>
<item name="spacebarTextShadowColor">@color/spacebar_text_shadow_color_gb</item>
</style>
<!-- Though {@link EmojiKeyboardView} doesn't extend {@link KeyboardView}, some views inside it,
for instance delete button, need themed {@link KeyboardView} attributes. -->
<style
name="EmojiKeyboardView.GB"
parent="KeyboardView.GB"

View File

@ -97,8 +97,6 @@
<item name="spacebarTextColor">@color/spacebar_text_color_ics</item>
<item name="spacebarTextShadowColor">@color/spacebar_text_shadow_color_ics</item>
</style>
<!-- Though {@link EmojiKeyboardView} doesn't extend {@link KeyboardView}, some views inside it,
for instance delete button, need themed {@link KeyboardView} attributes. -->
<style
name="EmojiKeyboardView.ICS"
parent="KeyboardView.ICS"

View File

@ -39,7 +39,7 @@
</case>
<default>
<Key
latin:keyStyle="emojiKeyStyle" />
latin:keyStyle="smileyKeyStyle" />
</default>
</switch>
</merge>

View File

@ -123,8 +123,7 @@
latin:styleName="emojiKeyStyle"
latin:code="!code/key_emoji"
latin:keyIcon="!icon/emoji_key"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
latin:keyActionFlags="noKeyPreview" />
<key-style
latin:styleName="settingsKeyStyle"
latin:code="!code/key_settings"

View File

@ -113,8 +113,7 @@
latin:styleName="emojiKeyStyle"
latin:code="!code/key_emoji"
latin:keyIcon="!icon/emoji_key"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
latin:keyActionFlags="noKeyPreview" />
<key-style
latin:styleName="settingsKeyStyle"
latin:code="!code/key_settings"

View File

@ -67,6 +67,30 @@
latin:backgroundType="functional" />
<include
latin:keyboardLayout="@xml/key_styles_enter" />
<switch>
<!-- Shift + Enter in textMultiLine field. -->
<case
latin:isMultiLine="true"
latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted"
>
<key-style
latin:styleName="enterKeyStyle"
latin:parentStyle="shiftEnterKeyStyle" />
</case>
<!-- Smiley in textShortMessage field.
Overrides common enter key style. -->
<case
latin:mode="im"
>
<key-style
latin:styleName="enterKeyStyle"
latin:keyLabel=":-)"
latin:keyOutputText=":-) "
latin:keyLabelFlags="hasPopupHint"
latin:moreKeys="!text/more_keys_for_smiley"
latin:backgroundType="functional" />
</case>
</switch>
<key-style
latin:styleName="spaceKeyStyle"
latin:code="!code/key_space"
@ -105,8 +129,7 @@
latin:styleName="emojiKeyStyle"
latin:code="!code/key_emoji"
latin:keyIcon="!icon/emoji_key"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
latin:keyActionFlags="noKeyPreview" />
<key-style
latin:styleName="tabKeyStyle"
latin:code="!code/key_tab"

View File

@ -50,7 +50,7 @@
latin:keyboardLayout="@xml/key_symbols_period"
latin:backgroundType="functional" />
<Key
latin:keyStyle="emojiKeyStyle"
latin:keyStyle="enterKeyStyle"
latin:keyWidth="fillRight" />
</Row>
</merge>

View File

@ -66,9 +66,7 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions {
private SharedPreferences mPrefs;
private InputView mCurrentInputView;
private View mMainKeyboardFrame;
private MainKeyboardView mKeyboardView;
private EmojiKeyboardView mEmojiKeyboardView;
private LatinIME mLatinIME;
private Resources mResources;
@ -169,8 +167,6 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions {
}
private void setKeyboard(final Keyboard keyboard) {
// Make {@link MainKeyboardView} visible and hide {@link EmojiKeyboardView}.
setMainKeyboardFrame();
final MainKeyboardView keyboardView = mKeyboardView;
final Keyboard oldKeyboard = keyboardView.getKeyboard();
keyboardView.setKeyboard(keyboard);
@ -257,18 +253,6 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions {
setKeyboard(mKeyboardLayoutSet.getKeyboard(KeyboardId.ELEMENT_SYMBOLS));
}
private void setMainKeyboardFrame() {
mMainKeyboardFrame.setVisibility(View.VISIBLE);
mEmojiKeyboardView.setVisibility(View.GONE);
}
// Implements {@link KeyboardState.SwitchActions}.
@Override
public void setEmojiKeyboard() {
mMainKeyboardFrame.setVisibility(View.GONE);
mEmojiKeyboardView.setVisibility(View.VISIBLE);
}
// Implements {@link KeyboardState.SwitchActions}.
@Override
public void requestUpdatingShiftState() {
@ -320,16 +304,10 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions {
setContextThemeWrapper(mLatinIME, mKeyboardTheme);
mCurrentInputView = (InputView)LayoutInflater.from(mThemeContext).inflate(
R.layout.input_view, null);
mMainKeyboardFrame = mCurrentInputView.findViewById(R.id.main_keyboard_frame);
mEmojiKeyboardView = (EmojiKeyboardView)mCurrentInputView.findViewById(
R.id.emoji_keyboard_view);
mKeyboardView = (MainKeyboardView) mCurrentInputView.findViewById(R.id.keyboard_view);
mKeyboardView.setHardwareAcceleratedDrawingEnabled(isHardwareAcceleratedDrawingEnabled);
mKeyboardView.setKeyboardActionListener(mLatinIME);
mEmojiKeyboardView.setHardwareAcceleratedDrawingEnabled(
isHardwareAcceleratedDrawingEnabled);
mEmojiKeyboardView.setKeyboardActionListener(mLatinIME);
// This always needs to be set since the accessibility state can
// potentially change without the input view being re-created.

View File

@ -46,7 +46,6 @@ public final class KeyboardState {
public void setAlphabetShiftLockedKeyboard();
public void setAlphabetShiftLockShiftedKeyboard();
public void setSymbolsKeyboard();
public void setEmojiKeyboard();
/**
* Request to call back {@link KeyboardState#onUpdateShiftState(int, int)}.
@ -72,10 +71,7 @@ public final class KeyboardState {
private static final int SWITCH_STATE_MOMENTARY_ALPHA_SHIFT = 5;
private int mSwitchState = SWITCH_STATE_ALPHA;
// TODO: Consolidate these two mode booleans into one integer to distinguish between alphabet,
// symbols, and emoji mode.
private boolean mIsAlphabetMode;
private boolean mIsEmojiMode;
private AlphabetShiftState mAlphabetShiftState = new AlphabetShiftState();
private boolean mPrevMainKeyboardWasShiftLocked;
private int mRecapitalizeMode;
@ -90,7 +86,6 @@ public final class KeyboardState {
public boolean mIsValid;
public boolean mIsAlphabetMode;
public boolean mIsAlphabetShiftLocked;
public boolean mIsEmojiMode;
public int mShiftMode;
@Override
@ -99,8 +94,6 @@ public final class KeyboardState {
if (mIsAlphabetMode) {
if (mIsAlphabetShiftLocked) return "ALPHABET_SHIFT_LOCKED";
return "ALPHABET_" + shiftModeToString(mShiftMode);
} else if (mIsEmojiMode) {
return "EMOJI";
} else {
return "SYMBOLS";
}
@ -132,7 +125,6 @@ public final class KeyboardState {
public void onSaveKeyboardState() {
final SavedKeyboardState state = mSavedKeyboardState;
state.mIsAlphabetMode = mIsAlphabetMode;
state.mIsEmojiMode = mIsEmojiMode;
if (mIsAlphabetMode) {
state.mIsAlphabetShiftLocked = mAlphabetShiftState.isShiftLocked();
state.mShiftMode = mAlphabetShiftState.isAutomaticShifted() ? AUTOMATIC_SHIFT
@ -153,8 +145,6 @@ public final class KeyboardState {
}
if (!state.mIsValid || state.mIsAlphabetMode) {
setAlphabetKeyboard();
} else if (state.mIsEmojiMode) {
setEmojiKeyboard();
} else {
setSymbolsKeyboard();
}
@ -264,7 +254,6 @@ public final class KeyboardState {
mSwitchActions.setAlphabetKeyboard();
mIsAlphabetMode = true;
mIsEmojiMode = false;
mRecapitalizeMode = RecapitalizeStatus.NOT_A_RECAPITALIZE_MODE;
mSwitchState = SWITCH_STATE_ALPHA;
mSwitchActions.requestUpdatingShiftState();
@ -281,15 +270,6 @@ public final class KeyboardState {
mSwitchState = SWITCH_STATE_SYMBOL_BEGIN;
}
private void setEmojiKeyboard() {
if (DEBUG_ACTION) {
Log.d(TAG, "setEmojiKeyboard");
}
mIsAlphabetMode = false;
mIsEmojiMode = true;
mSwitchActions.setEmojiKeyboard();
}
public void onPressKey(final int code, final boolean isSinglePointer, final int autoCaps) {
if (DEBUG_EVENT) {
Log.d(TAG, "onPressKey: code=" + Constants.printableCode(code)
@ -567,8 +547,6 @@ public final class KeyboardState {
// If the code is a letter, update keyboard shift state.
if (Constants.isLetterCode(code)) {
updateAlphabetShiftState(autoCaps, RecapitalizeStatus.NOT_A_RECAPITALIZE_MODE);
} else if (code == Constants.CODE_EMOJI) {
setEmojiKeyboard();
}
}

View File

@ -1532,8 +1532,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
handleLanguageSwitchKey();
break;
case Constants.CODE_EMOJI:
// Note: Switching emoji keyboard is being handled in
// {@link KeyboardState#onCodeInput(int,int)}.
// TODO: Implement emoji keyboard switch.
break;
case Constants.CODE_ENTER:
final EditorInfo editorInfo = getCurrentInputEditorInfo();

View File

@ -112,11 +112,6 @@ public class MockKeyboardSwitcher implements KeyboardState.SwitchActions {
mLayout = MockConstants.SYMBOLS;
}
@Override
public void setEmojiKeyboard() {
// Just ignore.
}
@Override
public void requestUpdatingShiftState() {
mState.onUpdateShiftState(mAutoCapsState, RecapitalizeStatus.NOT_A_RECAPITALIZE_MODE);