Fix "Play media to" popup close issue when screen rotate
- Avoid calling getListPreference() in onDialogClose() everytime. Due to exception in onDialogClose(). Move preference declaration into if condition. - Add test case for crash case. Bug: 119744621 Test: make -j50 RunSettingsRoboTests ROBOTEST_FILTER=UpdatableListPreferenceDialogFragmentTest Change-Id: Ia20b8289a5863136ea74e02e32b537f6967474e8
This commit is contained in:
@@ -84,8 +84,8 @@ public class UpdatableListPreferenceDialogFragment extends PreferenceDialogFragm
|
||||
|
||||
@Override
|
||||
public void onDialogClosed(boolean positiveResult) {
|
||||
final ListPreference preference = getListPreference();
|
||||
if (positiveResult && mClickedDialogEntryIndex >= 0) {
|
||||
final ListPreference preference = getListPreference();
|
||||
final String value = mEntryValues[mClickedDialogEntryIndex].toString();
|
||||
if (preference.callChangeListener(value)) {
|
||||
preference.setValue(value);
|
||||
@@ -144,7 +144,8 @@ public class UpdatableListPreferenceDialogFragment extends PreferenceDialogFragm
|
||||
return mMetricsCategory;
|
||||
}
|
||||
|
||||
private ListPreference getListPreference() {
|
||||
@VisibleForTesting
|
||||
ListPreference getListPreference() {
|
||||
return (ListPreference) getPreference();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user