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

Commit 3793a4ee authored by Andrew Zeng's avatar Andrew Zeng Committed by android-build-merger
Browse files

Merge "Notify keyguard of when power button is pressed." into oc-dev

am: dd273de0

Change-Id: I2e8061b695e1823ea9ab7b46c8fdb78111601ced
parents 599bc3f1 dd273de0
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -93,4 +93,10 @@ oneway interface IKeyguardService {
     * @param fadeoutDuration the duration of the exit animation, in milliseconds
     */
    void startKeyguardExitAnimation(long startTime, long fadeoutDuration);

    /**
     * Notifies the Keyguard that the power key was pressed while locked and launched Home rather
     * than putting the device to sleep or waking up.
     */
    void onShortPowerPressedGoHome();
}
+6 −0
Original line number Diff line number Diff line
@@ -194,6 +194,12 @@ public class KeyguardService extends Service {
            mKeyguardViewMediator.startKeyguardExitAnimation(startTime, fadeoutDuration);
            Trace.endSection();
        }

        @Override
        public void onShortPowerPressedGoHome() {
            checkPermission();
            mKeyguardViewMediator.onShortPowerPressedGoHome();
        }
    };
}
+4 −0
Original line number Diff line number Diff line
@@ -2013,6 +2013,10 @@ public class KeyguardViewMediator extends SystemUI {
        Trace.endSection();
    }

    public void onShortPowerPressedGoHome() {
        // do nothing
    }

    public ViewMediatorCallback getViewMediatorCallback() {
        return mViewMediatorCallback;
    }
+11 −3
Original line number Diff line number Diff line
@@ -1418,7 +1418,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                    launchHomeFromHotKey();
                    break;
                case SHORT_PRESS_POWER_GO_HOME:
                    launchHomeFromHotKey(true /* awakenFromDreams */, false /*respectKeyguard*/);
                    shortPressPowerGoHome();
                    break;
                case SHORT_PRESS_POWER_CLOSE_IME_OR_GO_HOME: {
                    if (mDismissImeOnBackKeyPressed) {
@@ -1430,8 +1430,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                            mInputMethodManagerInternal.hideCurrentInputMethod();
                        }
                    } else {
                        launchHomeFromHotKey(true /* awakenFromDreams */,
                                false /*respectKeyguard*/);
                        shortPressPowerGoHome();
                    }
                    break;
                }
@@ -1439,6 +1438,15 @@ public class PhoneWindowManager implements WindowManagerPolicy {
        }
    }

    private void shortPressPowerGoHome() {
        launchHomeFromHotKey(true /* awakenFromDreams */, false /*respectKeyguard*/);
        if (isKeyguardShowingAndNotOccluded()) {
            // Notify keyguard so it can do any special handling for the power button since the
            // device will not power off and only launch home.
            mKeyguardDelegate.onShortPowerPressedGoHome();
        }
    }

    private void powerMultiPressAction(long eventTime, boolean interactive, int behavior) {
        switch (behavior) {
            case MULTI_PRESS_POWER_NOTHING:
+6 −0
Original line number Diff line number Diff line
@@ -372,6 +372,12 @@ public class KeyguardServiceDelegate {
        mKeyguardState.bootCompleted = true;
    }

    public void onShortPowerPressedGoHome() {
        if (mKeyguardService != null) {
            mKeyguardService.onShortPowerPressedGoHome();
        }
    }

    public void dump(String prefix, PrintWriter pw) {
        pw.println(prefix + TAG);
        prefix += "  ";
Loading