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

Commit 19ab73a7 authored by Yohei Yukawa's avatar Yohei Yukawa Committed by android-build-merger
Browse files

Merge "Revert "Plumb IME subtype change from IMMS to IMS."" into pi-dev

am: 59444f6a

Change-Id: Ibd6c9bc4bf05cd83d39964e085842902e599dbd5
parents 1421bce2 59444f6a
Loading
Loading
Loading
Loading
+0 −13
Original line number Diff line number Diff line
@@ -16,11 +16,8 @@

package android.hardware.input;

import android.annotation.Nullable;
import android.hardware.display.DisplayViewport;
import android.view.InputEvent;
import android.view.inputmethod.InputMethodInfo;
import android.view.inputmethod.InputMethodSubtype;

import java.util.List;

@@ -45,16 +42,6 @@ public abstract class InputManagerInternal {
     */
    public abstract void setInteractive(boolean interactive);

    /**
     * Notifies that InputMethodManagerService switched the current input method subtype.
     *
     * @param userId user id that indicates who is using the specified input method and subtype.
     * @param inputMethodInfo {@code null} when no input method is selected.
     * @param subtype {@code null} when {@code inputMethodInfo} does has no subtype.
     */
    public abstract void onInputMethodSubtypeChanged(int userId,
            @Nullable InputMethodInfo inputMethodInfo, @Nullable InputMethodSubtype subtype);

    /**
     * Toggles Caps Lock state for input device with specific id.
     *
+0 −16
Original line number Diff line number Diff line
@@ -92,7 +92,6 @@ import android.content.res.Resources;
import android.content.res.TypedArray;
import android.database.ContentObserver;
import android.graphics.drawable.Drawable;
import android.hardware.input.InputManagerInternal;
import android.inputmethodservice.InputMethodService;
import android.net.Uri;
import android.os.Binder;
@@ -2490,16 +2489,6 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
        }
    }

    private void notifyInputMethodSubtypeChanged(final int userId,
            @Nullable final InputMethodInfo inputMethodInfo,
            @Nullable final InputMethodSubtype subtype) {
        final InputManagerInternal inputManagerInternal =
                LocalServices.getService(InputManagerInternal.class);
        if (inputManagerInternal != null) {
            inputManagerInternal.onInputMethodSubtypeChanged(userId, inputMethodInfo, subtype);
        }
    }

    /* package */ void setInputMethodLocked(String id, int subtypeId) {
        InputMethodInfo info = mMethodMap.get(id);
        if (info == null) {
@@ -2534,10 +2523,8 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
                        mCurMethod.changeInputMethodSubtype(newSubtype);
                    } catch (RemoteException e) {
                        Slog.w(TAG, "Failed to call changeInputMethodSubtype");
                        return;
                    }
                }
                notifyInputMethodSubtypeChanged(mSettings.getCurrentUserId(), info, newSubtype);
            }
            return;
        }
@@ -2563,9 +2550,6 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
        } finally {
            Binder.restoreCallingIdentity(ident);
        }

        notifyInputMethodSubtypeChanged(mSettings.getCurrentUserId(), info,
                getCurrentInputMethodSubtypeLocked());
    }

    @Override
+1 −34
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
package com.android.server.input;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.os.LocaleList;
import android.os.ShellCallback;
import android.util.Log;
@@ -96,8 +95,6 @@ import android.view.KeyEvent;
import android.view.PointerIcon;
import android.view.Surface;
import android.view.ViewConfiguration;
import android.view.inputmethod.InputMethodInfo;
import android.view.inputmethod.InputMethodSubtype;
import android.widget.Toast;

import java.io.File;
@@ -135,7 +132,6 @@ public class InputManagerService extends IInputManager.Stub
    private static final int MSG_UPDATE_KEYBOARD_LAYOUTS = 4;
    private static final int MSG_RELOAD_DEVICE_ALIASES = 5;
    private static final int MSG_DELIVER_TABLET_MODE_CHANGED = 6;
    private static final int MSG_INPUT_METHOD_SUBTYPE_CHANGED = 7;

    // Pointer to native input manager service object.
    private final long mPtr;
@@ -1429,15 +1425,6 @@ public class InputManagerService extends IInputManager.Stub
        }
    }

    // Must be called on handler.
    private void handleSwitchInputMethodSubtype(int userId,
            @Nullable InputMethodInfo inputMethodInfo, @Nullable InputMethodSubtype subtype) {
        if (DEBUG) {
            Slog.i(TAG, "InputMethodSubtype changed: userId=" + userId
                    + " ime=" + inputMethodInfo + " subtype=" + subtype);
        }
    }

    public void switchKeyboardLayout(int deviceId, int direction) {
        mHandler.obtainMessage(MSG_SWITCH_KEYBOARD_LAYOUT, deviceId, direction).sendToTarget();
    }
@@ -2065,23 +2052,13 @@ public class InputManagerService extends IInputManager.Stub
                case MSG_RELOAD_DEVICE_ALIASES:
                    reloadDeviceAliases();
                    break;
                case MSG_DELIVER_TABLET_MODE_CHANGED: {
                case MSG_DELIVER_TABLET_MODE_CHANGED:
                    SomeArgs args = (SomeArgs) msg.obj;
                    long whenNanos = (args.argi1 & 0xFFFFFFFFl) | ((long) args.argi2 << 32);
                    boolean inTabletMode = (boolean) args.arg1;
                    deliverTabletModeChanged(whenNanos, inTabletMode);
                    break;
            }
                case MSG_INPUT_METHOD_SUBTYPE_CHANGED: {
                    final int userId = msg.arg1;
                    final SomeArgs args = (SomeArgs) msg.obj;
                    final InputMethodInfo inputMethodInfo = (InputMethodInfo) args.arg1;
                    final InputMethodSubtype subtype = (InputMethodSubtype) args.arg2;
                    args.recycle();
                    handleSwitchInputMethodSubtype(userId, inputMethodInfo, subtype);
                    break;
                }
            }
        }
    }

@@ -2241,16 +2218,6 @@ public class InputManagerService extends IInputManager.Stub
            nativeSetInteractive(mPtr, interactive);
        }

        @Override
        public void onInputMethodSubtypeChanged(int userId,
                @Nullable InputMethodInfo inputMethodInfo, @Nullable InputMethodSubtype subtype) {
            final SomeArgs someArgs = SomeArgs.obtain();
            someArgs.arg1 = inputMethodInfo;
            someArgs.arg2 = subtype;
            mHandler.obtainMessage(MSG_INPUT_METHOD_SUBTYPE_CHANGED, userId, 0, someArgs)
                    .sendToTarget();
        }

        @Override
        public void toggleCapsLock(int deviceId) {
            nativeToggleCapsLock(mPtr, deviceId);