Expand all preferences when launch from search.

- when the fragment is created, checks the argument to see if the extra
fragment arg key is set. If so, do not hide the preferences in the
advanced button.

Change-Id: Id662ae1cec77edad7fcd5d6daa71929a8cb1402c
Fixes: 68988454
Test: make RunSettingsRoboTests
This commit is contained in:
Doris Ling
2017-11-09 14:36:51 -08:00
parent b84c1c5afa
commit 6589a07d59
2 changed files with 30 additions and 10 deletions

View File

@@ -150,8 +150,8 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF
}
// Prepare help url and enable menu if necessary
Bundle arguments = getArguments();
int helpResource;
final Bundle arguments = getArguments();
final int helpResource;
if (arguments != null && arguments.containsKey(HELP_URI_RESOURCE_KEY)) {
helpResource = arguments.getInt(HELP_URI_RESOURCE_KEY);
} else {
@@ -160,6 +160,14 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF
if (helpResource != 0) {
mHelpUri = getResources().getString(helpResource);
}
// Check if we should keep the preferences expanded.
if (arguments != null) {
mPreferenceKey = arguments.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
if (!TextUtils.isEmpty(mPreferenceKey)) {
getPreferenceScreen().setInitialExpandedChildrenCount(Integer.MAX_VALUE);
}
}
}
@Override
@@ -224,9 +232,7 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF
public void onResume() {
super.onResume();
final Bundle args = getArguments();
if (args != null) {
mPreferenceKey = args.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
if (mPreferenceKey != null) {
highlightPreferenceIfNeeded();
}
}