summaryrefslogtreecommitdiffstats
path: root/core/java/android/view
diff options
context:
space:
mode:
authorAdam Powell <adamp@google.com>2014-03-13 23:53:38 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-03-13 23:53:38 +0000
commit41685ce983abd6b4ccbb0ae8043d6a1dc118f7d3 (patch)
tree5b1109d42bf49d77eacbbfafb2661588b8b4cebb /core/java/android/view
parentaa737c49df79749fe92b89d745eba7442762e2b5 (diff)
parent898d6d964cb3b650b5c9bed2276310547e5455e0 (diff)
downloadframeworks_base-41685ce983abd6b4ccbb0ae8043d6a1dc118f7d3.zip
frameworks_base-41685ce983abd6b4ccbb0ae8043d6a1dc118f7d3.tar.gz
frameworks_base-41685ce983abd6b4ccbb0ae8043d6a1dc118f7d3.tar.bz2
am 898d6d96: am 7f2c9e94: Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey" into klp-dev
* commit '898d6d964cb3b650b5c9bed2276310547e5455e0': Add a config override for ViewConfiguration#hasPermanentMenuKey
Diffstat (limited to 'core/java/android/view')
-rw-r--r--core/java/android/view/ViewConfiguration.java39
1 files changed, 33 insertions, 6 deletions
diff --git a/core/java/android/view/ViewConfiguration.java b/core/java/android/view/ViewConfiguration.java
index c3f064f..e67659c 100644
--- a/core/java/android/view/ViewConfiguration.java
+++ b/core/java/android/view/ViewConfiguration.java
@@ -212,6 +212,14 @@ public class ViewConfiguration {
*/
private static final int OVERFLING_DISTANCE = 6;
+ /**
+ * Configuration values for overriding {@link #hasPermanentMenuKey()} behavior.
+ * These constants must match the definition in res/values/config.xml.
+ */
+ private static final int HAS_PERMANENT_MENU_KEY_AUTODETECT = 0;
+ private static final int HAS_PERMANENT_MENU_KEY_TRUE = 1;
+ private static final int HAS_PERMANENT_MENU_KEY_FALSE = 2;
+
private final int mEdgeSlop;
private final int mFadingEdgeLength;
private final int mMinimumFlingVelocity;
@@ -296,12 +304,31 @@ public class ViewConfiguration {
mOverflingDistance = (int) (sizeAndDensity * OVERFLING_DISTANCE + 0.5f);
if (!sHasPermanentMenuKeySet) {
- IWindowManager wm = WindowManagerGlobal.getWindowManagerService();
- try {
- sHasPermanentMenuKey = !wm.hasNavigationBar();
- sHasPermanentMenuKeySet = true;
- } catch (RemoteException ex) {
- sHasPermanentMenuKey = false;
+ final int configVal = res.getInteger(
+ com.android.internal.R.integer.config_overrideHasPermanentMenuKey);
+
+ switch (configVal) {
+ default:
+ case HAS_PERMANENT_MENU_KEY_AUTODETECT: {
+ IWindowManager wm = WindowManagerGlobal.getWindowManagerService();
+ try {
+ sHasPermanentMenuKey = !wm.hasNavigationBar();
+ sHasPermanentMenuKeySet = true;
+ } catch (RemoteException ex) {
+ sHasPermanentMenuKey = false;
+ }
+ }
+ break;
+
+ case HAS_PERMANENT_MENU_KEY_TRUE:
+ sHasPermanentMenuKey = true;
+ sHasPermanentMenuKeySet = true;
+ break;
+
+ case HAS_PERMANENT_MENU_KEY_FALSE:
+ sHasPermanentMenuKey = false;
+ sHasPermanentMenuKeySet = true;
+ break;
}
}