Loading core/java/android/inputmethodservice/InputMethodService.java +5 −1 Original line number Diff line number Diff line Loading @@ -1625,7 +1625,6 @@ public class InputMethodService extends AbstractInputMethodService { // when IME developers are doing something unsupported. InputMethodPrivilegedOperationsRegistry.remove(mToken); } unregisterCompatOnBackInvokedCallback(); mImeDispatcher = null; } Loading Loading @@ -2788,6 +2787,11 @@ public class InputMethodService extends AbstractInputMethodService { if (mInkWindow != null) { finishStylusHandwriting(); } // Back callback is typically unregistered in {@link #hideWindow()}, but it's possible // for {@link #doFinishInput()} to be called without {@link #hideWindow()} so we also // unregister here. // TODO(b/232341407): Add CTS to verify back behavior after screen on / off. unregisterCompatOnBackInvokedCallback(); } void doStartInput(InputConnection ic, EditorInfo attribute, boolean restarting) { Loading core/java/android/window/ImeOnBackInvokedDispatcher.java +6 −0 Original line number Diff line number Diff line Loading @@ -158,6 +158,12 @@ public class ImeOnBackInvokedDispatcher implements OnBackInvokedDispatcher, Parc /** Clears all registered callbacks on the instance. */ public void clear() { // Unregister previously registered callbacks if there's any. if (getReceivingDispatcher() != null) { for (OnBackInvokedCallback callback : mImeCallbackMap.values()) { getReceivingDispatcher().unregisterOnBackInvokedCallback(callback); } } mImeCallbackMap.clear(); } Loading Loading
core/java/android/inputmethodservice/InputMethodService.java +5 −1 Original line number Diff line number Diff line Loading @@ -1625,7 +1625,6 @@ public class InputMethodService extends AbstractInputMethodService { // when IME developers are doing something unsupported. InputMethodPrivilegedOperationsRegistry.remove(mToken); } unregisterCompatOnBackInvokedCallback(); mImeDispatcher = null; } Loading Loading @@ -2788,6 +2787,11 @@ public class InputMethodService extends AbstractInputMethodService { if (mInkWindow != null) { finishStylusHandwriting(); } // Back callback is typically unregistered in {@link #hideWindow()}, but it's possible // for {@link #doFinishInput()} to be called without {@link #hideWindow()} so we also // unregister here. // TODO(b/232341407): Add CTS to verify back behavior after screen on / off. unregisterCompatOnBackInvokedCallback(); } void doStartInput(InputConnection ic, EditorInfo attribute, boolean restarting) { Loading
core/java/android/window/ImeOnBackInvokedDispatcher.java +6 −0 Original line number Diff line number Diff line Loading @@ -158,6 +158,12 @@ public class ImeOnBackInvokedDispatcher implements OnBackInvokedDispatcher, Parc /** Clears all registered callbacks on the instance. */ public void clear() { // Unregister previously registered callbacks if there's any. if (getReceivingDispatcher() != null) { for (OnBackInvokedCallback callback : mImeCallbackMap.values()) { getReceivingDispatcher().unregisterOnBackInvokedCallback(callback); } } mImeCallbackMap.clear(); } Loading