aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2013-12-27 17:04:12 +0900
committerJean Chalard <jchalard@google.com>2014-01-23 13:09:58 +0900
commitab80b41a0dee298837b1358457768ee5ac0fc79e (patch)
treea2a43d6370f08fc785750af0b524486bda4869de /java
parenta91dfff5e54f68c4003327eeca47286084c35a2f (diff)
downloadlatinime-ab80b41a0dee298837b1358457768ee5ac0fc79e.tar.gz
latinime-ab80b41a0dee298837b1358457768ee5ac0fc79e.tar.xz
latinime-ab80b41a0dee298837b1358457768ee5ac0fc79e.zip
[IL66] Remove two accesses to KeyboardSwitcher.
Bug: 8636060 Change-Id: I3b144993e2bcd552f9b292b8f057c9db4216125c
Diffstat (limited to 'java')
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java12
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java14
2 files changed, 16 insertions, 10 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index aca361905..399d4917c 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -217,10 +217,15 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
(SuggestedWords) msg.obj, latinIme.mKeyboardSwitcher);
break;
case MSG_RESET_CACHES:
- latinIme.mInputLogic.retryResetCaches(latinIme.mSettings.getCurrent(),
+ final SettingsValues settingsValues = latinIme.mSettings.getCurrent();
+ if (latinIme.mInputLogic.retryResetCachesAndReturnSuccess(settingsValues,
msg.arg1 == 1 /* tryResumeSuggestions */,
- msg.arg2 /* remainingTries */,
- latinIme.mKeyboardSwitcher, this);
+ msg.arg2 /* remainingTries */, this /* handler */)) {
+ // If we were able to reset the caches, then we can reload the keyboard.
+ // Otherwise, we'll do it when we can.
+ latinIme.mKeyboardSwitcher.loadKeyboard(latinIme.getCurrentInputEditorInfo(),
+ settingsValues);
+ }
break;
}
}
@@ -1257,6 +1262,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
final int keyY = mainKeyboardView.getKeyY(y);
mInputLogic.onCodeInput(codePoint, keyX, keyY, mHandler, mKeyboardSwitcher,
mSubtypeSwitcher);
+ mKeyboardSwitcher.onCodeInput(codePoint);
}
// Called from PointerTracker through the KeyboardActionListener interface
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index 20be81411..3c5406545 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -300,7 +300,6 @@ public final class InputLogic {
code, x, y, spaceState, keyboardSwitcher, handler);
break;
}
- keyboardSwitcher.onCodeInput(code);
// Reset after any single keystroke, except shift, capslock, and symbol-shift
if (!didAutoCorrect && code != Constants.CODE_SHIFT
&& code != Constants.CODE_CAPSLOCK
@@ -1699,26 +1698,27 @@ public final class InputLogic {
* @param settingsValues the current values of the settings.
* @param tryResumeSuggestions Whether we should resume suggestions or not.
* @param remainingTries How many times we may try again before giving up.
+ * @return whether true if the caches were successfully reset, false otherwise.
*/
// TODO: make this private
- public void retryResetCaches(final SettingsValues settingsValues,
+ public boolean retryResetCachesAndReturnSuccess(final SettingsValues settingsValues,
final boolean tryResumeSuggestions, final int remainingTries,
// TODO: remove these arguments
- final KeyboardSwitcher keyboardSwitcher, final LatinIME.UIHandler handler) {
+ final LatinIME.UIHandler handler) {
if (!mConnection.resetCachesUponCursorMoveAndReturnSuccess(
mConnection.getExpectedSelectionStart(), mConnection.getExpectedSelectionEnd(),
false)) {
if (0 < remainingTries) {
handler.postResetCaches(tryResumeSuggestions, remainingTries - 1);
- return;
+ return false;
}
- // If remainingTries is 0, we should stop waiting for new tries, but it's still
- // better to load the keyboard (less things will be broken).
+ // If remainingTries is 0, we should stop waiting for new tries, however we'll still
+ // return true as we need to perform other tasks (for example, loading the keyboard).
}
mConnection.tryFixLyingCursorPosition();
- keyboardSwitcher.loadKeyboard(getCurrentInputEditorInfo(), settingsValues);
if (tryResumeSuggestions) {
handler.postResumeSuggestions();
}
+ return true;
}
}