diff options
author | Narayan Kamath <narayan@google.com> | 2014-05-21 12:07:35 +0100 |
---|---|---|
committer | Narayan Kamath <narayan@google.com> | 2014-05-21 12:07:35 +0100 |
commit | d862ebb6036a769cb3be371b396e9e33f89ee365 (patch) | |
tree | ebe36d1f47fc0c58ee0dfa295bb776ea3faad1c0 /policy | |
parent | 9853e2a8b37c80a11427f48b3b4976408f615e57 (diff) | |
parent | fcc4fed3c16a57ef713a96b7298ed43aaeef2df4 (diff) | |
download | frameworks_base-d862ebb6036a769cb3be371b396e9e33f89ee365.zip frameworks_base-d862ebb6036a769cb3be371b396e9e33f89ee365.tar.gz frameworks_base-d862ebb6036a769cb3be371b396e9e33f89ee365.tar.bz2 |
resolved conflicts for merge of fcc4fed3 to master
Change-Id: Icebca982b01debd67a1470c02651ef8936f6e5b0
Diffstat (limited to 'policy')
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindowManager.java | 46 |
1 files changed, 41 insertions, 5 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java index d0305e0..99dd2f4 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java @@ -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); |