summaryrefslogtreecommitdiff
path: root/core/java/android/inputmethodservice/IInputMethodWrapper.java
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2018-09-07 02:11:07 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-09-07 02:11:07 +0000
commit826a36c19b5ca86bf976f66c45c703fdc8db92ee (patch)
treeb932bcc0ac22f56e3508b5b0d55059b327580172 /core/java/android/inputmethodservice/IInputMethodWrapper.java
parent2e2ea1fb13b7d931fdbad3cc0d8983a4135de81b (diff)
parentc54c1171640519ae0ad8da1f32477295d96db1b8 (diff)
Merge "Add a new Binder interface to allow IMS to directly talk to IMMS"
Diffstat (limited to 'core/java/android/inputmethodservice/IInputMethodWrapper.java')
-rw-r--r--core/java/android/inputmethodservice/IInputMethodWrapper.java20
1 files changed, 14 insertions, 6 deletions
diff --git a/core/java/android/inputmethodservice/IInputMethodWrapper.java b/core/java/android/inputmethodservice/IInputMethodWrapper.java
index 2c7e51a1db25..00a1f6feecc5 100644
--- a/core/java/android/inputmethodservice/IInputMethodWrapper.java
+++ b/core/java/android/inputmethodservice/IInputMethodWrapper.java
@@ -35,6 +35,7 @@ import android.view.inputmethod.InputMethod;
import android.view.inputmethod.InputMethodSession;
import android.view.inputmethod.InputMethodSubtype;
+import com.android.internal.inputmethod.IInputMethodPrivilegedOperations;
import com.android.internal.os.HandlerCaller;
import com.android.internal.os.SomeArgs;
import com.android.internal.view.IInputContext;
@@ -60,7 +61,7 @@ class IInputMethodWrapper extends IInputMethod.Stub
private static final String TAG = "InputMethodWrapper";
private static final int DO_DUMP = 1;
- private static final int DO_ATTACH_TOKEN = 10;
+ private static final int DO_INITIALIZE_INTERNAL = 10;
private static final int DO_SET_INPUT_CONTEXT = 20;
private static final int DO_UNSET_INPUT_CONTEXT = 30;
private static final int DO_START_INPUT = 32;
@@ -159,9 +160,15 @@ class IInputMethodWrapper extends IInputMethod.Stub
args.recycle();
return;
}
-
- case DO_ATTACH_TOKEN: {
- inputMethod.attachToken((IBinder)msg.obj);
+
+ case DO_INITIALIZE_INTERNAL: {
+ SomeArgs args = (SomeArgs) msg.obj;
+ try {
+ inputMethod.initializeInternal((IBinder) args.arg1,
+ (IInputMethodPrivilegedOperations) args.arg2);
+ } finally {
+ args.recycle();
+ }
return;
}
case DO_SET_INPUT_CONTEXT: {
@@ -246,8 +253,9 @@ class IInputMethodWrapper extends IInputMethod.Stub
@BinderThread
@Override
- public void attachToken(IBinder token) {
- mCaller.executeOrSendMessage(mCaller.obtainMessageO(DO_ATTACH_TOKEN, token));
+ public void initializeInternal(IBinder token, IInputMethodPrivilegedOperations privOps) {
+ mCaller.executeOrSendMessage(
+ mCaller.obtainMessageOO(DO_INITIALIZE_INTERNAL, token, privOps));
}
@BinderThread