diff options
| -rw-r--r-- | api/current.txt | 3 | ||||
| -rw-r--r-- | core/java/android/view/Window.java | 26 | ||||
| -rw-r--r-- | core/res/res/values-watch/config.xml | 3 | ||||
| -rw-r--r-- | core/res/res/values/config.xml | 4 | ||||
| -rw-r--r-- | core/res/res/values/symbols.xml | 3 |
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" /> |