Title: [233605] trunk/Source/WebCore
Revision
233605
Author
[email protected]
Date
2018-07-06 17:15:26 -0700 (Fri, 06 Jul 2018)

Log Message

For <video> element, use video fullscreen instead of element fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=186093
rdar://problem/40144751

Patch by Jeremy Jones <[email protected]> on 2018-07-06
Reviewed by Jer Noble.

Some pages use webkitRequestFullscreen directly on the video element, without any custom controls.
This will prevent native fullscreeen presentation mode conrols from being used.

This change makes webkitRequestFullscreen on a video element call webKitSetPresentationMode.

* dom/Element.h:
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::webkitRequestFullscreen):
* html/HTMLVideoElement.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (233604 => 233605)


--- trunk/Source/WebCore/ChangeLog	2018-07-06 23:47:00 UTC (rev 233604)
+++ trunk/Source/WebCore/ChangeLog	2018-07-07 00:15:26 UTC (rev 233605)
@@ -1,3 +1,21 @@
+2018-07-06  Jeremy Jones  <[email protected]>
+
+        For <video> element, use video fullscreen instead of element fullscreen.
+        https://bugs.webkit.org/show_bug.cgi?id=186093
+        rdar://problem/40144751
+
+        Reviewed by Jer Noble.
+
+        Some pages use webkitRequestFullscreen directly on the video element, without any custom controls.
+        This will prevent native fullscreeen presentation mode conrols from being used.
+
+        This change makes webkitRequestFullscreen on a video element call webKitSetPresentationMode.
+
+        * dom/Element.h:
+        * html/HTMLVideoElement.cpp:
+        (WebCore::HTMLVideoElement::webkitRequestFullscreen):
+        * html/HTMLVideoElement.h:
+
 2018-07-06  Youenn Fablet  <[email protected]>
 
         WebRTC MediaStreamTrack Enable / Disable causes video delay / lag

Modified: trunk/Source/WebCore/dom/Element.h (233604 => 233605)


--- trunk/Source/WebCore/dom/Element.h	2018-07-06 23:47:00 UTC (rev 233604)
+++ trunk/Source/WebCore/dom/Element.h	2018-07-07 00:15:26 UTC (rev 233605)
@@ -477,7 +477,7 @@
     WEBCORE_EXPORT bool containsFullScreenElement() const;
     void setContainsFullScreenElement(bool);
     void setContainsFullScreenElementOnAncestorsCrossingFrameBoundaries(bool);
-    WEBCORE_EXPORT void webkitRequestFullscreen();
+    WEBCORE_EXPORT virtual void webkitRequestFullscreen();
 #endif
 
 #if ENABLE(POINTER_LOCK)

Modified: trunk/Source/WebCore/html/HTMLVideoElement.cpp (233604 => 233605)


--- trunk/Source/WebCore/html/HTMLVideoElement.cpp	2018-07-06 23:47:00 UTC (rev 233604)
+++ trunk/Source/WebCore/html/HTMLVideoElement.cpp	2018-07-07 00:15:26 UTC (rev 233605)
@@ -191,6 +191,14 @@
 #endif // PLATFORM(IOS)
 }
 
+
+#if ENABLE(FULLSCREEN_API) && PLATFORM(IOS)
+void HTMLVideoElement::webkitRequestFullscreen()
+{
+    webkitSetPresentationMode(HTMLVideoElement::VideoPresentationMode::Fullscreen);
+}
+#endif
+
 unsigned HTMLVideoElement::videoWidth() const
 {
     if (!player())

Modified: trunk/Source/WebCore/html/HTMLVideoElement.h (233604 => 233605)


--- trunk/Source/WebCore/html/HTMLVideoElement.h	2018-07-06 23:47:00 UTC (rev 233604)
+++ trunk/Source/WebCore/html/HTMLVideoElement.h	2018-07-07 00:15:26 UTC (rev 233605)
@@ -61,6 +61,10 @@
     unsigned webkitDroppedFrameCount() const;
 #endif
 
+#if ENABLE(FULLSCREEN_API) && PLATFORM(IOS)
+    void webkitRequestFullscreen() override;
+#endif
+
     // Used by canvas to gain raw pixel access
     void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&);
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to