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

Commit ded25aed authored by Android Build Merger (Role)'s avatar Android Build Merger (Role) Committed by Android (Google) Code Review
Browse files

Merge "Allow power button to close an input method am: d28e9071 am:...

Merge "Allow power button to close an input method am: d28e9071 am: 8da4ced4" into nyc-mr2-dev-plus-aosp
parents 00d348ec 9a21708e
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -483,6 +483,16 @@ public interface WindowManagerPolicy {
         */
        public void switchInputMethod(boolean forwardDirection);

        /**
         * Returns the visibility of the current input method window (false if there is none).
         */
        public boolean isInputMethodWindowVisible();

        /**
         * Hides the current input method, if visible.
         */
        public void hideCurrentInputMethod();

        public void shutdown(boolean confirm);
        public void reboot(boolean confirm);
        public void rebootSafeMode(boolean confirm);
+9 −0
Original line number Diff line number Diff line
@@ -189,6 +189,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    static final int SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP = 2;
    static final int SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP_AND_GO_HOME = 3;
    static final int SHORT_PRESS_POWER_GO_HOME = 4;
    static final int SHORT_PRESS_POWER_CLOSE_IME_OR_GO_HOME = 5;

    static final int LONG_PRESS_POWER_NOTHING = 0;
    static final int LONG_PRESS_POWER_GLOBAL_ACTIONS = 1;
@@ -1302,6 +1303,14 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                case SHORT_PRESS_POWER_GO_HOME:
                    launchHomeFromHotKey(true /* awakenFromDreams */, false /*respectKeyguard*/);
                    break;
                case SHORT_PRESS_POWER_CLOSE_IME_OR_GO_HOME:
                    if (mWindowManagerFuncs.isInputMethodWindowVisible()) {
                        mWindowManagerFuncs.hideCurrentInputMethod();
                    } else {
                        launchHomeFromHotKey(true /* awakenFromDreams */,
                            false /*respectKeyguard*/);
                    }
                    break;
            }
        }
    }
+18 −0
Original line number Diff line number Diff line
@@ -5786,6 +5786,24 @@ public class WindowManagerService extends IWindowManager.Stub
        }
    }

    // Called by window manager policy.  Not exposed externally.
    @Override
    public boolean isInputMethodWindowVisible() {
        synchronized (mWindowMap) {
            return mInputMethodWindow != null && mInputMethodWindow.isVisibleLw();
        }
    }

    // Called by window manager policy.  Not exposed externally.
    @Override
    public void hideCurrentInputMethod() {
        final InputMethodManagerInternal inputMethodManagerInternal =
            LocalServices.getService(InputMethodManagerInternal.class);
        if (inputMethodManagerInternal != null) {
            inputMethodManagerInternal.hideCurrentInputMethod();
        }
    }

    // Called by window manager policy. Not exposed externally.
    @Override
    public void lockDeviceNow() {