Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a9cbe75c authored by Antonio Kantek's avatar Antonio Kantek
Browse files

Dump mPreventImeStartupUnlessTextEditor value

config_preventImeStartupUnlessTextEditor is an Android configuration
option that, when enabled, prevents the InputMethodManagerService from
starting up the input method (keyboard) unless a text editor is focused.

This configuration is used in many CtsInputMethodTestCases tests (like
CtsInputMethodTestCases:KeyboardVisibilityControlTest). Understanding
its value is essential for effective test debugging.

Bug: 413464626
Flag: EXEMPT Improving dump debug method
Test: m
Test: adb shell dumpsys input_method | grep mPreventImeStartupUnlessTextEditor
Change-Id: I9d443e438b0522538da5a281f58a639f46a0343f
parent 27c41e49
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -48,4 +48,5 @@ message InputMethodManagerServiceProto {
    optional bool show_ime_with_hard_keyboard = 23;
    optional bool show_ime_with_hard_keyboard = 23;
    optional bool accessibility_requesting_no_soft_keyboard = 24;
    optional bool accessibility_requesting_no_soft_keyboard = 24;
    optional bool concurrent_multi_user_mode_enabled = 25;
    optional bool concurrent_multi_user_mode_enabled = 25;
    optional bool prevent_ime_startup_unless_text_editor = 26;
}
}
+3 −0
Original line number Original line Diff line number Diff line
@@ -38,6 +38,7 @@ import static android.server.inputmethod.InputMethodManagerServiceProto.IME_WIND
import static android.server.inputmethod.InputMethodManagerServiceProto.IN_FULLSCREEN_MODE;
import static android.server.inputmethod.InputMethodManagerServiceProto.IN_FULLSCREEN_MODE;
import static android.server.inputmethod.InputMethodManagerServiceProto.IS_INTERACTIVE;
import static android.server.inputmethod.InputMethodManagerServiceProto.IS_INTERACTIVE;
import static android.server.inputmethod.InputMethodManagerServiceProto.LAST_IME_TARGET_WINDOW_NAME;
import static android.server.inputmethod.InputMethodManagerServiceProto.LAST_IME_TARGET_WINDOW_NAME;
import static android.server.inputmethod.InputMethodManagerServiceProto.PREVENT_IME_STARTUP_UNLESS_TEXT_EDITOR;
import static android.server.inputmethod.InputMethodManagerServiceProto.SHOW_IME_WITH_HARD_KEYBOARD;
import static android.server.inputmethod.InputMethodManagerServiceProto.SHOW_IME_WITH_HARD_KEYBOARD;
import static android.server.inputmethod.InputMethodManagerServiceProto.SYSTEM_READY;
import static android.server.inputmethod.InputMethodManagerServiceProto.SYSTEM_READY;
import static android.view.Display.DEFAULT_DISPLAY;
import static android.view.Display.DEFAULT_DISPLAY;
@@ -4724,6 +4725,7 @@ public final class InputMethodManagerService implements IInputMethodManagerImpl.
                        mMenuController.getShowImeWithHardKeyboard());
                        mMenuController.getShowImeWithHardKeyboard());
            }
            }
            proto.write(CONCURRENT_MULTI_USER_MODE_ENABLED, mConcurrentMultiUserModeEnabled);
            proto.write(CONCURRENT_MULTI_USER_MODE_ENABLED, mConcurrentMultiUserModeEnabled);
            proto.write(PREVENT_IME_STARTUP_UNLESS_TEXT_EDITOR, mPreventImeStartupUnlessTextEditor);
            proto.end(token);
            proto.end(token);
        }
        }
    }
    }
@@ -6102,6 +6104,7 @@ public final class InputMethodManagerService implements IInputMethodManagerImpl.
        p.println("  mSystemReady=" + mSystemReady);
        p.println("  mSystemReady=" + mSystemReady);
        p.println("  mInteractive=" + mIsInteractive);
        p.println("  mInteractive=" + mIsInteractive);
        p.println("  mConcurrentMultiUserModeEnabled=" + mConcurrentMultiUserModeEnabled);
        p.println("  mConcurrentMultiUserModeEnabled=" + mConcurrentMultiUserModeEnabled);
        p.println("  mPreventImeStartupUnlessTextEditor=" + mPreventImeStartupUnlessTextEditor);
        final int currentImeUserId;
        final int currentImeUserId;
        synchronized (ImfLock.class) {
        synchronized (ImfLock.class) {
            currentImeUserId = mCurrentImeUserId;
            currentImeUserId = mCurrentImeUserId;