[automerge] [Panlingual] Fix settings crash from rotation. 2p: 19bd21d96c

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/17615231

Bug: 228126890
Change-Id: I9d11e77c5cc04810e66f2223f4bb54897f4fed6c
This commit is contained in:
tom hsu
2022-04-06 11:33:59 +00:00
committed by Presubmit Automerger Backend

View File

@@ -86,6 +86,12 @@ public class AppLocalePickerActivity extends SettingsBaseActivity
launchLocalePickerPage();
}
@Override
public void onResume() {
super.onResume();
mLocalePickerWithRegion.getListView().addHeaderView(launchAppLocaleDetailsPage());
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == android.R.id.home) {
@@ -143,21 +149,7 @@ public class AppLocalePickerActivity extends SettingsBaseActivity
void launchLocalePickerPage() {
// LocalePickerWithRegion use android.app.ListFragment. Thus, it can not use
// getSupportFragmentManager() to add this into container.
android.app.FragmentManager fragmentManager = getFragmentManager();
fragmentManager.registerFragmentLifecycleCallbacks(
new android.app.FragmentManager.FragmentLifecycleCallbacks() {
@Override
public void onFragmentViewCreated(
android.app.FragmentManager fm,
android.app.Fragment f,
View v,
Bundle savedInstanceState) {
super.onFragmentViewCreated(fm, f, v, savedInstanceState);
mLocalePickerWithRegion.getListView()
.addHeaderView(launchAppLocaleDetailsPage());
}
}, true);
fragmentManager.beginTransaction()
getFragmentManager().beginTransaction()
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.replace(R.id.content_frame, mLocalePickerWithRegion)
.commit();