summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorBryce Lee <brycelee@google.com>2014-11-21 19:18:47 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-11-21 19:18:50 +0000
commitd45cedd6f5efd141be08ce4ffcecf478fbedb056 (patch)
tree046092035beb51e8578af02402ddd3f158458d5f /core/java/android
parent0284e5e49864a6e039d77210bbea0a013b0e23ec (diff)
parentd6e6e7235a7e5c82d64beada54ac89c2b1dec201 (diff)
Merge "Make default windows features configurable." into lmp-mr1-dev
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/view/Window.java26
1 files changed, 24 insertions, 2 deletions
diff --git a/core/java/android/view/Window.java b/core/java/android/view/Window.java
index 0076abff2f09..2e5c1e0a4b42 100644
--- a/core/java/android/view/Window.java
+++ b/core/java/android/view/Window.java
@@ -20,6 +20,7 @@ import android.annotation.NonNull;
import android.annotation.Nullable;
import android.content.Context;
import android.content.res.Configuration;
+import android.content.res.Resources;
import android.content.res.TypedArray;
import android.graphics.PixelFormat;
import android.graphics.drawable.Drawable;
@@ -155,6 +156,7 @@ public abstract class Window {
"android:navigation:background";
/** The default features enabled */
+ @Deprecated
@SuppressWarnings({"PointlessBitwiseExpression"})
protected static final int DEFAULT_FEATURES = (1 << FEATURE_OPTIONS_PANEL) |
(1 << FEATURE_CONTEXT_MENU);
@@ -183,8 +185,8 @@ public abstract class Window {
private boolean mSetCloseOnTouchOutside = false;
private int mForcedWindowFlags = 0;
- private int mFeatures = DEFAULT_FEATURES;
- private int mLocalFeatures = DEFAULT_FEATURES;
+ private int mFeatures;
+ private int mLocalFeatures;
private boolean mHaveWindowFormat = false;
private boolean mHaveDimAmount = false;
@@ -442,6 +444,7 @@ public abstract class Window {
public Window(Context context) {
mContext = context;
+ mFeatures = mLocalFeatures = getDefaultFeatures(context);
}
/**
@@ -1270,6 +1273,25 @@ public abstract class Window {
}
/**
+ * Return the feature bits set by default on a window.
+ * @param context The context used to access resources
+ */
+ public static int getDefaultFeatures(Context context) {
+ int features = 0;
+
+ final Resources res = context.getResources();
+ if (res.getBoolean(com.android.internal.R.bool.config_defaultWindowFeatureOptionsPanel)) {
+ features |= 1 << FEATURE_OPTIONS_PANEL;
+ }
+
+ if (res.getBoolean(com.android.internal.R.bool.config_defaultWindowFeatureContextMenu)) {
+ features |= 1 << FEATURE_CONTEXT_MENU;
+ }
+
+ return features;
+ }
+
+ /**
* Query for the availability of a certain feature.
*
* @param feature The feature ID to check