diff options
author | Adam Powell <adamp@google.com> | 2011-09-23 14:22:49 -0700 |
---|---|---|
committer | Adam Powell <adamp@google.com> | 2011-09-23 14:23:30 -0700 |
commit | a05aba9c506cd12a753c53e060c289095c3477e9 (patch) | |
tree | 9eb386e1e2edd1d02a525279294af83af3c2c1ce /policy/src/com/android/internal | |
parent | 90d33ccd16cf909ac4920a593772204d7bcf45db (diff) | |
download | frameworks_base-a05aba9c506cd12a753c53e060c289095c3477e9.zip frameworks_base-a05aba9c506cd12a753c53e060c289095c3477e9.tar.gz frameworks_base-a05aba9c506cd12a753c53e060c289095c3477e9.tar.bz2 |
Fix bug 5341139 - bottom bar stays if app wants to handle orientation
change
Let action bars move between split/unsplit mode on configuration
changes if set to split when narrow.
Change-Id: I13f5115a65247cb1878ee823493ca8e2b6ba4cf6
Diffstat (limited to 'policy/src/com/android/internal')
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindow.java | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindow.java b/policy/src/com/android/internal/policy/impl/PhoneWindow.java index 53b64a6..d562f15 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindow.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindow.java @@ -2762,28 +2762,30 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { } boolean splitActionBar = false; - if ((mUiOptions & ActivityInfo.UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW) != 0) { + final boolean splitWhenNarrow = + (mUiOptions & ActivityInfo.UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW) != 0; + if (splitWhenNarrow) { splitActionBar = getContext().getResources().getBoolean( com.android.internal.R.bool.split_action_bar_is_narrow); } else { splitActionBar = getWindowStyle().getBoolean( com.android.internal.R.styleable.Window_windowSplitActionBar, false); } - if (splitActionBar) { - final ActionBarContainer splitView = (ActionBarContainer) findViewById( - com.android.internal.R.id.split_action_bar); - if (splitView != null) { - splitView.setVisibility(View.VISIBLE); - mActionBar.setSplitActionBar(splitActionBar); - mActionBar.setSplitView(splitView); - - final ActionBarContextView cab = (ActionBarContextView) findViewById( - com.android.internal.R.id.action_context_bar); - cab.setSplitView(splitView); - } else { - Log.e(TAG, "Requested split action bar with " + - "incompatible window decor! Ignoring request."); - } + final ActionBarContainer splitView = (ActionBarContainer) findViewById( + com.android.internal.R.id.split_action_bar); + if (splitView != null) { + mActionBar.setSplitView(splitView); + mActionBar.setSplitActionBar(splitActionBar); + mActionBar.setSplitWhenNarrow(splitWhenNarrow); + + final ActionBarContextView cab = (ActionBarContextView) findViewById( + com.android.internal.R.id.action_context_bar); + cab.setSplitView(splitView); + cab.setSplitActionBar(splitActionBar); + cab.setSplitWhenNarrow(splitWhenNarrow); + } else if (splitActionBar) { + Log.e(TAG, "Requested split action bar with " + + "incompatible window decor! Ignoring request."); } // Post the panel invalidate for later; avoid application onCreateOptionsMenu |