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

Unified Diff: chrome/browser/supervised_user/supervised_user_interstitial.h

Issue 597573002: Add a SupervisedUserServiceObserver. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix use-after-destroy of webcontents Created 6 years, 3 months 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
Index: chrome/browser/supervised_user/supervised_user_interstitial.h
diff --git a/chrome/browser/supervised_user/supervised_user_interstitial.h b/chrome/browser/supervised_user/supervised_user_interstitial.h
index 29f3d7226c6d7eb377fbf00ac10d8c872ee79d87..90806e70ff32eb0607be2b54d6a1cd178e5010f7 100644
--- a/chrome/browser/supervised_user/supervised_user_interstitial.h
+++ b/chrome/browser/supervised_user/supervised_user_interstitial.h
@@ -8,7 +8,7 @@
#include <string>
#include "base/callback.h"
-#include "base/prefs/pref_change_registrar.h"
+#include "chrome/browser/supervised_user/supervised_user_service_observer.h"
#include "content/public/browser/interstitial_page_delegate.h"
#include "url/gurl.h"
@@ -20,7 +20,8 @@ class WebContents;
// Delegate for an interstitial page when a page is blocked for a supervised
// user because it is on a blacklist (in "allow everything" mode) or not on any
// whitelist (in "allow only specified sites" mode).
-class SupervisedUserInterstitial : public content::InterstitialPageDelegate {
+class SupervisedUserInterstitial : public content::InterstitialPageDelegate,
+ public SupervisedUserServiceObserver {
public:
static void Show(content::WebContents* web_contents,
const GURL& url,
@@ -40,12 +41,14 @@ class SupervisedUserInterstitial : public content::InterstitialPageDelegate {
virtual void OnProceed() OVERRIDE;
virtual void OnDontProceed() OVERRIDE;
+ // SupervisedUserServiceObserver implementation.
+ virtual void OnURLFilterChanged() OVERRIDE;
+
// Returns whether the blocked URL is now allowed. Called initially before the
// interstitial is shown (to catch race conditions), or when the URL filtering
// prefs change.
bool ShouldProceed();
- void OnFilteringPrefsChanged();
void DispatchContinueRequest(bool continue_request);
// Owns the interstitial, which owns us.
@@ -53,8 +56,6 @@ class SupervisedUserInterstitial : public content::InterstitialPageDelegate {
content::InterstitialPage* interstitial_page_; // Owns us.
- PrefChangeRegistrar pref_change_registrar_;
-
GURL url_;
base::Callback<void(bool)> callback_;

Powered by Google App Engine
This is Rietveld 408576698