Plug window leak in editor
Test:
Rotate and switch screens with the "choose default account"
dialog showing.
Bug: 32118572
Change-Id: I305fd06ffbc94fee761a93daaa0eb14b3980e87d
diff --git a/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java b/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
index c2ec4ac..3027707 100644
--- a/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
+++ b/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
@@ -56,6 +56,7 @@
private AccountsListAdapter mAccountListAdapter;
private ContactEditorUtils mEditorUtils;
+ private AlertDialog mDialog;
private final OnItemClickListener mAccountListItemClickListener = new OnItemClickListener() {
@Override
@@ -76,6 +77,22 @@
};
@Override
+ protected void onResume() {
+ super.onResume();
+ if (mDialog != null && !mDialog.isShowing()) {
+ mDialog.show();
+ }
+ }
+
+ @Override
+ protected void onPause() {
+ super.onPause();
+ if (mDialog != null) {
+ mDialog.dismiss();
+ }
+ }
+
+ @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -166,7 +183,7 @@
rightButton.setOnClickListener(mAddAccountClickListener);
}
- new AlertDialog.Builder(this)
+ mDialog = new AlertDialog.Builder(this)
.setView(view)
.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override
@@ -174,8 +191,8 @@
finish();
}
})
- .create()
- .show();
+ .create();
+ mDialog.show();
}
@Override