Index: third_party/WebKit/Source/core/frame/Frame.cpp |
diff --git a/third_party/WebKit/Source/core/frame/Frame.cpp b/third_party/WebKit/Source/core/frame/Frame.cpp |
index 088d8401f448e15a1ef0f971e51d5bbc7c6bdd70..55fda60cda9be0481854fe1836a74c5d59d4bde5 100644 |
--- a/third_party/WebKit/Source/core/frame/Frame.cpp |
+++ b/third_party/WebKit/Source/core/frame/Frame.cpp |
@@ -30,6 +30,7 @@ |
#include "core/frame/Frame.h" |
+#include "bindings/core/v8/WindowProxyManager.h" |
#include "core/dom/DocumentType.h" |
#include "core/events/Event.h" |
#include "core/frame/FrameHost.h" |
@@ -65,6 +66,7 @@ DEFINE_TRACE(Frame) { |
visitor->trace(m_treeNode); |
visitor->trace(m_host); |
visitor->trace(m_owner); |
+ visitor->trace(m_windowProxyManager); |
visitor->trace(m_domWindow); |
visitor->trace(m_client); |
} |
@@ -122,6 +124,10 @@ HTMLFrameOwnerElement* Frame::deprecatedLocalOwner() const { |
: nullptr; |
} |
+WindowProxy* Frame::windowProxy(DOMWrapperWorld& world) { |
+ return m_windowProxyManager->windowProxy(world); |
+} |
+ |
static ChromeClient& emptyChromeClient() { |
DEFINE_STATIC_LOCAL(EmptyChromeClient, client, (EmptyChromeClient::create())); |
return client; |
@@ -404,11 +410,15 @@ void Frame::setDocumentHasReceivedUserGesture() { |
parent->setDocumentHasReceivedUserGesture(); |
} |
-Frame::Frame(FrameClient* client, FrameHost* host, FrameOwner* owner) |
+Frame::Frame(FrameClient* client, |
+ FrameHost* host, |
+ FrameOwner* owner, |
+ WindowProxyManager* windowProxyManager) |
: m_treeNode(this), |
m_host(host), |
m_owner(owner), |
m_client(client), |
+ m_windowProxyManager(windowProxyManager), |
m_isLoading(false) { |
InstanceCounters::incrementCounter(InstanceCounters::FrameCounter); |