diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java index 4defc55fbd97a..48d3686360f0a 100644 --- a/core/java/android/inputmethodservice/InputMethodService.java +++ b/core/java/android/inputmethodservice/InputMethodService.java @@ -1947,12 +1947,12 @@ public class InputMethodService extends AbstractInputMethodService { public void showStatusIcon(@DrawableRes int iconResId) { mStatusIcon = iconResId; - mPrivOps.updateStatusIcon(getPackageName(), iconResId); + mPrivOps.updateStatusIconAsync(getPackageName(), iconResId); } public void hideStatusIcon() { mStatusIcon = 0; - mPrivOps.updateStatusIcon(null, 0); + mPrivOps.updateStatusIconAsync(null, 0); } /** diff --git a/core/java/android/view/inputmethod/InputMethodManager.java b/core/java/android/view/inputmethod/InputMethodManager.java index b4c1dd22485fd..20a0b0b0d1430 100644 --- a/core/java/android/view/inputmethod/InputMethodManager.java +++ b/core/java/android/view/inputmethod/InputMethodManager.java @@ -1406,7 +1406,8 @@ public final class InputMethodManager { */ @Deprecated public void showStatusIcon(IBinder imeToken, String packageName, @DrawableRes int iconId) { - InputMethodPrivilegedOperationsRegistry.get(imeToken).updateStatusIcon(packageName, iconId); + InputMethodPrivilegedOperationsRegistry.get( + imeToken).updateStatusIconAsync(packageName, iconId); } /** @@ -1416,7 +1417,7 @@ public final class InputMethodManager { */ @Deprecated public void hideStatusIcon(IBinder imeToken) { - InputMethodPrivilegedOperationsRegistry.get(imeToken).updateStatusIcon(null, 0); + InputMethodPrivilegedOperationsRegistry.get(imeToken).updateStatusIconAsync(null, 0); } /** diff --git a/core/java/com/android/internal/inputmethod/IInputMethodPrivilegedOperations.aidl b/core/java/com/android/internal/inputmethod/IInputMethodPrivilegedOperations.aidl index fcb5d3bb1bf0f..070e6abb36e62 100644 --- a/core/java/com/android/internal/inputmethod/IInputMethodPrivilegedOperations.aidl +++ b/core/java/com/android/internal/inputmethod/IInputMethodPrivilegedOperations.aidl @@ -39,7 +39,7 @@ oneway interface IInputMethodPrivilegedOperations { in IVoidResultCallback resultCallback); void hideMySoftInput(int flags, in IVoidResultCallback resultCallback); void showMySoftInput(int flags, in IVoidResultCallback resultCallback); - void updateStatusIcon(String packageName, int iconId, in IVoidResultCallback resultCallback); + void updateStatusIconAsync(String packageName, int iconId); void switchToPreviousInputMethod(in IBooleanResultCallback resultCallback); void switchToNextInputMethod(boolean onlyCurrentIme, in IBooleanResultCallback resultCallback); void shouldOfferSwitchingToNextInputMethod(in IBooleanResultCallback resultCallback); diff --git a/core/java/com/android/internal/inputmethod/InputMethodPrivilegedOperations.java b/core/java/com/android/internal/inputmethod/InputMethodPrivilegedOperations.java index 1691e13fa567a..2fc8d7a5676c1 100644 --- a/core/java/com/android/internal/inputmethod/InputMethodPrivilegedOperations.java +++ b/core/java/com/android/internal/inputmethod/InputMethodPrivilegedOperations.java @@ -187,22 +187,19 @@ public final class InputMethodPrivilegedOperations { } /** - * Calls {@link IInputMethodPrivilegedOperations#updateStatusIcon(String, int, - * IVoidResultCallback)}. + * Calls {@link IInputMethodPrivilegedOperations#updateStatusIconAsync(String, int)}. * * @param packageName package name from which the status icon should be loaded * @param iconResId resource ID of the icon to be loaded */ @AnyThread - public void updateStatusIcon(String packageName, @DrawableRes int iconResId) { + public void updateStatusIconAsync(String packageName, @DrawableRes int iconResId) { final IInputMethodPrivilegedOperations ops = mOps.getAndWarnIfNull(); if (ops == null) { return; } try { - final Completable.Void value = Completable.createVoid(); - ops.updateStatusIcon(packageName, iconResId, ResultCallbacks.of(value)); - Completable.getResult(value); + ops.updateStatusIconAsync(packageName, iconResId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } diff --git a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java index 871b4f675d955..6282aa69dbc4b 100644 --- a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +++ b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java @@ -6089,10 +6089,8 @@ public class InputMethodManagerService extends IInputMethodManager.Stub @BinderThread @Override - public void updateStatusIcon(String packageName, @DrawableRes int iconId, - IVoidResultCallback resultCallback) { - CallbackUtils.onResult(resultCallback, - () -> mImms.updateStatusIcon(mToken, packageName, iconId)); + public void updateStatusIconAsync(String packageName, @DrawableRes int iconId) { + mImms.updateStatusIcon(mToken, packageName, iconId); } @BinderThread