diff options
-rw-r--r-- | core/res/res/values/config.xml | 2 | ||||
-rw-r--r-- | core/res/res/values/symbols.xml | 1 | ||||
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindowManager.java | 9 |
3 files changed, 11 insertions, 1 deletions
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml index 652e40cc66e5..52ef4f942a76 100644 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml @@ -473,6 +473,8 @@ <bool name="config_allowTheaterModeWakeFromDock">false</bool> <!-- If this is true, allow wake from theater mode from window layout flag. --> <bool name="config_allowTheaterModeWakeFromWindowLayout">false</bool> + <!-- If this is true, go to sleep when theater mode is enabled from button press --> + <bool name="config_goToSleepOnButtonPressTheaterMode">true</bool> <!-- Auto-rotation behavior --> diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index a5f0ff12eb00..db3ced1ce9c5 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -1584,6 +1584,7 @@ <java-symbol type="bool" name="config_allowTheaterModeWakeFromLidSwitch" /> <java-symbol type="bool" name="config_allowTheaterModeWakeFromDock" /> <java-symbol type="bool" name="config_allowTheaterModeWakeFromWindowLayout" /> + <java-symbol type="bool" name="config_goToSleepOnButtonPressTheaterMode" /> <java-symbol type="bool" name="config_wifi_background_scan_support" /> <java-symbol type="bool" name="config_wifi_dual_band_support" /> <java-symbol type="bool" name="config_wimaxEnabled" /> diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java index 792712f66e1b..0291a354f740 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java @@ -527,6 +527,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { private boolean mAllowTheaterModeWakeFromLidSwitch; private boolean mAllowTheaterModeWakeFromWakeGesture; + // Whether to go to sleep entering theater mode from power button + private boolean mGoToSleepOnButtonPressTheaterMode; + // Screenshot trigger states // Time to volume and power must be pressed within this interval of each other. private static final long SCREENSHOT_CHORD_DEBOUNCE_DELAY_MILLIS = 150; @@ -984,7 +987,8 @@ public class PhoneWindowManager implements WindowManagerPolicy { Slog.i(TAG, "Toggling theater mode on."); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.THEATER_MODE_ON, 1); - if (interactive) { + + if (mGoToSleepOnButtonPressTheaterMode && interactive) { mPowerManager.goToSleep(eventTime, PowerManager.GO_TO_SLEEP_REASON_POWER_BUTTON, 0); } @@ -1236,6 +1240,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { mAllowTheaterModeWakeFromWakeGesture = mContext.getResources().getBoolean( com.android.internal.R.bool.config_allowTheaterModeWakeFromGesture); + mGoToSleepOnButtonPressTheaterMode = mContext.getResources().getBoolean( + com.android.internal.R.bool.config_goToSleepOnButtonPressTheaterMode); + mShortPressOnPowerBehavior = mContext.getResources().getInteger( com.android.internal.R.integer.config_shortPressOnPowerBehavior); mLongPressOnPowerBehavior = mContext.getResources().getInteger( |