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

Unified Diff: chrome/browser/extensions/api/web_request/web_request_api.h

Issue 28273006: <webview>: Implement declarativeWebRequest API (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed nits Created 7 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
Index: chrome/browser/extensions/api/web_request/web_request_api.h
diff --git a/chrome/browser/extensions/api/web_request/web_request_api.h b/chrome/browser/extensions/api/web_request/web_request_api.h
index a68e0fb1b3f4eb69d7cffe96cadde2977ce74c4a..e8cd4cfe0b8f5a5a8b8d2ef23776cdce930f9ce2 100644
--- a/chrome/browser/extensions/api/web_request/web_request_api.h
+++ b/chrome/browser/extensions/api/web_request/web_request_api.h
@@ -14,6 +14,7 @@
#include "base/memory/singleton.h"
#include "base/memory/weak_ptr.h"
#include "base/time/time.h"
+#include "chrome/browser/extensions/api/declarative/rules_registry_service.h"
#include "chrome/browser/extensions/api/declarative_webrequest/request_stage.h"
#include "chrome/browser/extensions/api/web_request/web_request_api_helpers.h"
#include "chrome/browser/extensions/api/web_request/web_request_permissions.h"
@@ -139,6 +140,7 @@ class ExtensionWebRequestEventRouter
// the rule registry for |profile|.
void RegisterRulesRegistry(
void* profile,
+ const extensions::RulesRegistryService::WebViewKey& webview_key,
scoped_refptr<extensions::WebRequestRulesRegistry> rules_registry);
// Dispatches the OnBeforeRequest event to any extensions whose filters match
@@ -422,9 +424,12 @@ class ExtensionWebRequestEventRouter
CallbacksForPageLoad callbacks_for_page_load_;
- // Maps each profile (and OTRProfile) to its respective rules registry.
- std::map<void*, scoped_refptr<extensions::WebRequestRulesRegistry> >
- rules_registries_;
+ typedef std::pair<void*, extensions::RulesRegistryService::WebViewKey>
+ RulesRegistryKey;
+ // Maps each profile (and OTRProfile) and a webview key to its respective
+ // rules registry.
+ std::map<RulesRegistryKey,
+ scoped_refptr<extensions::WebRequestRulesRegistry> > rules_registries_;
DISALLOW_COPY_AND_ASSIGN(ExtensionWebRequestEventRouter);
};

Powered by Google App Engine
This is Rietveld 408576698