summaryrefslogtreecommitdiffstats
path: root/policy
diff options
context:
space:
mode:
authorJeff Brown <jeffbrown@google.com>2013-06-05 22:00:58 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-06-05 22:00:58 +0000
commitf8038bddcea53d8dfe98e17c5d996b52a8eb5c4e (patch)
treeffa4f1bdff3f0a04cd0583124d657f2e5803f792 /policy
parent06543a4559b34abf91e34cb44438683e77e7db36 (diff)
parentf71343ddf0f10db762f1b4ad5717f04742f83b66 (diff)
downloadframeworks_base-f8038bddcea53d8dfe98e17c5d996b52a8eb5c4e.zip
frameworks_base-f8038bddcea53d8dfe98e17c5d996b52a8eb5c4e.tar.gz
frameworks_base-f8038bddcea53d8dfe98e17c5d996b52a8eb5c4e.tar.bz2
Merge "Fix regression in long-press home behavior on tablets." into jb-mr2-dev
Diffstat (limited to 'policy')
-rw-r--r--policy/src/com/android/internal/policy/impl/PhoneWindowManager.java37
1 files changed, 23 insertions, 14 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
index a4275a3..b0cd11ae 100644
--- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
+++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
@@ -885,20 +885,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
com.android.internal.R.integer.config_lidNavigationAccessibility);
mLidControlsSleep = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_lidControlsSleep);
-
- mLongPressOnHomeBehavior = mContext.getResources().getInteger(
- com.android.internal.R.integer.config_longPressOnHomeBehavior);
- if (mLongPressOnHomeBehavior < LONG_PRESS_HOME_NOTHING ||
- mLongPressOnHomeBehavior > LONG_PRESS_HOME_ASSIST) {
- mLongPressOnHomeBehavior = LONG_PRESS_HOME_NOTHING;
- }
-
- mDoubleTapOnHomeBehavior = mContext.getResources().getInteger(
- com.android.internal.R.integer.config_doubleTapOnHomeBehavior);
- if (mDoubleTapOnHomeBehavior < DOUBLE_TAP_HOME_NOTHING ||
- mDoubleTapOnHomeBehavior > DOUBLE_TAP_HOME_RECENT_SYSTEM_UI) {
- mDoubleTapOnHomeBehavior = LONG_PRESS_HOME_NOTHING;
- }
+ readConfigurationDependentBehaviors();
// register for dock events
IntentFilter filter = new IntentFilter();
@@ -952,6 +939,27 @@ public class PhoneWindowManager implements WindowManagerPolicy {
}
}
+ /**
+ * Read values from config.xml that may be overridden depending on
+ * the configuration of the device.
+ * eg. Disable long press on home goes to recents on sw600dp.
+ */
+ private void readConfigurationDependentBehaviors() {
+ mLongPressOnHomeBehavior = mContext.getResources().getInteger(
+ com.android.internal.R.integer.config_longPressOnHomeBehavior);
+ if (mLongPressOnHomeBehavior < LONG_PRESS_HOME_NOTHING ||
+ mLongPressOnHomeBehavior > LONG_PRESS_HOME_ASSIST) {
+ mLongPressOnHomeBehavior = LONG_PRESS_HOME_NOTHING;
+ }
+
+ mDoubleTapOnHomeBehavior = mContext.getResources().getInteger(
+ com.android.internal.R.integer.config_doubleTapOnHomeBehavior);
+ if (mDoubleTapOnHomeBehavior < DOUBLE_TAP_HOME_NOTHING ||
+ mDoubleTapOnHomeBehavior > DOUBLE_TAP_HOME_RECENT_SYSTEM_UI) {
+ mDoubleTapOnHomeBehavior = LONG_PRESS_HOME_NOTHING;
+ }
+ }
+
@Override
public void setInitialDisplaySize(Display display, int width, int height, int density) {
if (display.getDisplayId() != Display.DEFAULT_DISPLAY) {
@@ -1332,6 +1340,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
int navigationPresence) {
mHaveBuiltInKeyboard = (keyboardPresence & PRESENCE_INTERNAL) != 0;
+ readConfigurationDependentBehaviors();
readLidState();
applyLidSwitchState();