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

Unified Diff: chrome/renderer/extensions/content_watcher.cc

Issue 11571014: Lazy load chrome.* APIs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: android compilation Created 7 years, 9 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/renderer/extensions/content_watcher.cc
diff --git a/chrome/renderer/extensions/content_watcher.cc b/chrome/renderer/extensions/content_watcher.cc
index 5c2bb7ea5d0e58de7577ae758a1851e8c39a3cde..3176fdd0cf7dfac7a65aee9825988953358de025 100644
--- a/chrome/renderer/extensions/content_watcher.cc
+++ b/chrome/renderer/extensions/content_watcher.cc
@@ -16,11 +16,13 @@
namespace extensions {
namespace {
+
class MutationHandler : public ChromeV8Extension {
public:
explicit MutationHandler(Dispatcher* dispatcher,
+ v8::Handle<v8::Context> v8_context,
base::WeakPtr<ContentWatcher> content_watcher)
- : ChromeV8Extension(dispatcher),
+ : ChromeV8Extension(dispatcher, v8_context),
content_watcher_(content_watcher) {
RouteFunction("FrameMutated",
base::Bind(&MutationHandler::FrameMutated,
@@ -31,7 +33,7 @@ class MutationHandler : public ChromeV8Extension {
v8::Handle<v8::Value> FrameMutated(const v8::Arguments& args) {
if (content_watcher_) {
content_watcher_->ScanAndNotify(
- WebKit::WebFrame::frameForCurrentContext());
+ WebKit::WebFrame::frameForContext(v8_context()));
}
return v8::Undefined();
}
@@ -46,9 +48,10 @@ ContentWatcher::ContentWatcher(Dispatcher* dispatcher)
dispatcher_(dispatcher) {}
ContentWatcher::~ContentWatcher() {}
-scoped_ptr<NativeHandler> ContentWatcher::MakeNatives() {
- return scoped_ptr<NativeHandler>(
- new MutationHandler(dispatcher_, weak_ptr_factory_.GetWeakPtr()));
+scoped_ptr<NativeHandler> ContentWatcher::MakeNatives(
+ v8::Handle<v8::Context> v8_context) {
+ return scoped_ptr<NativeHandler>(new MutationHandler(
+ dispatcher_, v8_context, weak_ptr_factory_.GetWeakPtr()));
}
void ContentWatcher::OnWatchPages(
« no previous file with comments | « chrome/renderer/extensions/content_watcher.h ('k') | chrome/renderer/extensions/context_menus_custom_bindings.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698