Loading core/java/android/view/inputmethod/InputMethodManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -948,7 +948,7 @@ public final class InputMethodManager { // requestedVisibleTypes of WindowInsetsController by hiding the IME final var statsToken = ImeTracker.forLogging().onStart( ImeTracker.TYPE_HIDE, ImeTracker.ORIGIN_CLIENT, SoftInputShowHideReason.REASON_HIDE_WINDOW_LOST_FOCUS, SoftInputShowHideReason.HIDE_WINDOW_LOST_FOCUS, false /* fromUser */); if (DEBUG) { Log.d(TAG, "onWindowLostFocus, hiding IME because " Loading core/java/com/android/internal/inputmethod/InputMethodDebug.java +6 −0 Original line number Diff line number Diff line Loading @@ -299,6 +299,12 @@ public final class InputMethodDebug { return "SHOW_SOFT_INPUT_IMM_DEPRECATION"; case SoftInputShowHideReason.CONTROL_WINDOW_INSETS_ANIMATION: return "CONTROL_WINDOW_INSETS_ANIMATION"; case SoftInputShowHideReason.SHOW_INPUT_TARGET_CHANGED: return "SHOW_INPUT_TARGET_CHANGED"; case SoftInputShowHideReason.HIDE_INPUT_TARGET_CHANGED: return "HIDE_INPUT_TARGET_CHANGED"; case SoftInputShowHideReason.HIDE_WINDOW_LOST_FOCUS: return "HIDE_WINDOW_LOST_FOCUS"; default: return "Unknown=" + reason; } Loading core/java/com/android/internal/inputmethod/SoftInputShowHideReason.java +14 −14 Original line number Diff line number Diff line Loading @@ -91,7 +91,7 @@ import java.lang.annotation.Retention; SoftInputShowHideReason.CONTROL_WINDOW_INSETS_ANIMATION, SoftInputShowHideReason.SHOW_INPUT_TARGET_CHANGED, SoftInputShowHideReason.HIDE_INPUT_TARGET_CHANGED, SoftInputShowHideReason.REASON_HIDE_WINDOW_LOST_FOCUS, SoftInputShowHideReason.HIDE_WINDOW_LOST_FOCUS, }) public @interface SoftInputShowHideReason { /** Default, undefined reason. */ Loading Loading @@ -339,18 +339,6 @@ public @interface SoftInputShowHideReason { */ int HIDE_WINDOW_LEGACY_DIRECT = ImeProtoEnums.REASON_HIDE_WINDOW_LEGACY_DIRECT; /** * Show soft input because the input target changed * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int SHOW_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_SHOW_INPUT_TARGET_CHANGED; /** * Hide soft input because the input target changed by * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int HIDE_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_HIDE_INPUT_TARGET_CHANGED; /** * Show / Hide soft input by * {@link android.inputmethodservice.InputMethodService#resetStateForNewConfiguration}. Loading Loading @@ -420,6 +408,18 @@ public @interface SoftInputShowHideReason { */ int CONTROL_WINDOW_INSETS_ANIMATION = ImeProtoEnums.REASON_CONTROL_WINDOW_INSETS_ANIMATION; /** * Show soft input because the input target changed * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int SHOW_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_SHOW_INPUT_TARGET_CHANGED; /** * Hide soft input because the input target changed by * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int HIDE_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_HIDE_INPUT_TARGET_CHANGED; /** Hide soft input when the window lost focus. */ int REASON_HIDE_WINDOW_LOST_FOCUS = ImeProtoEnums.REASON_HIDE_WINDOW_LOST_FOCUS; int HIDE_WINDOW_LOST_FOCUS = ImeProtoEnums.REASON_HIDE_WINDOW_LOST_FOCUS; } services/core/java/com/android/server/wm/ImeInsetsSourceProvider.java +2 −1 Original line number Diff line number Diff line Loading @@ -324,7 +324,8 @@ final class ImeInsetsSourceProvider extends InsetsSourceProvider { if (target != imeControlTarget) { // TODO(b/353463205): check if fromUser=false is correct here boolean imeVisible = target.isRequestedVisible(WindowInsets.Type.ime()); ImeTracker.Token statsToken = ImeTracker.forLogging().onStart(ImeTracker.TYPE_HIDE, ImeTracker.Token statsToken = ImeTracker.forLogging().onStart( imeVisible ? ImeTracker.TYPE_SHOW : ImeTracker.TYPE_HIDE, ImeTracker.ORIGIN_SERVER, imeVisible ? SoftInputShowHideReason.SHOW_INPUT_TARGET_CHANGED : SoftInputShowHideReason.HIDE_INPUT_TARGET_CHANGED, Loading Loading
core/java/android/view/inputmethod/InputMethodManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -948,7 +948,7 @@ public final class InputMethodManager { // requestedVisibleTypes of WindowInsetsController by hiding the IME final var statsToken = ImeTracker.forLogging().onStart( ImeTracker.TYPE_HIDE, ImeTracker.ORIGIN_CLIENT, SoftInputShowHideReason.REASON_HIDE_WINDOW_LOST_FOCUS, SoftInputShowHideReason.HIDE_WINDOW_LOST_FOCUS, false /* fromUser */); if (DEBUG) { Log.d(TAG, "onWindowLostFocus, hiding IME because " Loading
core/java/com/android/internal/inputmethod/InputMethodDebug.java +6 −0 Original line number Diff line number Diff line Loading @@ -299,6 +299,12 @@ public final class InputMethodDebug { return "SHOW_SOFT_INPUT_IMM_DEPRECATION"; case SoftInputShowHideReason.CONTROL_WINDOW_INSETS_ANIMATION: return "CONTROL_WINDOW_INSETS_ANIMATION"; case SoftInputShowHideReason.SHOW_INPUT_TARGET_CHANGED: return "SHOW_INPUT_TARGET_CHANGED"; case SoftInputShowHideReason.HIDE_INPUT_TARGET_CHANGED: return "HIDE_INPUT_TARGET_CHANGED"; case SoftInputShowHideReason.HIDE_WINDOW_LOST_FOCUS: return "HIDE_WINDOW_LOST_FOCUS"; default: return "Unknown=" + reason; } Loading
core/java/com/android/internal/inputmethod/SoftInputShowHideReason.java +14 −14 Original line number Diff line number Diff line Loading @@ -91,7 +91,7 @@ import java.lang.annotation.Retention; SoftInputShowHideReason.CONTROL_WINDOW_INSETS_ANIMATION, SoftInputShowHideReason.SHOW_INPUT_TARGET_CHANGED, SoftInputShowHideReason.HIDE_INPUT_TARGET_CHANGED, SoftInputShowHideReason.REASON_HIDE_WINDOW_LOST_FOCUS, SoftInputShowHideReason.HIDE_WINDOW_LOST_FOCUS, }) public @interface SoftInputShowHideReason { /** Default, undefined reason. */ Loading Loading @@ -339,18 +339,6 @@ public @interface SoftInputShowHideReason { */ int HIDE_WINDOW_LEGACY_DIRECT = ImeProtoEnums.REASON_HIDE_WINDOW_LEGACY_DIRECT; /** * Show soft input because the input target changed * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int SHOW_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_SHOW_INPUT_TARGET_CHANGED; /** * Hide soft input because the input target changed by * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int HIDE_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_HIDE_INPUT_TARGET_CHANGED; /** * Show / Hide soft input by * {@link android.inputmethodservice.InputMethodService#resetStateForNewConfiguration}. Loading Loading @@ -420,6 +408,18 @@ public @interface SoftInputShowHideReason { */ int CONTROL_WINDOW_INSETS_ANIMATION = ImeProtoEnums.REASON_CONTROL_WINDOW_INSETS_ANIMATION; /** * Show soft input because the input target changed * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int SHOW_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_SHOW_INPUT_TARGET_CHANGED; /** * Hide soft input because the input target changed by * {@link com.android.server.wm.ImeInsetsSourceProvider#onInputTargetChanged}. */ int HIDE_INPUT_TARGET_CHANGED = ImeProtoEnums.REASON_HIDE_INPUT_TARGET_CHANGED; /** Hide soft input when the window lost focus. */ int REASON_HIDE_WINDOW_LOST_FOCUS = ImeProtoEnums.REASON_HIDE_WINDOW_LOST_FOCUS; int HIDE_WINDOW_LOST_FOCUS = ImeProtoEnums.REASON_HIDE_WINDOW_LOST_FOCUS; }
services/core/java/com/android/server/wm/ImeInsetsSourceProvider.java +2 −1 Original line number Diff line number Diff line Loading @@ -324,7 +324,8 @@ final class ImeInsetsSourceProvider extends InsetsSourceProvider { if (target != imeControlTarget) { // TODO(b/353463205): check if fromUser=false is correct here boolean imeVisible = target.isRequestedVisible(WindowInsets.Type.ime()); ImeTracker.Token statsToken = ImeTracker.forLogging().onStart(ImeTracker.TYPE_HIDE, ImeTracker.Token statsToken = ImeTracker.forLogging().onStart( imeVisible ? ImeTracker.TYPE_SHOW : ImeTracker.TYPE_HIDE, ImeTracker.ORIGIN_SERVER, imeVisible ? SoftInputShowHideReason.SHOW_INPUT_TARGET_CHANGED : SoftInputShowHideReason.HIDE_INPUT_TARGET_CHANGED, Loading