Merge "Make IInputMethodPrivilegedOperations to async (1/N)" into sc-dev
This commit is contained in:
@@ -941,7 +941,7 @@ public class InputMethodService extends AbstractInputMethodService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setImeWindowStatus(int visibilityFlags, int backDisposition) {
|
private void setImeWindowStatus(int visibilityFlags, int backDisposition) {
|
||||||
mPrivOps.setImeWindowStatus(visibilityFlags, backDisposition);
|
mPrivOps.setImeWindowStatusAsync(visibilityFlags, backDisposition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Set region of the keyboard to be avoided from back gesture */
|
/** Set region of the keyboard to be avoided from back gesture */
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import com.android.internal.inputmethod.IVoidResultCallback;
|
|||||||
* Actual operations are implemented and handled by InputMethodManagerService.
|
* Actual operations are implemented and handled by InputMethodManagerService.
|
||||||
*/
|
*/
|
||||||
oneway interface IInputMethodPrivilegedOperations {
|
oneway interface IInputMethodPrivilegedOperations {
|
||||||
void setImeWindowStatus(int vis, int backDisposition, in IVoidResultCallback resultCallback);
|
void setImeWindowStatusAsync(int vis, int backDisposition);
|
||||||
void reportStartInput(in IBinder startInputToken, in IVoidResultCallback resultCallback);
|
void reportStartInput(in IBinder startInputToken, in IVoidResultCallback resultCallback);
|
||||||
void createInputContentUriToken(in Uri contentUri, in String packageName,
|
void createInputContentUriToken(in Uri contentUri, in String packageName,
|
||||||
in IIInputContentUriTokenResultCallback resultCallback);
|
in IIInputContentUriTokenResultCallback resultCallback);
|
||||||
|
|||||||
@@ -95,8 +95,7 @@ public final class InputMethodPrivilegedOperations {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Calls {@link IInputMethodPrivilegedOperations#setImeWindowStatus(int, int,
|
* Calls {@link IInputMethodPrivilegedOperations#setImeWindowStatusAsync(int, int}.
|
||||||
* IVoidResultCallback)}.
|
|
||||||
*
|
*
|
||||||
* @param vis visibility flags
|
* @param vis visibility flags
|
||||||
* @param backDisposition disposition flags
|
* @param backDisposition disposition flags
|
||||||
@@ -107,15 +106,13 @@ public final class InputMethodPrivilegedOperations {
|
|||||||
* @see android.inputmethodservice.InputMethodService#BACK_DISPOSITION_ADJUST_NOTHING
|
* @see android.inputmethodservice.InputMethodService#BACK_DISPOSITION_ADJUST_NOTHING
|
||||||
*/
|
*/
|
||||||
@AnyThread
|
@AnyThread
|
||||||
public void setImeWindowStatus(int vis, int backDisposition) {
|
public void setImeWindowStatusAsync(int vis, int backDisposition) {
|
||||||
final IInputMethodPrivilegedOperations ops = mOps.getAndWarnIfNull();
|
final IInputMethodPrivilegedOperations ops = mOps.getAndWarnIfNull();
|
||||||
if (ops == null) {
|
if (ops == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
final Completable.Void value = Completable.createVoid();
|
ops.setImeWindowStatusAsync(vis, backDisposition);
|
||||||
ops.setImeWindowStatus(vis, backDisposition, ResultCallbacks.of(value));
|
|
||||||
Completable.getResult(value);
|
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
throw e.rethrowFromSystemServer();
|
throw e.rethrowFromSystemServer();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5975,10 +5975,8 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
|
|||||||
|
|
||||||
@BinderThread
|
@BinderThread
|
||||||
@Override
|
@Override
|
||||||
public void setImeWindowStatus(int vis, int backDisposition,
|
public void setImeWindowStatusAsync(int vis, int backDisposition) {
|
||||||
IVoidResultCallback resultCallback) {
|
mImms.setImeWindowStatus(mToken, vis, backDisposition);
|
||||||
CallbackUtils.onResult(resultCallback,
|
|
||||||
() -> mImms.setImeWindowStatus(mToken, vis, backDisposition));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@BinderThread
|
@BinderThread
|
||||||
|
|||||||
Reference in New Issue
Block a user