| Index: Source/web/ChromeClientImpl.cpp
|
| diff --git a/Source/web/ChromeClientImpl.cpp b/Source/web/ChromeClientImpl.cpp
|
| index 86d552f88f64cdf7c7a659522ff6f3e19e71dda4..e72f71f9f51a977b5356f5d473608ca95370d76d 100644
|
| --- a/Source/web/ChromeClientImpl.cpp
|
| +++ b/Source/web/ChromeClientImpl.cpp
|
| @@ -205,7 +205,7 @@ void ChromeClientImpl::focusedFrameChanged(LocalFrame* frame)
|
| }
|
|
|
| Page* ChromeClientImpl::createWindow(LocalFrame* frame, const FrameLoadRequest& r, const WindowFeatures& features,
|
| - NavigationPolicy navigationPolicy, ShouldSendReferrer shouldSendReferrer)
|
| + NavigationPolicy navigationPolicy, ReferrerPolicy referrerPolicy)
|
| {
|
| if (!m_webView->client())
|
| return nullptr;
|
| @@ -219,10 +219,14 @@ Page* ChromeClientImpl::createWindow(LocalFrame* frame, const FrameLoadRequest&
|
| ASSERT(frame->document());
|
| Fullscreen::fullyExitFullscreen(*frame->document());
|
|
|
| + // TODO(burnik): This part seems wrong. Depending on the policy itself, we should suppress the opener.
|
| + bool supressOpener = (referrerPolicy == ReferrerPolicyNever);
|
| WebViewImpl* newView = toWebViewImpl(
|
| - m_webView->client()->createView(WebLocalFrameImpl::fromFrame(frame), WrappedResourceRequest(r.resourceRequest()), features, r.frameName(), policy, shouldSendReferrer == NeverSendReferrer));
|
| + m_webView->client()->createView(WebLocalFrameImpl::fromFrame(frame), WrappedResourceRequest(r.resourceRequest()), features, r.frameName(), policy, supressOpener));
|
| +
|
| if (!newView)
|
| return nullptr;
|
| +
|
| return newView->page();
|
| }
|
|
|
|
|