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

Commit d862ebb6 authored by Narayan Kamath's avatar Narayan Kamath
Browse files

resolved conflicts for merge of fcc4fed3 to master

Change-Id: Icebca982b01debd67a1470c02651ef8936f6e5b0
parents 9853e2a8 fcc4fed3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@ interface IPowerManager

    void userActivity(long time, int event, int flags);
    void wakeUp(long time);
    void goToSleep(long time, int reason);
    void goToSleep(long time, int reason, int flags);
    void nap(long time);
    boolean isInteractive();

+14 −1
Original line number Diff line number Diff line
@@ -321,6 +321,12 @@ public final class PowerManager {
     */
    public static final String REBOOT_RECOVERY = "recovery";
    
    /**
     * Go to sleep flag: Skip dozing state and directly go to full sleep.
     * @hide
     */
    public static final int GO_TO_SLEEP_FLAG_NO_DOZE = 1 << 0;

    final Context mContext;
    final IPowerManager mService;
    final Handler mHandler;
@@ -500,8 +506,15 @@ public final class PowerManager {
     * @see #wakeUp
     */
    public void goToSleep(long time) {
        goToSleep(time, GO_TO_SLEEP_REASON_USER, 0);
    }

    /**
     * @hide
     */
    public void goToSleep(long time, int reason, int flags) {
        try {
            mService.goToSleep(time, GO_TO_SLEEP_REASON_USER);
            mService.goToSleep(time, reason, flags);
        } catch (RemoteException e) {
        }
    }
+8 −0
Original line number Diff line number Diff line
@@ -498,6 +498,14 @@
    -->
    <integer name="config_longPressOnPowerBehavior">1</integer>

    <!-- Control the behavior when the user short presses the power button.
            0 - Nothing
            1 - Go to sleep (doze)
            2 - Really go to sleep (don't doze)
            3 - Really go to sleep and go home (don't doze)
    -->
    <integer name="config_shortPressOnPowerBehavior">1</integer>

    <!-- Package name for default keyguard appwidget [DO NOT TRANSLATE] -->
    <string name="widget_default_package_name"></string>

+1 −0
Original line number Diff line number Diff line
@@ -305,6 +305,7 @@
  <java-symbol type="integer" name="config_ntpRetry" />
  <java-symbol type="integer" name="config_ntpThreshold" />
  <java-symbol type="integer" name="config_ntpTimeout" />
  <java-symbol type="integer" name="config_shortPressOnPowerBehavior" />
  <java-symbol type="integer" name="config_toastDefaultGravity" />
  <java-symbol type="integer" name="config_wifi_framework_scan_interval" />
  <java-symbol type="integer" name="config_wifi_supplicant_scan_interval" />
+41 −5
Original line number Diff line number Diff line
@@ -141,6 +141,11 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    // Whether to use the new Session APIs
    static final boolean USE_SESSIONS = true;

    static final int SHORT_PRESS_POWER_NOTHING = 0;
    static final int SHORT_PRESS_POWER_GO_TO_SLEEP = 1;
    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 LONG_PRESS_POWER_NOTHING = 0;
    static final int LONG_PRESS_POWER_GLOBAL_ACTIONS = 1;
    static final int LONG_PRESS_POWER_SHUT_OFF = 2;
@@ -298,6 +303,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    int mLidKeyboardAccessibility;
    int mLidNavigationAccessibility;
    boolean mLidControlsSleep;
    int mShortPressOnPowerBehavior = -1;
    int mLongPressOnPowerBehavior = -1;
    boolean mScreenOnEarly = false;
    boolean mScreenOnFully = false;
@@ -715,6 +721,33 @@ public class PhoneWindowManager implements WindowManagerPolicy {
        mHandler.removeCallbacks(mScreenshotRunnable);
    }

    private void powerShortPress(long eventTime) {
        if (mShortPressOnPowerBehavior < 0) {
            mShortPressOnPowerBehavior = mContext.getResources().getInteger(
                    com.android.internal.R.integer.config_shortPressOnPowerBehavior);
        }

        switch (mShortPressOnPowerBehavior) {
            case SHORT_PRESS_POWER_NOTHING:
                break;
            case SHORT_PRESS_POWER_GO_TO_SLEEP:
                mPowerManager.goToSleep(eventTime,
                        PowerManager.GO_TO_SLEEP_REASON_USER, 0);
                break;
            case SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP:
                mPowerManager.goToSleep(eventTime,
                        PowerManager.GO_TO_SLEEP_REASON_USER,
                        PowerManager.GO_TO_SLEEP_FLAG_NO_DOZE);
                break;
            case SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP_AND_GO_HOME:
                mPowerManager.goToSleep(eventTime,
                        PowerManager.GO_TO_SLEEP_REASON_USER,
                        PowerManager.GO_TO_SLEEP_FLAG_NO_DOZE);
                launchHomeFromHotKey();
                break;
        }
    }

    private final Runnable mPowerLongPress = new Runnable() {
        @Override
        public void run() {
@@ -4038,7 +4071,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                    mPowerKeyTriggered = false;
                    cancelPendingScreenshotChordAction();
                    if (interceptPowerKeyUp(canceled || mPendingPowerKeyUpCanceled)) {
                        mPowerManager.goToSleep(event.getEventTime());
                        powerShortPress(event.getEventTime());
                        isWakeKey = false;
                    }
                    mPendingPowerKeyUpCanceled = false;
@@ -4930,7 +4963,9 @@ public class PhoneWindowManager implements WindowManagerPolicy {

    private void applyLidSwitchState() {
        if (mLidState == LID_CLOSED && mLidControlsSleep) {
            mPowerManager.goToSleep(SystemClock.uptimeMillis());
            mPowerManager.goToSleep(SystemClock.uptimeMillis(),
                    PowerManager.GO_TO_SLEEP_REASON_USER,
                    PowerManager.GO_TO_SLEEP_FLAG_NO_DOZE);
        }
    }

@@ -5409,9 +5444,10 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                pw.print(mLidKeyboardAccessibility);
                pw.print(" mLidNavigationAccessibility="); pw.print(mLidNavigationAccessibility);
                pw.print(" mLidControlsSleep="); pw.println(mLidControlsSleep);
        pw.print(prefix); pw.print("mLongPressOnPowerBehavior=");
                pw.print(mLongPressOnPowerBehavior);
                pw.print(" mHasSoftInput="); pw.println(mHasSoftInput);
        pw.print(prefix);
                pw.print("mShortPressOnPowerBehavior="); pw.print(mShortPressOnPowerBehavior);
                pw.print(" mLongPressOnPowerBehavior="); pw.println(mLongPressOnPowerBehavior);
        pw.print(prefix); pw.print("mHasSoftInput="); pw.println(mHasSoftInput);
        pw.print(prefix); pw.print("mScreenOnEarly="); pw.print(mScreenOnEarly);
                pw.print(" mScreenOnFully="); pw.print(mScreenOnFully);
                pw.print(" mOrientationSensorEnabled="); pw.println(mOrientationSensorEnabled);
Loading