summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Cosmin Băieș <cosminbaies@google.com> 2024-05-02 11:32:34 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-05-02 11:32:34 +0000
commitc67cb4541abb53b5a6e269837f99d92f7cc8160f (patch)
treeff89fd7cf2686a38d6c9e4d60143b1c1be1fa118
parent43f507749c8e0e3b862050c40db219627a7326ea (diff)
parent79077a65fb961c4864bbd11705fbd5dd5659d0d0 (diff)
Merge "Allow no item selected in IME Switcher Menu" into main
-rw-r--r--services/core/java/com/android/server/inputmethod/InputMethodMenuController.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/inputmethod/InputMethodMenuController.java b/services/core/java/com/android/server/inputmethod/InputMethodMenuController.java
index 3bd0a9fa1f4b..326ef7e055fa 100644
--- a/services/core/java/com/android/server/inputmethod/InputMethodMenuController.java
+++ b/services/core/java/com/android/server/inputmethod/InputMethodMenuController.java
@@ -98,7 +98,10 @@ final class InputMethodMenuController {
final int size = imList.size();
mIms = new InputMethodInfo[size];
mSubtypeIds = new int[size];
- int checkedItem = 0;
+ // No items are checked by default. When we have a list of explicitly enabled subtypes,
+ // the implicit subtype is no longer listed, but if it is still the selected one,
+ // no items will be shown as checked.
+ int checkedItem = -1;
for (int i = 0; i < size; ++i) {
final ImeSubtypeListItem item = imList.get(i);
mIms[i] = item.mImi;
@@ -113,6 +116,12 @@ final class InputMethodMenuController {
}
}
+ if (checkedItem == -1) {
+ Slog.w(TAG, "Switching menu shown with no item selected"
+ + ", IME id: " + preferredInputMethodId
+ + ", subtype index: " + preferredInputMethodSubtypeId);
+ }
+
if (mDialogWindowContext == null) {
mDialogWindowContext = new InputMethodDialogWindowContext();
}