summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/current.txt3
-rw-r--r--core/java/android/view/Window.java26
-rw-r--r--core/res/res/values-watch/config.xml3
-rw-r--r--core/res/res/values/config.xml4
-rw-r--r--core/res/res/values/symbols.xml3
5 files changed, 36 insertions, 3 deletions
diff --git a/api/current.txt b/api/current.txt
index d25ae966d907..f6c3c17e2c97 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -34459,6 +34459,7 @@ package android.view {
method public final android.content.Context getContext();
method public abstract android.view.View getCurrentFocus();
method public abstract android.view.View getDecorView();
+ method public static int getDefaultFeatures(android.content.Context);
method public android.transition.Transition getEnterTransition();
method public android.transition.Transition getExitTransition();
method protected final int getFeatures();
@@ -34560,7 +34561,7 @@ package android.view {
method public abstract void takeKeyEvents(boolean);
method public abstract void takeSurface(android.view.SurfaceHolder.Callback2);
method public abstract void togglePanel(int, android.view.KeyEvent);
- field protected static final int DEFAULT_FEATURES = 65; // 0x41
+ field protected static final deprecated int DEFAULT_FEATURES = 65; // 0x41
field public static final int FEATURE_ACTION_BAR = 8; // 0x8
field public static final int FEATURE_ACTION_BAR_OVERLAY = 9; // 0x9
field public static final int FEATURE_ACTION_MODE_OVERLAY = 10; // 0xa
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
diff --git a/core/res/res/values-watch/config.xml b/core/res/res/values-watch/config.xml
index 6052fb0f33ff..3eede32bd344 100644
--- a/core/res/res/values-watch/config.xml
+++ b/core/res/res/values-watch/config.xml
@@ -40,4 +40,7 @@
Reduced intentionally for watches to retain minimal memory footprint -->
<integer name="config_notificationServiceArchiveSize">1</integer>
+ <!-- Flags enabling default window features. See Window.java -->
+ <bool name="config_defaultWindowFeatureOptionsPanel">false</bool>
+ <bool name="config_defaultWindowFeatureContextMenu">false</bool>
</resources>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 6e635f310d6c..bb2ee48e82a7 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -1927,6 +1927,10 @@
<!-- Show the next-alarm as a zen exit condition if it occurs in the next n hours. -->
<integer name="config_next_alarm_condition_lookahead_threshold_hrs">12</integer>
+ <!-- Flags enabling default window features. See Window.java -->
+ <bool name="config_defaultWindowFeatureOptionsPanel">true</bool>
+ <bool name="config_defaultWindowFeatureContextMenu">true</bool>
+
<!-- This config is used to check if the carrier requires converting destination
number before sending out a SMS.
Formats for this configuration as below:
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 25ead905df30..7bb57ce41680 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -2120,6 +2120,9 @@
<java-symbol type="bool" name="config_switch_phone_on_voice_reg_state_change" />
<java-symbol type="string" name="whichHomeApplicationNamed" />
<java-symbol type="bool" name="config_sms_force_7bit_encoding" />
+ <java-symbol type="bool" name="config_defaultWindowFeatureOptionsPanel" />
+ <java-symbol type="bool" name="config_defaultWindowFeatureContextMenu" />
+
<java-symbol type="layout" name="simple_account_item" />
<java-symbol type="id" name="scrollIndicatorUp" />
<java-symbol type="id" name="scrollIndicatorDown" />