| Index: LayoutTests/media/video-controls-visibility-multimodal-touch-after-mouse.html
|
| diff --git a/LayoutTests/media/video-controls-visibility-multimodal-touch-after-mouse.html b/LayoutTests/media/video-controls-visibility-multimodal-touch-after-mouse.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..a4296584a582f6d2cf6c026d5036d6d607bf7078
|
| --- /dev/null
|
| +++ b/LayoutTests/media/video-controls-visibility-multimodal-touch-after-mouse.html
|
| @@ -0,0 +1,64 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| +<style>
|
| +#no-video-media {
|
| + width: 320px;
|
| + height: 240px;
|
| +}
|
| +</style>
|
| +<script src=video-test.js></script>
|
| +<script src=media-file.js></script>
|
| +<script src=media-controls.js></script>
|
| +<script>
|
| +var controls;
|
| +
|
| +function runTest()
|
| +{
|
| + video = document.getElementById("no-video-media");
|
| +
|
| + testExpected("video.paused", true);
|
| + if (!window.testRunner)
|
| + return;
|
| +
|
| + if (!window.internals || !window.internals.setIsCursorVisible) {
|
| + debug("window.internals.setIsCursorVisible is required to run this test.");
|
| + return;
|
| + }
|
| +
|
| + // Hover the control with the mouse.
|
| + var coords = mediaControlsButtonCoordinates(video, "play-button");
|
| + eventSender.mouseMoveTo(coords[0], coords[1]);
|
| +
|
| + // And then tap (touch input) the play button.
|
| + eventSender.gestureTapDown(coords[0], coords[1]);
|
| + eventSender.gestureShowPress(coords[0], coords[1]);
|
| + eventSender.gestureTap(coords[0], coords[1]);
|
| + testExpected("video.paused", false);
|
| +
|
| + // In the real world Chromium hides the cursor after a tap,
|
| + // so hide it manually here. This is required to hit the
|
| + // early out from EventHandler::fakeMouseMoveEventTimerFired when
|
| + // isCursorVisible is false.
|
| + internals.setIsCursorVisible(document, false);
|
| +
|
| + // And the controls should hide after a timeout.
|
| + runAfterHideMediaControlsTimerFired(function()
|
| + {
|
| + controls = mediaControlsButton(video, "panel");
|
| + testExpected("getComputedStyle(controls).opacity", 0);
|
| + endTest();
|
| + }, video);
|
| +
|
| +}
|
| +</script>
|
| +<body>
|
| + <p>Test video element control visibility with multimodal input. The controls
|
| + should hide after a timeout if the last input event was a tap.</p>
|
| + <p>This test only runs in DRT!</p>
|
| +
|
| + <video id="no-video-media" controls loop oncanplaythrough="runTest()"></video>
|
| + <script>
|
| + setSrcById("no-video-media", findMediaFile("video", "content/test"));
|
| + </script>
|
| +</body>
|
| +</html>
|
|
|