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

Commit f6cafb63 authored by satok's avatar satok
Browse files

Implicitly/Explicitly subtypes bug.

Change-Id: I6ccc22d4272ee92c0d8ba3f3c724d8f838d51310
parent bdac9e0f
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -242,6 +242,7 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
    // Turn on the selected radio button at startup
    private void updateRadioButtonsByImiAndSubtype(
            InputMethodInfo imi, InputMethodSubtype subtype) {
        if (imi == null) return;
        if (DEBUG) {
            Log.d(TAG, "Update radio buttons by " + imi.getId() + ", " + subtype);
        }
+6 −6
Original line number Diff line number Diff line
@@ -2540,10 +2540,10 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
                ArrayList<String>>> enabledImes, String imeId, String subtypeHashCode) {
            for (Pair<String, ArrayList<String>> enabledIme: enabledImes) {
                if (enabledIme.first.equals(imeId)) {
                    final ArrayList<String> enabledSubtypes = enabledIme.second;
                    if (enabledSubtypes.size() == 0) {
                        // If there are no enabled subtypes, applicable subtypes are enabled
                        // implicitly.
                    final ArrayList<String> explicitlyEnabledSubtypes = enabledIme.second;
                    if (explicitlyEnabledSubtypes.size() == 0) {
                        // If there are no explicitly enabled subtypes, applicable subtypes are
                        // enabled implicitly.
                        InputMethodInfo ime = mMethodMap.get(imeId);
                        // If IME is enabled and no subtypes are enabled, applicable subtypes
                        // are enabled implicitly, so needs to treat them to be enabled.
@@ -2561,7 +2561,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
                            }
                        }
                    } else {
                        for (String s: enabledSubtypes) {
                        for (String s: explicitlyEnabledSubtypes) {
                            if (s.equals(subtypeHashCode)) {
                                // If both imeId and subtypeId are enabled, return subtypeId.
                                return s;