Title: [86904] trunk
- Revision
- 86904
- Author
- jer.no...@apple.com
- Date
- 2011-05-19 16:17:00 -0700 (Thu, 19 May 2011)
Log Message
2011-05-18 Jeremy Noble <jer.no...@apple.com>
Reviewed by Darin Adler.
Poster is not shown in Safari for video element with no playable source elements.
https://bugs.webkit.org/show_bug.cgi?id=61109
* media/video-src-invalid-poster-expected.txt: Added.
* media/video-src-invalid-poster.html: Added.
2011-05-18 Jeremy Noble <jer.no...@apple.com>
Reviewed by Darin Adler.
Poster is not shown in Safari for video element with no playable source elements.
https://bugs.webkit.org/show_bug.cgi?id=61109
Test: media/video-src-invalid-poster.html
In the case where no video sources are playable, update the display state and
renderer, allowing the poster image to display.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::waitForSourceChange):
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (86903 => 86904)
--- trunk/LayoutTests/ChangeLog 2011-05-19 22:53:52 UTC (rev 86903)
+++ trunk/LayoutTests/ChangeLog 2011-05-19 23:17:00 UTC (rev 86904)
@@ -1,3 +1,13 @@
+2011-05-18 Jeremy Noble <jer.no...@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Poster is not shown in Safari for video element with no playable source elements.
+ https://bugs.webkit.org/show_bug.cgi?id=61109
+
+ * media/video-src-invalid-poster-expected.txt: Added.
+ * media/video-src-invalid-poster.html: Added.
+
2011-05-19 Andrew Wilson <atwil...@chromium.org>
Reviewed by Darin Adler.
Added: trunk/LayoutTests/media/video-src-invalid-poster-expected.txt (0 => 86904)
--- trunk/LayoutTests/media/video-src-invalid-poster-expected.txt (rev 0)
+++ trunk/LayoutTests/media/video-src-invalid-poster-expected.txt 2011-05-19 23:17:00 UTC (rev 86904)
@@ -0,0 +1,4 @@
+EXPECTED (video.clientWidth == '76') OK
+EXPECTED (video.clientHeight == '103') OK
+END OF TEST
+
Added: trunk/LayoutTests/media/video-src-invalid-poster.html (0 => 86904)
--- trunk/LayoutTests/media/video-src-invalid-poster.html (rev 0)
+++ trunk/LayoutTests/media/video-src-invalid-poster.html 2011-05-19 23:17:00 UTC (rev 86904)
@@ -0,0 +1,26 @@
+<script src=""
+<video poster="content/abe.png">
+ <source src="" type="bogus">
+</video>
+<script>
+ findMediaElement();
+
+ function listenForWidthAndHeight(expectedWidth, expectedHeight, callback) {
+ if (video.clientWidth == expectedWidth && video.clientHeight == expectedHeight) {
+ callback();
+ } else {
+ // This uses a 20ms sleep loop to accomplish the wait, since the
+ // standard specifies no events that fire on poster load or error.
+ window.setTimeout(listenForWidthAndHeight, 20, expectedWidth, expectedHeight, callback);
+ }
+ }
+
+ function expected() {
+ testExpected("video.clientWidth", 76);
+ testExpected("video.clientHeight", 103);
+ endTest();
+ }
+
+ listenForWidthAndHeight(76, 103, expected);
+ failTestIn(1000);
+</script>
Modified: trunk/Source/WebCore/ChangeLog (86903 => 86904)
--- trunk/Source/WebCore/ChangeLog 2011-05-19 22:53:52 UTC (rev 86903)
+++ trunk/Source/WebCore/ChangeLog 2011-05-19 23:17:00 UTC (rev 86904)
@@ -1,3 +1,18 @@
+2011-05-18 Jeremy Noble <jer.no...@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Poster is not shown in Safari for video element with no playable source elements.
+ https://bugs.webkit.org/show_bug.cgi?id=61109
+
+ Test: media/video-src-invalid-poster.html
+
+ In the case where no video sources are playable, update the display state and
+ renderer, allowing the poster image to display.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::waitForSourceChange):
+
2011-05-19 Andrew Wilson <atwil...@chromium.org>
Reviewed by Darin Adler.
Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (86903 => 86904)
--- trunk/Source/WebCore/html/HTMLMediaElement.cpp 2011-05-19 22:53:52 UTC (rev 86903)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp 2011-05-19 23:17:00 UTC (rev 86904)
@@ -772,6 +772,11 @@
// 6.18 - Set the element's delaying-the-load-event flag to false. This stops delaying the load event.
setShouldDelayLoadEvent(false);
+
+ updateDisplayState();
+
+ if (renderer())
+ renderer()->updateFromElement();
}
void HTMLMediaElement::noneSupported()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes