Title: [200587] trunk/Source/WebCore
Revision
200587
Author
eric.carl...@apple.com
Date
2016-05-09 13:18:15 -0700 (Mon, 09 May 2016)

Log Message

"Main content" restrictions should not apply to media documents
https://bugs.webkit.org/show_bug.cgi?id=157479
<rdar://problem/25840861>

Reviewed by Jer Noble.

No new tests, this change only applies to media documents in a top level document so it
isn't possible to have a layout test.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Don't apply restrictions to a media document.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (200586 => 200587)


--- trunk/Source/WebCore/ChangeLog	2016-05-09 20:17:23 UTC (rev 200586)
+++ trunk/Source/WebCore/ChangeLog	2016-05-09 20:18:15 UTC (rev 200587)
@@ -1,3 +1,17 @@
+2016-05-09  Eric Carlson  <eric.carl...@apple.com>
+
+        "Main content" restrictions should not apply to media documents
+        https://bugs.webkit.org/show_bug.cgi?id=157479
+        <rdar://problem/25840861>
+
+        Reviewed by Jer Noble.
+
+        No new tests, this change only applies to media documents in a top level document so it
+        isn't possible to have a layout test.
+
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::HTMLMediaElement): Don't apply restrictions to a media document.
+
 2016-05-09  Dean Jackson  <d...@apple.com>
 
         Update Picture-in-picture artwork

Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (200586 => 200587)


--- trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-05-09 20:17:23 UTC (rev 200586)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-05-09 20:18:15 UTC (rev 200587)
@@ -461,23 +461,26 @@
         m_mediaSession->removeBehaviorRestriction(MediaElementSession::RequireUserGestureForFullscreen);
     }
 #endif
+
     if (settings && settings->invisibleAutoplayNotPermitted())
         m_mediaSession->addBehaviorRestriction(MediaElementSession::InvisibleAutoplayNotPermitted);
 
-    if (settings && settings->audioPlaybackRequiresUserGesture())
-        m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForAudioRateChange);
+    if (document.ownerElement() || !document.isMediaDocument()) {
+        if (settings && settings->audioPlaybackRequiresUserGesture())
+            m_mediaSession->addBehaviorRestriction(MediaElementSession::RequireUserGestureForAudioRateChange);
 
-    if (!settings || !settings->mediaDataLoadsAutomatically())
-        m_mediaSession->addBehaviorRestriction(MediaElementSession::AutoPreloadingNotPermitted);
+        if (!settings || !settings->mediaDataLoadsAutomatically())
+            m_mediaSession->addBehaviorRestriction(MediaElementSession::AutoPreloadingNotPermitted);
 
+        if (settings && settings->mainContentUserGestureOverrideEnabled())
+            m_mediaSession->addBehaviorRestriction(MediaElementSession::OverrideUserGestureRequirementForMainContent);
+    }
+
 #if ENABLE(VIDEO_TRACK)
     if (document.page())
         m_captionDisplayMode = document.page()->group().captionPreferences().captionDisplayMode();
 #endif
 
-    if (settings && settings->mainContentUserGestureOverrideEnabled())
-        m_mediaSession->addBehaviorRestriction(MediaElementSession::OverrideUserGestureRequirementForMainContent);
-
 #if ENABLE(MEDIA_SESSION)
     m_elementID = nextElementID();
     elementIDsToElements().add(m_elementID, this);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to