OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "web/WebRemoteFrameImpl.h" | 5 #include "web/WebRemoteFrameImpl.h" |
6 | 6 |
7 #include "bindings/core/v8/DOMWrapperWorld.h" | |
8 #include "bindings/core/v8/WindowProxy.h" | |
9 #include "core/dom/Fullscreen.h" | 7 #include "core/dom/Fullscreen.h" |
10 #include "core/dom/RemoteSecurityContext.h" | 8 #include "core/dom/RemoteSecurityContext.h" |
11 #include "core/dom/SecurityContext.h" | 9 #include "core/dom/SecurityContext.h" |
12 #include "core/frame/FrameView.h" | 10 #include "core/frame/FrameView.h" |
13 #include "core/frame/Settings.h" | 11 #include "core/frame/Settings.h" |
14 #include "core/frame/csp/ContentSecurityPolicy.h" | 12 #include "core/frame/csp/ContentSecurityPolicy.h" |
15 #include "core/html/HTMLFrameOwnerElement.h" | 13 #include "core/html/HTMLFrameOwnerElement.h" |
16 #include "core/layout/LayoutObject.h" | 14 #include "core/layout/LayoutObject.h" |
17 #include "core/page/Page.h" | 15 #include "core/page/Page.h" |
18 #include "platform/heap/Handle.h" | 16 #include "platform/heap/Handle.h" |
19 #include "public/platform/WebFloatRect.h" | 17 #include "public/platform/WebFloatRect.h" |
20 #include "public/platform/WebRect.h" | 18 #include "public/platform/WebRect.h" |
21 #include "public/web/WebDocument.h" | 19 #include "public/web/WebDocument.h" |
22 #include "public/web/WebFrameOwnerProperties.h" | 20 #include "public/web/WebFrameOwnerProperties.h" |
23 #include "public/web/WebPerformance.h" | 21 #include "public/web/WebPerformance.h" |
24 #include "public/web/WebRange.h" | 22 #include "public/web/WebRange.h" |
25 #include "public/web/WebTreeScopeType.h" | 23 #include "public/web/WebTreeScopeType.h" |
26 #include "v8/include/v8.h" | |
27 #include "web/RemoteFrameOwner.h" | 24 #include "web/RemoteFrameOwner.h" |
28 #include "web/WebLocalFrameImpl.h" | 25 #include "web/WebLocalFrameImpl.h" |
29 #include "web/WebViewImpl.h" | 26 #include "web/WebViewImpl.h" |
| 27 #include <v8/include/v8.h> |
30 | 28 |
31 namespace blink { | 29 namespace blink { |
32 | 30 |
33 WebRemoteFrame* WebRemoteFrame::create(WebTreeScopeType scope, | 31 WebRemoteFrame* WebRemoteFrame::create(WebTreeScopeType scope, |
34 WebRemoteFrameClient* client, | 32 WebRemoteFrameClient* client, |
35 WebFrame* opener) { | 33 WebFrame* opener) { |
36 return WebRemoteFrameImpl::create(scope, client, opener); | 34 return WebRemoteFrameImpl::create(scope, client, opener); |
37 } | 35 } |
38 | 36 |
39 WebRemoteFrameImpl* WebRemoteFrameImpl::create(WebTreeScopeType scope, | 37 WebRemoteFrameImpl* WebRemoteFrameImpl::create(WebTreeScopeType scope, |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
207 v8::Local<v8::Value> argv[]) { | 205 v8::Local<v8::Value> argv[]) { |
208 NOTREACHED(); | 206 NOTREACHED(); |
209 return v8::Local<v8::Value>(); | 207 return v8::Local<v8::Value>(); |
210 } | 208 } |
211 | 209 |
212 v8::Local<v8::Context> WebRemoteFrameImpl::mainWorldScriptContext() const { | 210 v8::Local<v8::Context> WebRemoteFrameImpl::mainWorldScriptContext() const { |
213 NOTREACHED(); | 211 NOTREACHED(); |
214 return v8::Local<v8::Context>(); | 212 return v8::Local<v8::Context>(); |
215 } | 213 } |
216 | 214 |
| 215 v8::Local<v8::Context> WebRemoteFrameImpl::deprecatedMainWorldScriptContext() |
| 216 const { |
| 217 return toV8Context(frame(), DOMWrapperWorld::mainWorld()); |
| 218 } |
| 219 |
217 void WebRemoteFrameImpl::reload(WebFrameLoadType) { | 220 void WebRemoteFrameImpl::reload(WebFrameLoadType) { |
218 NOTREACHED(); | 221 NOTREACHED(); |
219 } | 222 } |
220 | 223 |
221 void WebRemoteFrameImpl::reloadWithOverrideURL(const WebURL& overrideUrl, | 224 void WebRemoteFrameImpl::reloadWithOverrideURL(const WebURL& overrideUrl, |
222 WebFrameLoadType) { | 225 WebFrameLoadType) { |
223 NOTREACHED(); | 226 NOTREACHED(); |
224 } | 227 } |
225 | 228 |
226 void WebRemoteFrameImpl::loadRequest(const WebURLRequest&) { | 229 void WebRemoteFrameImpl::loadRequest(const WebURLRequest&) { |
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
516 // (prefixed or unprefixed) to use for firing fullscreen events. | 519 // (prefixed or unprefixed) to use for firing fullscreen events. |
517 Fullscreen::requestFullscreen(*ownerElement, | 520 Fullscreen::requestFullscreen(*ownerElement, |
518 Fullscreen::RequestType::Prefixed, | 521 Fullscreen::RequestType::Prefixed, |
519 true /* forCrossProcessAncestor */); | 522 true /* forCrossProcessAncestor */); |
520 } | 523 } |
521 | 524 |
522 void WebRemoteFrameImpl::setHasReceivedUserGesture() { | 525 void WebRemoteFrameImpl::setHasReceivedUserGesture() { |
523 frame()->setDocumentHasReceivedUserGesture(); | 526 frame()->setDocumentHasReceivedUserGesture(); |
524 } | 527 } |
525 | 528 |
526 v8::Local<v8::Object> WebRemoteFrameImpl::globalProxy() const { | |
527 return frame() | |
528 ->windowProxy(DOMWrapperWorld::mainWorld()) | |
529 ->globalIfNotDetached(); | |
530 } | |
531 | |
532 WebRemoteFrameImpl::WebRemoteFrameImpl(WebTreeScopeType scope, | 529 WebRemoteFrameImpl::WebRemoteFrameImpl(WebTreeScopeType scope, |
533 WebRemoteFrameClient* client) | 530 WebRemoteFrameClient* client) |
534 : WebRemoteFrame(scope), | 531 : WebRemoteFrame(scope), |
535 m_frameClient(RemoteFrameClientImpl::create(this)), | 532 m_frameClient(RemoteFrameClientImpl::create(this)), |
536 m_client(client), | 533 m_client(client), |
537 m_selfKeepAlive(this) {} | 534 m_selfKeepAlive(this) {} |
538 | 535 |
539 } // namespace blink | 536 } // namespace blink |
OLD | NEW |