Title: [203120] trunk
Revision
203120
Author
[email protected]
Date
2016-07-12 11:50:19 -0700 (Tue, 12 Jul 2016)

Log Message

REGRESSION (202694): Audio and Video playback controls: Cannot find a position slider to adjust playback position using VO.
https://bugs.webkit.org/show_bug.cgi?id=159661
<rdar://problem/27285135>

Reviewed by Eric Carlson.

Source/WebCore:

The change in r202694 caused MediaDocuments to not always
show their scrubber. The fix is to reduce the minimum amount
of size needed to show the scrubber.

Test: media/controls/default-size-should-show-scrubber.html

* Modules/mediacontrols/mediaControlsApple.js: 80 pixels is enough
to show the scrubber.

LayoutTests:

Add a test that checks the scrubber is visible on a default media element.
Unfortunately this isn't quite an accurate test, since we really want to
examine a Media Document, but it's close enough.

* media/controls/default-size-should-show-scrubber-expected.txt: Added.
* media/controls/default-size-should-show-scrubber.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (203119 => 203120)


--- trunk/LayoutTests/ChangeLog	2016-07-12 18:48:04 UTC (rev 203119)
+++ trunk/LayoutTests/ChangeLog	2016-07-12 18:50:19 UTC (rev 203120)
@@ -1,3 +1,18 @@
+2016-07-11  Dean Jackson  <[email protected]>
+
+        REGRESSION (202694): Audio and Video playback controls: Cannot find a position slider to adjust playback position using VO.
+        https://bugs.webkit.org/show_bug.cgi?id=159661
+        <rdar://problem/27285135>
+
+        Reviewed by Eric Carlson.
+
+        Add a test that checks the scrubber is visible on a default media element.
+        Unfortunately this isn't quite an accurate test, since we really want to
+        examine a Media Document, but it's close enough.
+
+        * media/controls/default-size-should-show-scrubber-expected.txt: Added.
+        * media/controls/default-size-should-show-scrubber.html: Added.
+
 2016-07-12  Ryan Haddad  <[email protected]>
 
         Marking http/tests/preload/single_download_preload_runner.html as a timeout

Added: trunk/LayoutTests/media/controls/default-size-should-show-scrubber-expected.txt (0 => 203120)


--- trunk/LayoutTests/media/controls/default-size-should-show-scrubber-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/media/controls/default-size-should-show-scrubber-expected.txt	2016-07-12 18:50:19 UTC (rev 203120)
@@ -0,0 +1,16 @@
+This tests that the scrubber shows on a default media element.
+
+This test only runs in DRT!
+
+
+EVENT: canplaythrough
+PASS: We are using the apple idiom
+Scrub to the end of the media
+EVENT: ended
+PASS: Video is paused
+PASS: Timeline is visible
+PASS: Time Remaining is visible
+PASS: Current Time is visible
+
+Testing finished.
+
Property changes on: trunk/LayoutTests/media/controls/default-size-should-show-scrubber-expected.txt
___________________________________________________________________

Added: svn:eol-style

+native \ No newline at end of property

Added: svn:keywords

+Date Revision \ No newline at end of property

Added: svn:mime-type

+text/plain \ No newline at end of property

Added: trunk/LayoutTests/media/controls/default-size-should-show-scrubber.html (0 => 203120)


--- trunk/LayoutTests/media/controls/default-size-should-show-scrubber.html	                        (rev 0)
+++ trunk/LayoutTests/media/controls/default-size-should-show-scrubber.html	2016-07-12 18:50:19 UTC (rev 203120)
@@ -0,0 +1,47 @@
+<script src=""
+<script src=""
+<script>
+const isVisible = (state) => {
+    if (state === null || typeof state.className !== "string")
+        return true;
+    let classes = state.className.split();
+    return !classes.includes("dropped") && !classes.includes("hidden");
+}
+
+const tester = new ControlsTest()
+    .whenReady(scrubAndWait)
+    .start();
+
+function scrubAndWait()
+{
+    currentState = tester.currentState;
+    tester.test("We are using the apple idiom")
+        .value(currentState.idiom)
+        .isEqualTo("apple");
+
+    tester.logMessage("Scrub to the end of the media");
+
+    tester.resetEventTrigger("ended")
+        .whenReady(runTests);
+    tester.media.currentTime = tester.media.duration - 0.05;
+    tester.media.play();
+}
+
+function runTests()
+{
+    tester.test("Video is paused")
+        .value(tester.media.paused)
+        .isTrue();
+
+    ["Timeline", "Time Remaining", "Current Time"].forEach(name => {
+        const elementState = tester.stateForControlsElement(name);
+        tester.test(`${name} is visible`)
+          .value(isVisible(elementState))
+          .isTrue();
+    });
+    tester.end();
+}
+</script>
+<p>This tests that the scrubber shows on a default media element.</p>
+<p>This test only runs in DRT!</p>
+<video name="media" controls autoplay style="width:300px !important;"></video>
Property changes on: trunk/LayoutTests/media/controls/default-size-should-show-scrubber.html
___________________________________________________________________

Added: svn:eol-style

+native \ No newline at end of property

Added: svn:keywords

+Date Revision \ No newline at end of property

Added: svn:mime-type

+text/html \ No newline at end of property

Modified: trunk/Source/WebCore/ChangeLog (203119 => 203120)


--- trunk/Source/WebCore/ChangeLog	2016-07-12 18:48:04 UTC (rev 203119)
+++ trunk/Source/WebCore/ChangeLog	2016-07-12 18:50:19 UTC (rev 203120)
@@ -1,3 +1,20 @@
+2016-07-11  Dean Jackson  <[email protected]>
+
+        REGRESSION (202694): Audio and Video playback controls: Cannot find a position slider to adjust playback position using VO.
+        https://bugs.webkit.org/show_bug.cgi?id=159661
+        <rdar://problem/27285135>
+
+        Reviewed by Eric Carlson.
+
+        The change in r202694 caused MediaDocuments to not always
+        show their scrubber. The fix is to reduce the minimum amount
+        of size needed to show the scrubber.
+
+        Test: media/controls/default-size-should-show-scrubber.html
+
+        * Modules/mediacontrols/mediaControlsApple.js: 80 pixels is enough
+        to show the scrubber.
+
 2016-07-12  Frederic Wang  <[email protected]>
 
         Move MathMLOperatorDictionary from rendering to DOM

Modified: trunk/Source/WebCore/Modules/mediacontrols/mediaControlsApple.js (203119 => 203120)


--- trunk/Source/WebCore/Modules/mediacontrols/mediaControlsApple.js	2016-07-12 18:48:04 UTC (rev 203119)
+++ trunk/Source/WebCore/Modules/mediacontrols/mediaControlsApple.js	2016-07-12 18:50:19 UTC (rev 203120)
@@ -133,7 +133,7 @@
         right: 39,
         down: 40
     },
-    MinimumTimelineWidth: 100,
+    MinimumTimelineWidth: 80,
     ButtonWidth: 32,
 
     extend: function(child)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to