diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/core/html/media/autoplay_policy.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/core/html/media/autoplay_policy.cc | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/chromium/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/chromium/third_party/blink/renderer/core/html/media/autoplay_policy.cc index ad5f2bf0692..9e03caf66bb 100644 --- a/chromium/third_party/blink/renderer/core/html/media/autoplay_policy.cc +++ b/chromium/third_party/blink/renderer/core/html/media/autoplay_policy.cc @@ -20,6 +20,7 @@ #include "third_party/blink/renderer/core/intersection_observer/intersection_observer.h" #include "third_party/blink/renderer/core/intersection_observer/intersection_observer_entry.h" #include "third_party/blink/renderer/core/page/page.h" +#include "third_party/blink/renderer/platform/heap/heap.h" #include "third_party/blink/renderer/platform/network/network_state_notifier.h" #include "third_party/blink/renderer/platform/runtime_enabled_features.h" #include "third_party/blink/renderer/platform/wtf/assertions.h" @@ -88,12 +89,12 @@ bool AutoplayPolicy::IsDocumentAllowedToPlay(const Document& document) { return false; bool feature_policy_enabled = - document.IsFeatureEnabled(mojom::FeaturePolicyFeature::kAutoplay); + document.IsFeatureEnabled(mojom::blink::FeaturePolicyFeature::kAutoplay); for (Frame* frame = document.GetFrame(); frame; frame = frame->Tree().Parent()) { - if (frame->HasBeenActivated() || - frame->HasReceivedUserGestureBeforeNavigation()) { + if (frame->HasStickyUserActivation() || + frame->HadStickyUserActivationBeforeNavigation()) { return true; } @@ -218,9 +219,10 @@ bool AutoplayPolicy::RequestAutoplayUnmute() { if (was_autoplaying_muted) { if (IsGestureNeededForPlayback()) { if (IsUsingDocumentUserActivationRequiredPolicy()) { - element_->GetDocument().AddConsoleMessage(ConsoleMessage::Create( - mojom::ConsoleMessageSource::kJavaScript, - mojom::ConsoleMessageLevel::kWarning, kWarningUnmuteFailed)); + element_->GetDocument().AddConsoleMessage( + MakeGarbageCollected<ConsoleMessage>( + mojom::ConsoleMessageSource::kJavaScript, + mojom::ConsoleMessageLevel::kWarning, kWarningUnmuteFailed)); } autoplay_uma_helper_->RecordAutoplayUnmuteStatus( @@ -361,12 +363,12 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { const Document& document = element_->GetDocument(); bool feature_policy_enabled = - document.IsFeatureEnabled(mojom::FeaturePolicyFeature::kAutoplay); + document.IsFeatureEnabled(mojom::blink::FeaturePolicyFeature::kAutoplay); for (Frame* frame = document.GetFrame(); frame; frame = frame->Tree().Parent()) { - if (frame->HasBeenActivated() || - frame->HasReceivedUserGestureBeforeNavigation()) { + if (frame->HasStickyUserActivation() || + frame->HadStickyUserActivationBeforeNavigation()) { autoplay_initiated_ = false; break; } @@ -376,7 +378,8 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { } bool AutoplayPolicy::ShouldAutoplay() { - if (element_->GetDocument().IsSandboxed(WebSandboxFlags::kAutomaticFeatures)) + if (element_->GetDocument().IsSandboxed( + mojom::blink::WebSandboxFlags::kAutomaticFeatures)) return false; return element_->can_autoplay_ && element_->paused_ && element_->Autoplay(); } |