| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index 5991bde2b7d391a939795b39bcf23c865611d58f..156c15c25e61395c1069eccf4253f756819b0ee8 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -16,6 +16,7 @@
|
| #include "base/debug/asan_invalid_access.h"
|
| #include "base/debug/crash_logging.h"
|
| #include "base/debug/dump_without_crashing.h"
|
| +#include "base/feature_list.h"
|
| #include "base/files/file.h"
|
| #include "base/i18n/char_iterator.h"
|
| #include "base/logging.h"
|
| @@ -69,6 +70,7 @@
|
| #include "content/common/site_isolation_policy.h"
|
| #include "content/common/swapped_out_messages.h"
|
| #include "content/common/view_messages.h"
|
| +#include "content/common/worker_url_loader_factory_provider.mojom.h"
|
| #include "content/public/common/appcache_info.h"
|
| #include "content/public/common/associated_interface_provider.h"
|
| #include "content/public/common/bindings_policy.h"
|
| @@ -142,6 +144,7 @@
|
| #include "content/renderer/renderer_webcolorchooser_impl.h"
|
| #include "content/renderer/savable_resources.h"
|
| #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h"
|
| +#include "content/renderer/service_worker/worker_fetch_context_impl.h"
|
| #include "content/renderer/shared_worker/shared_worker_repository.h"
|
| #include "content/renderer/shared_worker/websharedworker_proxy.h"
|
| #include "content/renderer/skia_benchmarking_extension.h"
|
| @@ -178,6 +181,7 @@
|
| #include "services/ui/public/cpp/gpu/context_provider_command_buffer.h"
|
| #include "storage/common/data_element.h"
|
| #include "third_party/WebKit/public/platform/FilePathConversion.h"
|
| +#include "third_party/WebKit/public/platform/InterfaceProvider.h"
|
| #include "third_party/WebKit/public/platform/URLConversion.h"
|
| #include "third_party/WebKit/public/platform/WebCachePolicy.h"
|
| #include "third_party/WebKit/public/platform/WebData.h"
|
| @@ -2994,6 +2998,33 @@ RenderFrameImpl::CreateWorkerContentSettingsClientProxy() {
|
| this, frame_);
|
| }
|
|
|
| +blink::WebWorkerFetchContext* RenderFrameImpl::CreateWorkerFetchContext() {
|
| + if (!base::FeatureList::IsEnabled(features::kOffMainThreadFetch))
|
| + return nullptr;
|
| + mojom::WorkerURLLoaderFactoryProviderPtr worker_url_loader_factory_provider;
|
| + RenderThreadImpl::current()
|
| + ->blink_platform_impl()
|
| + ->GetInterfaceProvider()
|
| + ->GetInterface(mojo::MakeRequest(&worker_url_loader_factory_provider));
|
| + WorkerFetchContextImpl* worker_fetch_context = new WorkerFetchContextImpl(
|
| + worker_url_loader_factory_provider.PassInterface());
|
| + worker_fetch_context->SetParentFrameID(routing_id_);
|
| + worker_fetch_context->SetIsSecureContext(
|
| + frame_->GetDocument().IsSecureContext());
|
| +
|
| + blink::WebServiceWorkerNetworkProvider* web_provider =
|
| + frame_->DataSource()->GetServiceWorkerNetworkProvider();
|
| + if (web_provider) {
|
| + ServiceWorkerNetworkProvider* provider =
|
| + ServiceWorkerNetworkProvider::FromWebServiceWorkerNetworkProvider(
|
| + web_provider);
|
| + worker_fetch_context->SetServiceWorkerProviderID(provider->provider_id());
|
| + worker_fetch_context->SetIsControlledByServiceWorker(
|
| + provider->IsControlledByServiceWorker());
|
| + }
|
| + return worker_fetch_context;
|
| +}
|
| +
|
| WebExternalPopupMenu* RenderFrameImpl::CreateExternalPopupMenu(
|
| const WebPopupMenuInfo& popup_menu_info,
|
| WebExternalPopupMenuClient* popup_menu_client) {
|
|
|