diff options
author | 2013-01-15 17:56:37 +0900 | |
---|---|---|
committer | 2013-01-16 18:22:00 +0900 | |
commit | d818f1e3b6220ca9a981c39728af510d4a38ba6f (patch) | |
tree | 9018fa2f1d69d59e8bc8f45171d5d4e852c1e193 /java/src/com/android/inputmethod/latin/LatinIME.java | |
parent | b4f89c0368ce00b07ec1531f9ddefbe00380e5bb (diff) | |
download | latinime-d818f1e3b6220ca9a981c39728af510d4a38ba6f.tar.gz latinime-d818f1e3b6220ca9a981c39728af510d4a38ba6f.tar.xz latinime-d818f1e3b6220ca9a981c39728af510d4a38ba6f.zip |
Stop relying on the soft keyboard to get the editor action.
Bug: 7969231
Change-Id: I9848c63c4c51550b5dc53c981eafa74e7fa95197
Diffstat (limited to 'java/src/com/android/inputmethod/latin/LatinIME.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinIME.java | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 8913b1543..819625225 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -166,6 +166,7 @@ public final class LatinIME extends InputMethodService implements KeyboardAction private boolean mExpectingUpdateSelection; private int mDeleteCount; private long mLastKeyTime; + private int mActionId; // Member variables for remembering the current device orientation. private int mDisplayOrientation; @@ -754,6 +755,7 @@ public final class LatinIME extends InputMethodService implements KeyboardAction mLastSelectionStart = editorInfo.initialSelStart; mLastSelectionEnd = editorInfo.initialSelEnd; + mActionId = InputTypeUtils.getConcreteActionIdFromEditorInfo(editorInfo); mHandler.cancelUpdateSuggestionStrip(); mHandler.cancelDoubleSpacePeriodTimer(); @@ -1272,10 +1274,6 @@ public final class LatinIME extends InputMethodService implements KeyboardAction return mOptionsDialog != null && mOptionsDialog.isShowing(); } - private static int getActionId(final Keyboard keyboard) { - return keyboard != null ? keyboard.mId.imeActionId() : EditorInfo.IME_ACTION_NONE; - } - private void performEditorAction(final int actionId) { mConnection.performEditorAction(actionId); } @@ -1384,10 +1382,9 @@ public final class LatinIME extends InputMethodService implements KeyboardAction } break; case Constants.CODE_ACTION_ENTER: - final int actionId = getActionId(switcher.getKeyboard()); - if (EditorInfo.IME_ACTION_NONE != actionId - && EditorInfo.IME_ACTION_UNSPECIFIED != actionId) { - performEditorAction(actionId); + if (EditorInfo.IME_ACTION_NONE != mActionId + && EditorInfo.IME_ACTION_UNSPECIFIED != mActionId) { + performEditorAction(mActionId); break; } didAutoCorrect = handleNonSpecialCharacter(Constants.CODE_ENTER, x, y, spaceState); |