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

Commit 1e5f9b6b authored by Wilson Wu's avatar Wilson Wu
Browse files

Revert "Fix potential failures in InputMethodService"

This reverts commit ce98507b.

Reason for revert: b/247426953

Change-Id: If7b7a258150f8f57a7b4a88e4926d412f948fd9c
parent ce98507b
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
@@ -147,16 +147,12 @@ class IInputMethodWrapper extends IInputMethod.Stub
    @MainThread
    @Override
    public void executeMessage(Message msg) {
        final InputMethod inputMethod = mInputMethod.get();
        InputMethod inputMethod = mInputMethod.get();
        // Need a valid reference to the inputMethod for everything except a dump.
        if (inputMethod == null && msg.what != DO_DUMP) {
            Log.w(TAG, "Input method reference was null, ignoring message: " + msg.what);
            return;
        }
        if (inputMethod != null && inputMethod.isServiceDestroyed() && msg.what != DO_DUMP) {
            Log.w(TAG, "InputMethodService was destroyed, ignoring message: " + msg.what);
            return;
        }

        switch (msg.what) {
            case DO_DUMP: {
+5 −10
Original line number Diff line number Diff line
@@ -700,6 +700,11 @@ public class InputMethodService extends AbstractInputMethodService {
        @MainThread
        @Override
        public final void initializeInternal(@NonNull IInputMethod.InitParams params) {
            if (mDestroyed) {
                Log.i(TAG, "The InputMethodService has already onDestroyed()."
                    + "Ignore the initialization.");
                return;
            }
            Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMS.initializeInternal");
            mConfigTracker.onInitialize(params.configChanges);
            mPrivOps.set(params.privilegedOperations);
@@ -1065,16 +1070,6 @@ public class InputMethodService extends AbstractInputMethodService {
        public void changeInputMethodSubtype(InputMethodSubtype subtype) {
            dispatchOnCurrentInputMethodSubtypeChanged(subtype);
        }

        /**
         * {@inheritDoc}
         * @hide
         */
        @MainThread
        @Override
        public final boolean isServiceDestroyed() {
            return mDestroyed;
        }
    }

    /**
+0 −6
Original line number Diff line number Diff line
@@ -417,10 +417,4 @@ public interface InputMethod {
    default void removeStylusHandwritingWindow() {
        // intentionally empty
    }

    /**
     * Return {@code true} if the {@link InputMethodService} is destroyed.
     * @hide
     */
    boolean isServiceDestroyed();
}