Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(390)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/permissions/PermissionDialogController.java

Issue 2508103002: Free the native delegate when the user accepts a modal permission dialog. (Closed)
Patch Set: Address comments Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/permissions/PermissionDialogController.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/permissions/PermissionDialogController.java b/chrome/android/java/src/org/chromium/chrome/browser/permissions/PermissionDialogController.java
index 589d8b2404ae513fb706895639cbe8526a364b35..d2f5e5a01a55c916d717327bdad0371d874c7b1c 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/permissions/PermissionDialogController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/permissions/PermissionDialogController.java
@@ -102,12 +102,14 @@ public class PermissionDialogController implements AndroidPermissionRequester.Re
@Override
public void onAndroidPermissionAccepted() {
mDialogDelegate.onAccept(mSwitchView.isChecked());
+ destroyDelegate();
scheduleDisplay();
}
@Override
public void onAndroidPermissionCanceled() {
mDialogDelegate.onDismiss();
+ destroyDelegate();
scheduleDisplay();
}
@@ -126,7 +128,7 @@ public class PermissionDialogController implements AndroidPermissionRequester.Re
// so act as though the user dismissed it.
if (activity == null) {
mDialogDelegate.onDismiss();
- mDialogDelegate.destroy();
+ destroyDelegate();
return;
}
@@ -208,7 +210,7 @@ public class PermissionDialogController implements AndroidPermissionRequester.Re
} else {
mDialogDelegate.onDismiss();
}
- mDialogDelegate.destroy();
+ destroyDelegate();
scheduleDisplay();
}
}
@@ -243,4 +245,9 @@ public class PermissionDialogController implements AndroidPermissionRequester.Re
return fullString;
}
+
+ private void destroyDelegate() {
+ mDialogDelegate.destroy();
+ mDialogDelegate = null;
+ }
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698