Chromium Code Reviews| Index: third_party/WebKit/Source/bindings/core/v8/V8Binding.cpp |
| diff --git a/third_party/WebKit/Source/bindings/core/v8/V8Binding.cpp b/third_party/WebKit/Source/bindings/core/v8/V8Binding.cpp |
| index cb45b39ef088ef6ec8ade13f6accdf26e17f7dc0..97c65dc2b99a051867cc22b1df2f0fd27a829461 100644 |
| --- a/third_party/WebKit/Source/bindings/core/v8/V8Binding.cpp |
| +++ b/third_party/WebKit/Source/bindings/core/v8/V8Binding.cpp |
| @@ -36,6 +36,7 @@ |
| #include "bindings/core/v8/V8BindingMacros.h" |
| #include "bindings/core/v8/V8Element.h" |
| #include "bindings/core/v8/V8EventTarget.h" |
| +#include "bindings/core/v8/V8HTMLLinkElement.h" |
| #include "bindings/core/v8/V8NodeFilter.h" |
| #include "bindings/core/v8/V8NodeFilterCondition.h" |
| #include "bindings/core/v8/V8ObjectConstructor.h" |
| @@ -809,8 +810,17 @@ void installOriginTrialsCore(ScriptState* scriptState) |
| // configuration of origin trial enabled attibutes and interfaces in IDL |
| // files. (crbug.com/615060) |
| - // Initialization code for origin trials for core bindings, if necessary, |
| - // should go here. |
| + v8::Local<v8::Context> context = scriptState->context(); |
|
pfeldman
2016/08/12 18:49:23
HandleScope is missing.
Marijn Kruisselbrink
2016/08/12 19:15:40
OriginTrialContext::initializePendingFeatures(), t
|
| + ExecutionContext* executionContext = toExecutionContext(context); |
|
pfeldman
2016/08/12 18:49:23
Or did you want scriptState's getExecutionContext(
Marijn Kruisselbrink
2016/08/12 19:15:40
Yeah, that's probably cleaner yes, since the v8::C
|
| + OriginTrialContext* originTrialContext = OriginTrialContext::from(executionContext, OriginTrialContext::DontCreateIfNotExists); |
| + if (!originTrialContext) |
| + return; |
| + |
| + if (!originTrialContext->featureBindingsInstalled("LinkServiceWorker") && (RuntimeEnabledFeatures::linkServiceWorkerEnabled() || originTrialContext->isFeatureEnabled("ForeignFetch"))) { |
|
pfeldman
2016/08/11 00:55:22
Here and below: these are hard to parse, do you mi
Marijn Kruisselbrink
2016/08/11 16:49:45
I'd rather not change anything here, but instead s
Marijn Kruisselbrink
2016/08/11 18:11:19
Having said that, I'm not against changing the sha
|
| + if (executionContext->isDocument()) { |
| + V8HTMLLinkElement::installLinkServiceWorker(scriptState); |
| + } |
| + } |
| } |
| namespace { |
| @@ -837,6 +847,14 @@ void installOriginTrials(ScriptState* scriptState) |
| if (!originTrialContext->featureBindingsInstalled("WebBluetooth") && (RuntimeEnabledFeatures::webBluetoothEnabled() || originTrialContext->isFeatureEnabled("WebBluetooth"))) { |
| originTrialContext->setFeatureBindingsInstalled("WebBluetooth"); |
| } |
| + |
| + if (!originTrialContext->featureBindingsInstalled("LinkServiceWorker") && (RuntimeEnabledFeatures::linkServiceWorkerEnabled() || originTrialContext->isFeatureEnabled("ForeignFetch"))) { |
| + originTrialContext->setFeatureBindingsInstalled("LinkServiceWorker"); |
| + } |
| + |
| + if (!originTrialContext->featureBindingsInstalled("ForeignFetch") && (RuntimeEnabledFeatures::foreignFetchEnabled() || originTrialContext->isFeatureEnabled("ForeignFetch"))) { |
| + originTrialContext->setFeatureBindingsInstalled("ForeignFetch"); |
| + } |
| } |
| InstallOriginTrialsFunction setInstallOriginTrialsFunction(InstallOriginTrialsFunction newInstallOriginTrialsFunction) |