summaryrefslogtreecommitdiff
path: root/core/java/android/inputmethodservice/IInputMethodWrapper.java
diff options
context:
space:
mode:
authorYohei Yukawa <yukawa@google.com>2021-09-13 15:43:48 -0700
committerYohei Yukawa <yukawa@google.com>2021-09-13 15:43:48 -0700
commit89c197018e830a04c7c10a6608e595ccf1ed1d07 (patch)
treeb3007af25a19b92e03489b1a849a4d4b9cd19209 /core/java/android/inputmethodservice/IInputMethodWrapper.java
parent4d16327f62e32c16e76d8fdb0072656729c1c6df (diff)
Simplify IInputMethod#startInput() handler a bit
This is a follow up CL to our previous CL [1], which introduced a nested SomeArgs to pass more integer parameters while handling IInputMethod#startInput() callback. Now that only 2 integers and 4 objects are required to handle IInputMethod#startInput(), single SomeArgs should be good enough to pack everything into a Message object. This CL does nothing other than applying such a mechanical code clean up. There should be no observable behavior difference. [1]: I1a6300fe167eb205ee2b4214a6e270a52ebae062 eadb1392f85f1ac8801018a02c31427801959b1c Bug: 192412909 Bug: 194110780 Test: presubmit Change-Id: I90eff3bfc5ed0f43472b0cd49aa532474a60c266
Diffstat (limited to 'core/java/android/inputmethodservice/IInputMethodWrapper.java')
-rw-r--r--core/java/android/inputmethodservice/IInputMethodWrapper.java19
1 files changed, 6 insertions, 13 deletions
diff --git a/core/java/android/inputmethodservice/IInputMethodWrapper.java b/core/java/android/inputmethodservice/IInputMethodWrapper.java
index 90990b45e552..8db6d9e1cd18 100644
--- a/core/java/android/inputmethodservice/IInputMethodWrapper.java
+++ b/core/java/android/inputmethodservice/IInputMethodWrapper.java
@@ -189,19 +189,15 @@ class IInputMethodWrapper extends IInputMethod.Stub
final IInputContext inputContext = (IInputContext) args.arg2;
final EditorInfo info = (EditorInfo) args.arg3;
final CancellationGroup cancellationGroup = (CancellationGroup) args.arg4;
- SomeArgs moreArgs = (SomeArgs) args.arg5;
+ final boolean restarting = args.argi5 == 1;
+ final int missingMethod = args.argi6;
final InputConnection ic = inputContext != null
? new RemoteInputConnection(
- mTarget, inputContext, moreArgs.argi3, cancellationGroup)
+ mTarget, inputContext, missingMethod, cancellationGroup)
: null;
info.makeCompatible(mTargetSdkVersion);
- inputMethod.dispatchStartInputWithToken(
- ic,
- info,
- moreArgs.argi1 == 1 /* restarting */,
- startInputToken);
+ inputMethod.dispatchStartInputWithToken(ic, info, restarting, startInputToken);
args.recycle();
- moreArgs.recycle();
return;
}
case DO_CREATE_SESSION: {
@@ -330,11 +326,8 @@ class IInputMethodWrapper extends IInputMethod.Stub
Log.e(TAG, "startInput must be called after bindInput.");
mCancellationGroup = new CancellationGroup();
}
- SomeArgs args = SomeArgs.obtain();
- args.argi1 = restarting ? 1 : 0;
- args.argi3 = missingMethods;
- mCaller.executeOrSendMessage(mCaller.obtainMessageOOOOO(DO_START_INPUT, startInputToken,
- inputContext, attribute, mCancellationGroup, args));
+ mCaller.executeOrSendMessage(mCaller.obtainMessageOOOOII(DO_START_INPUT, startInputToken,
+ inputContext, attribute, mCancellationGroup, restarting ? 1 : 0, missingMethods));
}
@BinderThread