diff options
| -rw-r--r-- | services/core/java/com/android/server/InputMethodManagerService.java | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/InputMethodManagerService.java b/services/core/java/com/android/server/InputMethodManagerService.java index 04abccace0a7..15b55026ae66 100644 --- a/services/core/java/com/android/server/InputMethodManagerService.java +++ b/services/core/java/com/android/server/InputMethodManagerService.java @@ -2383,10 +2383,6 @@ public class InputMethodManagerService extends IInputMethodManager.Stub return; } synchronized (mMethodMap) { - if (mCurClient == null || client == null - || mCurClient.client.asBinder() != client.asBinder()) { - Slog.w(TAG, "Ignoring showInputMethodAndSubtypeEnablerFromClient of: " + client); - } executeOrSendMessage(mCurMethod, mCaller.obtainMessageO( MSG_SHOW_IM_SUBTYPE_ENABLER, inputMethodId)); } @@ -2716,9 +2712,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub return true; case MSG_SHOW_IM_SUBTYPE_ENABLER: - args = (SomeArgs)msg.obj; - showInputMethodAndSubtypeEnabler((String)args.arg1); - args.recycle(); + showInputMethodAndSubtypeEnabler((String)msg.obj); return true; case MSG_SHOW_IM_CONFIG: @@ -3005,7 +2999,11 @@ public class InputMethodManagerService extends IInputMethodManager.Stub if (!TextUtils.isEmpty(inputMethodId)) { intent.putExtra(Settings.EXTRA_INPUT_METHOD_ID, inputMethodId); } - mContext.startActivityAsUser(intent, null, UserHandle.CURRENT); + final int userId; + synchronized (mMethodMap) { + userId = mSettings.getCurrentUserId(); + } + mContext.startActivityAsUser(intent, null, UserHandle.of(userId)); } private void showConfigureInputMethods() { |