From 200feaeef3fad8eb252414ffac945d9bceae06a2 Mon Sep 17 00:00:00 2001 From: Vaibhav Devmurari Date: Mon, 2 Jan 2023 21:54:58 +0000 Subject: [PATCH] Allow ImeSutype with null languagtag to be passed to IMS Imesubtypes with null languagtag should be allowed to be set. If ImeSubtype is null, user can still select a PK layout for it in the settings and we need the callbacks so that when user switches to that particular ImeSubtype, we select the user selected layout. Test: atest InputMethodSubtypeTest Bug: 20805588 Change-Id: I8541e6132bdf04245831010f11ceabb651dd34ca --- .../android/view/inputmethod/InputMethodSubtype.java | 9 +-------- .../android/view/inputmethod/InputMethodSubtypeTest.java | 8 -------- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/core/java/android/view/inputmethod/InputMethodSubtype.java b/core/java/android/view/inputmethod/InputMethodSubtype.java index e73e7a358b61b..b0b94605f4084 100644 --- a/core/java/android/view/inputmethod/InputMethodSubtype.java +++ b/core/java/android/view/inputmethod/InputMethodSubtype.java @@ -536,14 +536,7 @@ public final class InputMethodSubtype implements Parcelable { if (!TextUtils.equals(getMode(), SUBTYPE_MODE_KEYBOARD)) { return false; } - if (isAuxiliary()) { - return false; - } - final String langTag = getCanonicalizedLanguageTag(); - if (langTag.isEmpty() || TextUtils.equals(langTag, UNDEFINED_LANGUAGE_TAG)) { - return false; - } - return true; + return !isAuxiliary(); } /** diff --git a/core/tests/coretests/src/android/view/inputmethod/InputMethodSubtypeTest.java b/core/tests/coretests/src/android/view/inputmethod/InputMethodSubtypeTest.java index 297b07fac3404..5095cad1b6078 100644 --- a/core/tests/coretests/src/android/view/inputmethod/InputMethodSubtypeTest.java +++ b/core/tests/coretests/src/android/view/inputmethod/InputMethodSubtypeTest.java @@ -176,14 +176,6 @@ public class InputMethodSubtypeTest { // Auxiliary subtype not suitable. assertFalse(getValidBuilder.get().setIsAuxiliary(true).build() .isSuitableForPhysicalKeyboardLayoutMapping()); - - // languageTag == null is not suitable. - assertFalse(getValidBuilder.get().setLanguageTag(null).build() - .isSuitableForPhysicalKeyboardLayoutMapping()); - - // languageTag == "und" is not suitable. - assertFalse(getValidBuilder.get().setLanguageTag("und").build() - .isSuitableForPhysicalKeyboardLayoutMapping()); } private static InputMethodSubtype cloneViaParcel(final InputMethodSubtype original) {