diff options
| -rw-r--r-- | core/java/com/android/internal/view/menu/ActionMenuPresenter.java | 11 | ||||
| -rw-r--r-- | core/java/com/android/internal/widget/ActionBarContextView.java | 9 | ||||
| -rw-r--r-- | core/java/com/android/internal/widget/ActionBarView.java | 3 | ||||
| -rw-r--r-- | core/res/res/values-w360dp/dimens.xml (renamed from core/res/res/values-port/dimens.xml) | 2 | ||||
| -rw-r--r-- | core/res/res/values-w500dp/dimens.xml | 24 | ||||
| -rw-r--r-- | core/res/res/values-w600dp/dimens.xml | 24 | ||||
| -rw-r--r-- | core/res/res/values/dimens.xml | 2 |
7 files changed, 73 insertions, 2 deletions
diff --git a/core/java/com/android/internal/view/menu/ActionMenuPresenter.java b/core/java/com/android/internal/view/menu/ActionMenuPresenter.java index dd75925293c6..df4243a4826f 100644 --- a/core/java/com/android/internal/view/menu/ActionMenuPresenter.java +++ b/core/java/com/android/internal/view/menu/ActionMenuPresenter.java @@ -19,6 +19,7 @@ package com.android.internal.view.menu; import com.android.internal.view.menu.ActionMenuView.ActionMenuChildView; import android.content.Context; +import android.content.res.Configuration; import android.content.res.Resources; import android.os.Parcel; import android.os.Parcelable; @@ -109,6 +110,16 @@ public class ActionMenuPresenter extends BaseMenuPresenter { mScrapActionButtonView = null; } + public void onConfigurationChanged(Configuration newConfig) { + if (!mMaxItemsSet) { + mMaxItems = mContext.getResources().getInteger( + com.android.internal.R.integer.max_action_buttons); + if (mMenu != null) { + mMenu.onItemsChanged(true); + } + } + } + public void setWidthLimit(int width, boolean strict) { mWidthLimit = width; mStrictWidthLimit = strict; diff --git a/core/java/com/android/internal/widget/ActionBarContextView.java b/core/java/com/android/internal/widget/ActionBarContextView.java index 5645a6f5fbf8..45d38ae7333e 100644 --- a/core/java/com/android/internal/widget/ActionBarContextView.java +++ b/core/java/com/android/internal/widget/ActionBarContextView.java @@ -25,6 +25,7 @@ import android.animation.Animator.AnimatorListener; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.content.Context; +import android.content.res.Configuration; import android.content.res.TypedArray; import android.graphics.drawable.Drawable; import android.text.TextUtils; @@ -92,6 +93,14 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi a.recycle(); } + @Override + public void onConfigurationChanged(Configuration newConfig) { + super.onConfigurationChanged(newConfig); + if (mActionMenuPresenter != null) { + mActionMenuPresenter.onConfigurationChanged(newConfig); + } + } + public void setHeight(int height) { mContentHeight = height; } diff --git a/core/java/com/android/internal/widget/ActionBarView.java b/core/java/com/android/internal/widget/ActionBarView.java index 078e08ab4b87..28181ba02823 100644 --- a/core/java/com/android/internal/widget/ActionBarView.java +++ b/core/java/com/android/internal/widget/ActionBarView.java @@ -259,6 +259,9 @@ public class ActionBarView extends AbsActionBarView { com.android.internal.R.attr.actionBarStyle, 0); setContentHeight(a.getLayoutDimension(R.styleable.ActionBar_height, 0)); a.recycle(); + if (mActionMenuPresenter != null) { + mActionMenuPresenter.onConfigurationChanged(newConfig); + } } @Override diff --git a/core/res/res/values-port/dimens.xml b/core/res/res/values-w360dp/dimens.xml index bf0a3426aff7..0f5d656848e3 100644 --- a/core/res/res/values-port/dimens.xml +++ b/core/res/res/values-w360dp/dimens.xml @@ -20,5 +20,5 @@ <!-- The maximum number of action buttons that should be permitted within an action bar/action mode. This will be used to determine how many showAsAction="ifRoom" items can fit. "always" items can override this. --> - <integer name="max_action_buttons">2</integer> + <integer name="max_action_buttons">3</integer> </resources> diff --git a/core/res/res/values-w500dp/dimens.xml b/core/res/res/values-w500dp/dimens.xml new file mode 100644 index 000000000000..68841ca6e0a3 --- /dev/null +++ b/core/res/res/values-w500dp/dimens.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** Copyright 2011, The Android Open Source Project +** +** Licensed under the Apache License, Version 2.0 (the "License"); +** you may not use this file except in compliance with the License. +** You may obtain a copy of the License at +** +** http://www.apache.org/licenses/LICENSE-2.0 +** +** Unless required by applicable law or agreed to in writing, software +** distributed under the License is distributed on an "AS IS" BASIS, +** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +** See the License for the specific language governing permissions and +** limitations under the License. +*/ +--> +<resources> + <!-- The maximum number of action buttons that should be permitted within + an action bar/action mode. This will be used to determine how many + showAsAction="ifRoom" items can fit. "always" items can override this. --> + <integer name="max_action_buttons">4</integer> +</resources> diff --git a/core/res/res/values-w600dp/dimens.xml b/core/res/res/values-w600dp/dimens.xml new file mode 100644 index 000000000000..83c45b51db8c --- /dev/null +++ b/core/res/res/values-w600dp/dimens.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** Copyright 2011, The Android Open Source Project +** +** Licensed under the Apache License, Version 2.0 (the "License"); +** you may not use this file except in compliance with the License. +** You may obtain a copy of the License at +** +** http://www.apache.org/licenses/LICENSE-2.0 +** +** Unless required by applicable law or agreed to in writing, software +** distributed under the License is distributed on an "AS IS" BASIS, +** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +** See the License for the specific language governing permissions and +** limitations under the License. +*/ +--> +<resources> + <!-- The maximum number of action buttons that should be permitted within + an action bar/action mode. This will be used to determine how many + showAsAction="ifRoom" items can fit. "always" items can override this. --> + <integer name="max_action_buttons">5</integer> +</resources> diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml index 83e869395358..c522c1e90027 100644 --- a/core/res/res/values/dimens.xml +++ b/core/res/res/values/dimens.xml @@ -28,7 +28,7 @@ <!-- The maximum number of action buttons that should be permitted within an action bar/action mode. This will be used to determine how many showAsAction="ifRoom" items can fit. "always" items can override this. --> - <integer name="max_action_buttons">3</integer> + <integer name="max_action_buttons">2</integer> <dimen name="toast_y_offset">64dip</dimen> <!-- Height of the status bar --> <dimen name="status_bar_height">25dip</dimen> |