summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Attwell <brianattwell@google.com>2014-06-16 17:06:13 -0700
committerBrian Attwell <brianattwell@google.com>2014-06-17 04:43:10 +0000
commit02bc31e7b351281e7ca905dbf7ad72ec4119e2e0 (patch)
treece6a6010304049714c530a38a165a02487999d11
parente75b2c267761be6f7d762930b980f435c1789eea (diff)
downloadframeworks_base-02bc31e7b351281e7ca905dbf7ad72ec4119e2e0.zip
frameworks_base-02bc31e7b351281e7ca905dbf7ad72ec4119e2e0.tar.gz
frameworks_base-02bc31e7b351281e7ca905dbf7ad72ec4119e2e0.tar.bz2
setSelectedHeader() when switching to fragment
Without this change, passing a EXTRA_SHOW_FRAGMENT value for a two panel preferences activity will cause the correct fragment to be shown. However, it will not cause the correct header to be highlighted. Bug: 15675746 Bug: 5045558 Change-Id: I18d8e15dd104e8f39ae1ccbb11ab17fd1bf7462e
-rw-r--r--core/java/android/preference/PreferenceActivity.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/core/java/android/preference/PreferenceActivity.java b/core/java/android/preference/PreferenceActivity.java
index 0418049..23b1e2c 100644
--- a/core/java/android/preference/PreferenceActivity.java
+++ b/core/java/android/preference/PreferenceActivity.java
@@ -1194,7 +1194,14 @@ public abstract class PreferenceActivity extends ListActivity implements
* @param args Optional arguments to supply to the fragment.
*/
public void switchToHeader(String fragmentName, Bundle args) {
- setSelectedHeader(null);
+ Header selectedHeader = null;
+ for (int i = 0; i < mHeaders.size(); i++) {
+ if (fragmentName.equals(mHeaders.get(i).fragment)) {
+ selectedHeader = mHeaders.get(i);
+ break;
+ }
+ }
+ setSelectedHeader(selectedHeader);
switchToHeaderInner(fragmentName, args);
}