<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[210848] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/210848">210848</a></dd>
<dt>Author</dt> <dd>graouts@webkit.org</dd>
<dt>Date</dt> <dd>2017-01-18 01:05:37 -0800 (Wed, 18 Jan 2017)</dd>
</dl>

<h3>Log Message</h3>
<pre>[Modern Media Controls] Turn modern media controls on by default
https://bugs.webkit.org/show_bug.cgi?id=165668

Reviewed by Dean Jackson.

Source/WebCore:

Tests: media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html
       media/modern-media-controls/pip-support/ipad/pip-support-enabled.html
       media/modern-media-controls/pip-support/ipad/pip-support-tap.html
       media/modern-media-controls/placard-support/ipad/placard-support-pip.html
       media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html

Fix an error which may be triggered prior to Sierra where we would assume the presentation
mode API was avaiable when it might not be, which caused a few tests to fail.

* Modules/modern-media-controls/media/pip-support.js:
(PiPSupport.prototype.syncControl):
(PiPSupport):

Source/WebKit/mac:

Enabled modern media controls by default in WK1.

* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):

Source/WebKit2:

Use DEFAULT_EXPERIMENTAL_FEATURES_ENABLED as the default value for modern media controls, which is true.

* Shared/WebPreferencesDefinitions.h:

Tools:

Enabled modern media controls by default in test runners.

* DumpRenderTree/TestOptions.h:
* WebKitTestRunner/TestOptions.h:

LayoutTests:

Turn modern media controls off for a majority of pre-existing tests that made assumptions on the implementation
of media controls.

For tests designed for modern media controls, we don't need to opt out since modern media controls are now on
by default, and we turn them back on since they were skipped. But we make these tests more resilient by:

    1. adding iPad-specific tests
    2. adding platform-agnostic ways to press an element, using either eventSender or uiController
    3. checking that elements that are sized asynchronously are indeed sized before making assumptions to that effect
    4. ensuring that we don't have additional scheduler.frameDidFire callbacks after we no longer need them

* TestExpectations:
* accessibility/mac/video-tag-hit-test.html:
* accessibility/mac/video-volume-slider-accessibility.html:
* accessibility/media-element.html:
* accessibility/media-emits-object-replacement.html:
* compositing/video/poster-expected.html:
* compositing/video/poster.html:
* fast/hidpi/video-controls-in-hidpi.html:
* fast/layers/video-layer.html:
* fullscreen/video-controls-drag.html:
* fullscreen/video-controls-override.html:
* fullscreen/video-controls-rtl.html:
* fullscreen/video-controls-timeline.html:
* http/tests/media/hls/video-controls-live-stream.html:
* http/tests/media/hls/video-duration-accessibility.html:
* http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-allowed.html:
* http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked.html:
* http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked2.html:
* http/tests/security/contentSecurityPolicy/userAgentShadowDOM/video-controls-allowed.html:
* media/accessibility-closed-captions-has-aria-owns.html:
* media/adopt-node-crash.html:
* media/airplay-autoplay.html:
* media/audio-as-video-fullscreen.html:
* media/audio-controls-do-not-fade-out.html:
* media/audio-controls-rendering.html:
* media/audio-controls-timeline-in-media-document.html:
* media/audio-delete-while-slider-thumb-clicked.html:
* media/audio-repaint.html:
* media/click-placeholder-not-pausing.html:
* media/click-volume-bar-not-pausing.html:
* media/controls-after-reload.html:
* media/controls-drag-timebar.html:
* media/controls-right-click-on-timebar.html:
* media/controls-strict.html:
* media/controls-styling.html:
* media/controls-without-preload.html:
* media/controls/airplay-controls.html:
* media/controls/airplay-picker.html:
* media/controls/basic.html:
* media/controls/elementOrder.html:
* media/controls/forced-tracks-only.html:
* media/controls/fullscreen-button-inline-layout.html:
* media/controls/inline-elements-dropoff-order.html:
* media/controls/picture-in-picture.html:
* media/controls/pip-placeholder-without-video-controls.html:
* media/controls/showControlsButton.html:
* media/controls/statusDisplay.html:
* media/controls/statusDisplayBad.html:
* media/controls/track-menu.html:
* media/mac/controls-panel-not-clipped-out-expected.html:
* media/mac/controls-panel-not-clipped-out.html:
* media/media-captions-no-controls.html:
* media/media-controller-drag-crash.html:
* media/media-controls-accessibility.html:
* media/media-controls-cancel-events.html:
* media/media-controls-clone.html:
* media/media-controls-drag-timeline-set-controls-property.html:
* media/media-controls-timeline-updates-after-playing.html:
* media/media-controls-timeline-updates-when-hovered.html:
* media/media-controls-timeline-updates.html:
* media/media-document-audio-controls-visible.html:
* media/media-document-audio-repaint.html:
* media/media-fullscreen-return-to-inline.html:
* media/modern-media-controls/airplay-button/airplay-button-on.html:
* media/modern-media-controls/airplay-button/airplay-button.html:
* media/modern-media-controls/airplay-placard/airplay-placard-text-section.html:
* media/modern-media-controls/audio/audio-controls-buttons-expected.txt:
* media/modern-media-controls/audio/audio-controls-buttons.html:
* media/modern-media-controls/audio/audio-controls-metrics.html:
* media/modern-media-controls/button/button.html:
* media/modern-media-controls/buttons-container/buttons-container-buttons-property.html:
* media/modern-media-controls/forward-button/forward-button.html:
* media/modern-media-controls/fullscreen-button/fullscreen-button.html:
* media/modern-media-controls/fullscreen-support/fullscreen-support-click.html:
* media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap-expected.txt: Added.
* media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html: Added.
* media/modern-media-controls/icon-button/icon-button-active-state.html:
* media/modern-media-controls/icon-button/icon-button-on.html:
* media/modern-media-controls/icon-button/icon-button.html:
* media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-buttons-styles.html:
* media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-controls-bar-styles.html:
* media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-layout.html:
* media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-time-control-styles.html:
* media/modern-media-controls/ios-inline-media-controls/ios-inline-media-dropping-controls.html:
* media/modern-media-controls/layout-node/addChild.html:
* media/modern-media-controls/layout-node/children.html:
* media/modern-media-controls/layout-node/height.html:
* media/modern-media-controls/layout-node/insertAfter.html:
* media/modern-media-controls/layout-node/insertBefore.html:
* media/modern-media-controls/layout-node/node-made-dirty-during-layout.html:
* media/modern-media-controls/layout-node/remove.html:
* media/modern-media-controls/layout-node/removeChild.html:
* media/modern-media-controls/layout-node/subclassing.html:
* media/modern-media-controls/layout-node/visible.html:
* media/modern-media-controls/layout-node/width.html:
* media/modern-media-controls/layout-node/x.html:
* media/modern-media-controls/layout-node/y.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-right-container-margin.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-time-control-styles.html:
* media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-volume-styles.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-layout.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-status-label.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-time-control-styles.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html:
* media/modern-media-controls/macos-inline-media-controls/macos-inline-media-dropping-controls.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide.html:
* media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html:
* media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html:
* media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html:
* media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html:
* media/modern-media-controls/media-controller/media-controller-resize.html:
* media/modern-media-controls/media-controller/media-controller-scale-factor.html:
* media/modern-media-controls/media-controller/media-controller-single-container.html:
* media/modern-media-controls/mute-button/mute-button.html:
* media/modern-media-controls/pip-button/pip-button.html:
* media/modern-media-controls/pip-placard/pip-placard-text-section.html:
* media/modern-media-controls/pip-support/ipad/pip-support-enabled-expected.txt: Added.
* media/modern-media-controls/pip-support/ipad/pip-support-enabled.html: Copied from LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html.
* media/modern-media-controls/pip-support/ipad/pip-support-tap-expected.txt: Added.
* media/modern-media-controls/pip-support/ipad/pip-support-tap.html: Copied from LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html.
* media/modern-media-controls/pip-support/pip-support-click.html:
* media/modern-media-controls/pip-support/pip-support-enabled.html:
* media/modern-media-controls/placard-support/ipad/placard-support-pip-expected.txt: Copied from LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt.
* media/modern-media-controls/placard-support/ipad/placard-support-pip.html: Added.
* media/modern-media-controls/placard-support/placard-support-airplay-expected.txt:
* media/modern-media-controls/play-pause-button/play-pause-button.html:
* media/modern-media-controls/playback-support/playback-support-button-click-expected.txt:
* media/modern-media-controls/playback-support/playback-support-button-click.html:
* media/modern-media-controls/resources/media-controls-utils.js:
(pressOnElement):
(finishMediaControlsTest):
* media/modern-media-controls/rewind-button/rewind-button.html:
* media/modern-media-controls/scheduler/not-reentrant.html:
* media/modern-media-controls/scheduler/single-callback-when-registered-multiple-times.html:
* media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag-expected.txt: Copied from LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt.
* media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html: Added.
* media/modern-media-controls/scrubber-support/scrubber-support-click.html:
* media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt:
* media/modern-media-controls/scrubber-support/scrubber-support-drag.html:
* media/modern-media-controls/seek-backward-support/seek-backward-support.html:
* media/modern-media-controls/seek-forward-support/seek-forward-support.html:
* media/modern-media-controls/skip-back-button/skip-back-button.html:
* media/modern-media-controls/slider/slider-fill.html:
* media/modern-media-controls/slider/slider-styles.html:
* media/modern-media-controls/start-support/start-support-click-to-start-expected.txt:
* media/modern-media-controls/start-support/start-support-click-to-start.html:
* media/modern-media-controls/status-label/status-label-font.html:
* media/modern-media-controls/status-label/status-label-text-selection.html:
* media/modern-media-controls/status-label/status-label.html:
* media/modern-media-controls/time-label/time-label.html:
* media/modern-media-controls/tracks-button/tracks-button.html:
* media/modern-media-controls/tracks-panel/tracks-panel-right-x.html:
* media/modern-media-controls/tracks-panel/tracks-panel-select-track-with-keyboard.html:
* media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html:
* media/modern-media-controls/tracks-support/tracks-support-show-and-populate-panel.html:
* media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls-expected.txt:
* media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html:
* media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html:
* media/modern-media-controls/volume-slider/volume-slider-value.html:
* media/modern-media-controls/volume-support/volume-support-click.html:
* media/modern-media-controls/volume-support/volume-support-drag.html:
* media/nodesFromRect-shadowContent.html:
* media/progress-events-generated-correctly.html:
* media/require-user-gesture-to-load-video.html:
* media/tab-focus-inside-media-elements.html:
* media/track/track-cue-rendering-horizontal.html:
* media/track/track-cue-rendering-vertical.html:
* media/track/track-cues-cuechange.html:
* media/track/track-cues-enter-exit.html:
* media/track/track-in-band-duplicate-tracks-when-source-changes.html:
* media/track/track-manual-mode.html:
* media/video-controls-audiotracks-trackmenu.html:
* media/video-controls-captions-trackmenu-localized.html:
* media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html:
* media/video-controls-captions-trackmenu-sorted.html:
* media/video-controls-captions-trackmenu.html:
* media/video-controls-drop-and-restore-timeline.html:
* media/video-controls-in-media-document.html:
* media/video-controls-no-display-with-text-track.html:
* media/video-controls-rendering.html:
* media/video-controls-show-on-kb-or-ax-event.html:
* media/video-controls-toggling.html:
* media/video-controls-transformed.html:
* media/video-controls-visible-audio-only.html:
* media/video-controls-visible-exiting-fullscreen.html:
* media/video-controls-zoomed.html:
* media/video-display-toggle.html:
* media/video-empty-source.html:
* media/video-fullscreeen-only-controls.html:
* media/video-fullscreeen-only-playback.html:
* media/video-initially-hidden-volume-slider-up.html:
* media/video-no-audio.html:
* media/video-play-audio-require-user-gesture.html:
* media/video-play-require-user-gesture.html:
* media/video-trackmenu-selection.html:
* media/video-volume-slider-drag.html:
* media/video-volume-slider.html:
* media/video-zoom-controls.html:
* media/volume-bar-empty-when-muted.html:
* platform/gtk/TestExpectations:
* platform/ios-simulator/TestExpectations:
* platform/ios-simulator/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html:
* platform/mac-wk1/TestExpectations:
* platform/mac/TestExpectations:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsTestExpectations">trunk/LayoutTests/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsaccessibilitymacvideotaghittesthtml">trunk/LayoutTests/accessibility/mac/video-tag-hit-test.html</a></li>
<li><a href="#trunkLayoutTestsaccessibilitymacvideovolumeslideraccessibilityhtml">trunk/LayoutTests/accessibility/mac/video-volume-slider-accessibility.html</a></li>
<li><a href="#trunkLayoutTestsaccessibilitymediaelementhtml">trunk/LayoutTests/accessibility/media-element.html</a></li>
<li><a href="#trunkLayoutTestsaccessibilitymediaemitsobjectreplacementhtml">trunk/LayoutTests/accessibility/media-emits-object-replacement.html</a></li>
<li><a href="#trunkLayoutTestscompositingvideoposterexpectedhtml">trunk/LayoutTests/compositing/video/poster-expected.html</a></li>
<li><a href="#trunkLayoutTestscompositingvideoposterhtml">trunk/LayoutTests/compositing/video/poster.html</a></li>
<li><a href="#trunkLayoutTestsfasthidpivideocontrolsinhidpihtml">trunk/LayoutTests/fast/hidpi/video-controls-in-hidpi.html</a></li>
<li><a href="#trunkLayoutTestsfastlayersvideolayerhtml">trunk/LayoutTests/fast/layers/video-layer.html</a></li>
<li><a href="#trunkLayoutTestsfullscreenvideocontrolsdraghtml">trunk/LayoutTests/fullscreen/video-controls-drag.html</a></li>
<li><a href="#trunkLayoutTestsfullscreenvideocontrolsoverridehtml">trunk/LayoutTests/fullscreen/video-controls-override.html</a></li>
<li><a href="#trunkLayoutTestsfullscreenvideocontrolsrtlhtml">trunk/LayoutTests/fullscreen/video-controls-rtl.html</a></li>
<li><a href="#trunkLayoutTestsfullscreenvideocontrolstimelinehtml">trunk/LayoutTests/fullscreen/video-controls-timeline.html</a></li>
<li><a href="#trunkLayoutTestshttptestsmediahlsvideocontrolslivestreamhtml">trunk/LayoutTests/http/tests/media/hls/video-controls-live-stream.html</a></li>
<li><a href="#trunkLayoutTestshttptestsmediahlsvideodurationaccessibilityhtml">trunk/LayoutTests/http/tests/media/hls/video-duration-accessibility.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMdefaultsrcobjectdataurlallowedhtml">trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-allowed.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMdefaultsrcobjectdataurlblockedhtml">trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMdefaultsrcobjectdataurlblocked2html">trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked2.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMvideocontrolsallowedhtml">trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/video-controls-allowed.html</a></li>
<li><a href="#trunkLayoutTestsmediaaccessibilityclosedcaptionshasariaownshtml">trunk/LayoutTests/media/accessibility-closed-captions-has-aria-owns.html</a></li>
<li><a href="#trunkLayoutTestsmediaadoptnodecrashhtml">trunk/LayoutTests/media/adopt-node-crash.html</a></li>
<li><a href="#trunkLayoutTestsmediaairplayautoplayhtml">trunk/LayoutTests/media/airplay-autoplay.html</a></li>
<li><a href="#trunkLayoutTestsmediaaudioasvideofullscreenhtml">trunk/LayoutTests/media/audio-as-video-fullscreen.html</a></li>
<li><a href="#trunkLayoutTestsmediaaudiocontrolsdonotfadeouthtml">trunk/LayoutTests/media/audio-controls-do-not-fade-out.html</a></li>
<li><a href="#trunkLayoutTestsmediaaudiocontrolsrenderinghtml">trunk/LayoutTests/media/audio-controls-rendering.html</a></li>
<li><a href="#trunkLayoutTestsmediaaudiocontrolstimelineinmediadocumenthtml">trunk/LayoutTests/media/audio-controls-timeline-in-media-document.html</a></li>
<li><a href="#trunkLayoutTestsmediaaudiodeletewhilesliderthumbclickedhtml">trunk/LayoutTests/media/audio-delete-while-slider-thumb-clicked.html</a></li>
<li><a href="#trunkLayoutTestsmediaaudiorepainthtml">trunk/LayoutTests/media/audio-repaint.html</a></li>
<li><a href="#trunkLayoutTestsmediaclickplaceholdernotpausinghtml">trunk/LayoutTests/media/click-placeholder-not-pausing.html</a></li>
<li><a href="#trunkLayoutTestsmediaclickvolumebarnotpausinghtml">trunk/LayoutTests/media/click-volume-bar-not-pausing.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsairplaycontrolshtml">trunk/LayoutTests/media/controls/airplay-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsairplaypickerhtml">trunk/LayoutTests/media/controls/airplay-picker.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsbasichtml">trunk/LayoutTests/media/controls/basic.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolselementOrderhtml">trunk/LayoutTests/media/controls/elementOrder.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsforcedtracksonlyhtml">trunk/LayoutTests/media/controls/forced-tracks-only.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsfullscreenbuttoninlinelayouthtml">trunk/LayoutTests/media/controls/fullscreen-button-inline-layout.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsinlineelementsdropofforderhtml">trunk/LayoutTests/media/controls/inline-elements-dropoff-order.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolspictureinpicturehtml">trunk/LayoutTests/media/controls/picture-in-picture.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolspipplaceholderwithoutvideocontrolshtml">trunk/LayoutTests/media/controls/pip-placeholder-without-video-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsshowControlsButtonhtml">trunk/LayoutTests/media/controls/showControlsButton.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsstatusDisplayhtml">trunk/LayoutTests/media/controls/statusDisplay.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsstatusDisplayBadhtml">trunk/LayoutTests/media/controls/statusDisplayBad.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolstrackmenuhtml">trunk/LayoutTests/media/controls/track-menu.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsafterreloadhtml">trunk/LayoutTests/media/controls-after-reload.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsdragtimebarhtml">trunk/LayoutTests/media/controls-drag-timebar.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsrightclickontimebarhtml">trunk/LayoutTests/media/controls-right-click-on-timebar.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsstricthtml">trunk/LayoutTests/media/controls-strict.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolsstylinghtml">trunk/LayoutTests/media/controls-styling.html</a></li>
<li><a href="#trunkLayoutTestsmediacontrolswithoutpreloadhtml">trunk/LayoutTests/media/controls-without-preload.html</a></li>
<li><a href="#trunkLayoutTestsmediamaccontrolspanelnotclippedoutexpectedhtml">trunk/LayoutTests/media/mac/controls-panel-not-clipped-out-expected.html</a></li>
<li><a href="#trunkLayoutTestsmediamaccontrolspanelnotclippedouthtml">trunk/LayoutTests/media/mac/controls-panel-not-clipped-out.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacaptionsnocontrolshtml">trunk/LayoutTests/media/media-captions-no-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrollerdragcrashhtml">trunk/LayoutTests/media/media-controller-drag-crash.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolsaccessibilityhtml">trunk/LayoutTests/media/media-controls-accessibility.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolscanceleventshtml">trunk/LayoutTests/media/media-controls-cancel-events.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolsclonehtml">trunk/LayoutTests/media/media-controls-clone.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolsdragtimelinesetcontrolspropertyhtml">trunk/LayoutTests/media/media-controls-drag-timeline-set-controls-property.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolstimelineupdatesafterplayinghtml">trunk/LayoutTests/media/media-controls-timeline-updates-after-playing.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolstimelineupdateswhenhoveredhtml">trunk/LayoutTests/media/media-controls-timeline-updates-when-hovered.html</a></li>
<li><a href="#trunkLayoutTestsmediamediacontrolstimelineupdateshtml">trunk/LayoutTests/media/media-controls-timeline-updates.html</a></li>
<li><a href="#trunkLayoutTestsmediamediadocumentaudiocontrolsvisiblehtml">trunk/LayoutTests/media/media-document-audio-controls-visible.html</a></li>
<li><a href="#trunkLayoutTestsmediamediadocumentaudiorepainthtml">trunk/LayoutTests/media/media-document-audio-repaint.html</a></li>
<li><a href="#trunkLayoutTestsmediamediafullscreenreturntoinlinehtml">trunk/LayoutTests/media/media-fullscreen-return-to-inline.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsairplaybuttonairplaybuttononhtml">trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsairplaybuttonairplaybuttonhtml">trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsairplayplacardairplayplacardtextsectionhtml">trunk/LayoutTests/media/modern-media-controls/airplay-placard/airplay-placard-text-section.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsaudioaudiocontrolsbuttonsexpectedtxt">trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsaudioaudiocontrolsbuttonshtml">trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsaudioaudiocontrolsmetricshtml">trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-metrics.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsbuttonbuttonhtml">trunk/LayoutTests/media/modern-media-controls/button/button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsbuttonscontainerbuttonscontainerbuttonspropertyhtml">trunk/LayoutTests/media/modern-media-controls/buttons-container/buttons-container-buttons-property.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsforwardbuttonforwardbuttonhtml">trunk/LayoutTests/media/modern-media-controls/forward-button/forward-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsfullscreenbuttonfullscreenbuttonhtml">trunk/LayoutTests/media/modern-media-controls/fullscreen-button/fullscreen-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsfullscreensupportfullscreensupportclickhtml">trunk/LayoutTests/media/modern-media-controls/fullscreen-support/fullscreen-support-click.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiconbuttoniconbuttonactivestatehtml">trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-active-state.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiconbuttoniconbuttononhtml">trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiconbuttoniconbuttonhtml">trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolsbuttonsstyleshtml">trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-buttons-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolscontrolsbarstyleshtml">trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-controls-bar-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolslayouthtml">trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-layout.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolstimecontrolstyleshtml">trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-time-control-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediadroppingcontrolshtml">trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-dropping-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodeaddChildhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/addChild.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodechildrenhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/children.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodeheighthtml">trunk/LayoutTests/media/modern-media-controls/layout-node/height.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodeinsertAfterhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/insertAfter.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodeinsertBeforehtml">trunk/LayoutTests/media/modern-media-controls/layout-node/insertBefore.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodenodemadedirtyduringlayouthtml">trunk/LayoutTests/media/modern-media-controls/layout-node/node-made-dirty-during-layout.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnoderemovehtml">trunk/LayoutTests/media/modern-media-controls/layout-node/remove.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnoderemoveChildhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/removeChild.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodesubclassinghtml">trunk/LayoutTests/media/modern-media-controls/layout-node/subclassing.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodevisiblehtml">trunk/LayoutTests/media/modern-media-controls/layout-node/visible.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodewidthhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/width.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodexhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/x.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolslayoutnodeyhtml">trunk/LayoutTests/media/modern-media-controls/layout-node/y.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsbuttonscontainersstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsbuttonsstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolscontrolsbarstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsdraghtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsrightcontainermarginhtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-right-container-margin.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolstimecontrolstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-time-control-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsvolumestyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-volume-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolsbuttonsstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolscontrolsbarstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolslayouthtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-layout.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolsstatuslabelhtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-status-label.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolstimecontrolstyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-time-control-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolsvolumestyleshtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediadroppingcontrolshtml">trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-dropping-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidemouseenterandmouseleavehtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidemouseenterovercontrolsbarhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidemouseleaveafterplayhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidepausehtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohiderewindwithmouseenterhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidehtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerfadecontrolswhenenteringfullscreenhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerfullscreenltrhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerinlinetofullscreentoinlinehtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerinlinetofullscreentopiptoinlinehtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerresizehtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-resize.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerscalefactorhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-scale-factor.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollersinglecontainerhtml">trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-single-container.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsmutebuttonmutebuttonhtml">trunk/LayoutTests/media/modern-media-controls/mute-button/mute-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipbuttonpipbuttonhtml">trunk/LayoutTests/media/modern-media-controls/pip-button/pip-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipplacardpipplacardtextsectionhtml">trunk/LayoutTests/media/modern-media-controls/pip-placard/pip-placard-text-section.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipsupportpipsupportclickhtml">trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipsupportpipsupportenabledhtml">trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsplacardsupportplacardsupportairplayexpectedtxt">trunk/LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsplaypausebuttonplaypausebuttonhtml">trunk/LayoutTests/media/modern-media-controls/play-pause-button/play-pause-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsplaybacksupportplaybacksupportbuttonclickexpectedtxt">trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsplaybacksupportplaybacksupportbuttonclickhtml">trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsresourcesmediacontrolsutilsjs">trunk/LayoutTests/media/modern-media-controls/resources/media-controls-utils.js</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsrewindbuttonrewindbuttonhtml">trunk/LayoutTests/media/modern-media-controls/rewind-button/rewind-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsschedulernotreentranthtml">trunk/LayoutTests/media/modern-media-controls/scheduler/not-reentrant.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsschedulersinglecallbackwhenregisteredmultipletimeshtml">trunk/LayoutTests/media/modern-media-controls/scheduler/single-callback-when-registered-multiple-times.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportclickhtml">trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportdragexpectedtxt">trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportdraghtml">trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsseekbackwardsupportseekbackwardsupporthtml">trunk/LayoutTests/media/modern-media-controls/seek-backward-support/seek-backward-support.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsseekforwardsupportseekforwardsupporthtml">trunk/LayoutTests/media/modern-media-controls/seek-forward-support/seek-forward-support.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsskipbackbuttonskipbackbuttonhtml">trunk/LayoutTests/media/modern-media-controls/skip-back-button/skip-back-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsslidersliderfillhtml">trunk/LayoutTests/media/modern-media-controls/slider/slider-fill.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsslidersliderstyleshtml">trunk/LayoutTests/media/modern-media-controls/slider/slider-styles.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsstartsupportstartsupportclicktostartexpectedtxt">trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsstartsupportstartsupportclicktostarthtml">trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsstatuslabelstatuslabelfonthtml">trunk/LayoutTests/media/modern-media-controls/status-label/status-label-font.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsstatuslabelstatuslabeltextselectionhtml">trunk/LayoutTests/media/modern-media-controls/status-label/status-label-text-selection.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsstatuslabelstatuslabelhtml">trunk/LayoutTests/media/modern-media-controls/status-label/status-label.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstimelabeltimelabelhtml">trunk/LayoutTests/media/modern-media-controls/time-label/time-label.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstracksbuttontracksbuttonhtml">trunk/LayoutTests/media/modern-media-controls/tracks-button/tracks-button.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackspaneltrackspanelrightxhtml">trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-right-x.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackspaneltrackspanelselecttrackwithkeyboardhtml">trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-select-track-with-keyboard.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportclicktrackinpanelhtml">trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowandpopulatepanelhtml">trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-and-populate-panel.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowpanelafterdraggingcontrolsexpectedtxt">trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowpanelafterdraggingcontrolshtml">trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowpanelfullscreenhtml">trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsvolumeslidervolumeslidervaluehtml">trunk/LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsvolumesupportvolumesupportclickhtml">trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-click.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsvolumesupportvolumesupportdraghtml">trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-drag.html</a></li>
<li><a href="#trunkLayoutTestsmedianodesFromRectshadowContenthtml">trunk/LayoutTests/media/nodesFromRect-shadowContent.html</a></li>
<li><a href="#trunkLayoutTestsmediaprogresseventsgeneratedcorrectlyhtml">trunk/LayoutTests/media/progress-events-generated-correctly.html</a></li>
<li><a href="#trunkLayoutTestsmediarequireusergesturetoloadvideohtml">trunk/LayoutTests/media/require-user-gesture-to-load-video.html</a></li>
<li><a href="#trunkLayoutTestsmediatabfocusinsidemediaelementshtml">trunk/LayoutTests/media/tab-focus-inside-media-elements.html</a></li>
<li><a href="#trunkLayoutTestsmediatracktrackcuerenderinghorizontalhtml">trunk/LayoutTests/media/track/track-cue-rendering-horizontal.html</a></li>
<li><a href="#trunkLayoutTestsmediatracktrackcuerenderingverticalhtml">trunk/LayoutTests/media/track/track-cue-rendering-vertical.html</a></li>
<li><a href="#trunkLayoutTestsmediatracktrackcuescuechangehtml">trunk/LayoutTests/media/track/track-cues-cuechange.html</a></li>
<li><a href="#trunkLayoutTestsmediatracktrackcuesenterexithtml">trunk/LayoutTests/media/track/track-cues-enter-exit.html</a></li>
<li><a href="#trunkLayoutTestsmediatracktrackinbandduplicatetrackswhensourcechangeshtml">trunk/LayoutTests/media/track/track-in-band-duplicate-tracks-when-source-changes.html</a></li>
<li><a href="#trunkLayoutTestsmediatracktrackmanualmodehtml">trunk/LayoutTests/media/track/track-manual-mode.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsaudiotrackstrackmenuhtml">trunk/LayoutTests/media/video-controls-audiotracks-trackmenu.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolscaptionstrackmenulocalizedhtml">trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolscaptionstrackmenuonlycaptionsdescriptionsandsubtitleshtml">trunk/LayoutTests/media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolscaptionstrackmenusortedhtml">trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolscaptionstrackmenuhtml">trunk/LayoutTests/media/video-controls-captions-trackmenu.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsdropandrestoretimelinehtml">trunk/LayoutTests/media/video-controls-drop-and-restore-timeline.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsinmediadocumenthtml">trunk/LayoutTests/media/video-controls-in-media-document.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsnodisplaywithtexttrackhtml">trunk/LayoutTests/media/video-controls-no-display-with-text-track.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsrenderinghtml">trunk/LayoutTests/media/video-controls-rendering.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsshowonkboraxeventhtml">trunk/LayoutTests/media/video-controls-show-on-kb-or-ax-event.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolstogglinghtml">trunk/LayoutTests/media/video-controls-toggling.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolstransformedhtml">trunk/LayoutTests/media/video-controls-transformed.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsvisibleaudioonlyhtml">trunk/LayoutTests/media/video-controls-visible-audio-only.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolsvisibleexitingfullscreenhtml">trunk/LayoutTests/media/video-controls-visible-exiting-fullscreen.html</a></li>
<li><a href="#trunkLayoutTestsmediavideocontrolszoomedhtml">trunk/LayoutTests/media/video-controls-zoomed.html</a></li>
<li><a href="#trunkLayoutTestsmediavideodisplaytogglehtml">trunk/LayoutTests/media/video-display-toggle.html</a></li>
<li><a href="#trunkLayoutTestsmediavideoemptysourcehtml">trunk/LayoutTests/media/video-empty-source.html</a></li>
<li><a href="#trunkLayoutTestsmediavideofullscreeenonlycontrolshtml">trunk/LayoutTests/media/video-fullscreeen-only-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediavideofullscreeenonlyplaybackhtml">trunk/LayoutTests/media/video-fullscreeen-only-playback.html</a></li>
<li><a href="#trunkLayoutTestsmediavideoinitiallyhiddenvolumeslideruphtml">trunk/LayoutTests/media/video-initially-hidden-volume-slider-up.html</a></li>
<li><a href="#trunkLayoutTestsmediavideonoaudiohtml">trunk/LayoutTests/media/video-no-audio.html</a></li>
<li><a href="#trunkLayoutTestsmediavideoplayaudiorequireusergesturehtml">trunk/LayoutTests/media/video-play-audio-require-user-gesture.html</a></li>
<li><a href="#trunkLayoutTestsmediavideoplayrequireusergesturehtml">trunk/LayoutTests/media/video-play-require-user-gesture.html</a></li>
<li><a href="#trunkLayoutTestsmediavideotrackmenuselectionhtml">trunk/LayoutTests/media/video-trackmenu-selection.html</a></li>
<li><a href="#trunkLayoutTestsmediavideovolumesliderdraghtml">trunk/LayoutTests/media/video-volume-slider-drag.html</a></li>
<li><a href="#trunkLayoutTestsmediavideovolumesliderhtml">trunk/LayoutTests/media/video-volume-slider.html</a></li>
<li><a href="#trunkLayoutTestsmediavideozoomcontrolshtml">trunk/LayoutTests/media/video-zoom-controls.html</a></li>
<li><a href="#trunkLayoutTestsmediavolumebaremptywhenmutedhtml">trunk/LayoutTests/media/volume-bar-empty-when-muted.html</a></li>
<li><a href="#trunkLayoutTestsplatformgtkTestExpectations">trunk/LayoutTests/platform/gtk/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformiossimulatorTestExpectations">trunk/LayoutTests/platform/ios-simulator/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformiossimulatormediavideoplayglyphcompositedoutsideoverflowscrollingtouchcontainerhtml">trunk/LayoutTests/platform/ios-simulator/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html</a></li>
<li><a href="#trunkLayoutTestsplatformmacTestExpectations">trunk/LayoutTests/platform/mac/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformmacwk1TestExpectations">trunk/LayoutTests/platform/mac-wk1/TestExpectations</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreModulesmodernmediacontrolsmediapipsupportjs">trunk/Source/WebCore/Modules/modern-media-controls/media/pip-support.js</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebPreferencesmm">trunk/Source/WebKit/mac/WebView/WebPreferences.mm</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedWebPreferencesDefinitionsh">trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h</a></li>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsDumpRenderTreeTestOptionsh">trunk/Tools/DumpRenderTree/TestOptions.h</a></li>
<li><a href="#trunkToolsWebKitTestRunnerTestOptionsh">trunk/Tools/WebKitTestRunner/TestOptions.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/</li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsfullscreensupportipadfullscreensupporttapexpectedtxt">trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsfullscreensupportipadfullscreensupporttaphtml">trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html</a></li>
<li>trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/</li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupportenabledexpectedtxt">trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupportenabledhtml">trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled.html</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupporttapexpectedtxt">trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupporttaphtml">trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap.html</a></li>
<li>trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/</li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsplacardsupportipadplacardsupportpipexpectedtxt">trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsplacardsupportipadplacardsupportpiphtml">trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip.html</a></li>
<li>trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/</li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsscrubbersupportipadscrubbersupportdragexpectedtxt">trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag-expected.txt</a></li>
<li><a href="#trunkLayoutTestsmediamodernmediacontrolsscrubbersupportipadscrubbersupportdraghtml">trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/ChangeLog        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,237 @@
</span><ins>+2017-01-18  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        [Modern Media Controls] Turn modern media controls on by default
+        https://bugs.webkit.org/show_bug.cgi?id=165668
+
+        Reviewed by Dean Jackson.
+
+        Turn modern media controls off for a majority of pre-existing tests that made assumptions on the implementation
+        of media controls.
+
+        For tests designed for modern media controls, we don't need to opt out since modern media controls are now on
+        by default, and we turn them back on since they were skipped. But we make these tests more resilient by:
+        
+            1. adding iPad-specific tests
+            2. adding platform-agnostic ways to press an element, using either eventSender or uiController
+            3. checking that elements that are sized asynchronously are indeed sized before making assumptions to that effect
+            4. ensuring that we don't have additional scheduler.frameDidFire callbacks after we no longer need them 
+
+        * TestExpectations:
+        * accessibility/mac/video-tag-hit-test.html:
+        * accessibility/mac/video-volume-slider-accessibility.html:
+        * accessibility/media-element.html:
+        * accessibility/media-emits-object-replacement.html:
+        * compositing/video/poster-expected.html:
+        * compositing/video/poster.html:
+        * fast/hidpi/video-controls-in-hidpi.html:
+        * fast/layers/video-layer.html:
+        * fullscreen/video-controls-drag.html:
+        * fullscreen/video-controls-override.html:
+        * fullscreen/video-controls-rtl.html:
+        * fullscreen/video-controls-timeline.html:
+        * http/tests/media/hls/video-controls-live-stream.html:
+        * http/tests/media/hls/video-duration-accessibility.html:
+        * http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-allowed.html:
+        * http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked.html:
+        * http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked2.html:
+        * http/tests/security/contentSecurityPolicy/userAgentShadowDOM/video-controls-allowed.html:
+        * media/accessibility-closed-captions-has-aria-owns.html:
+        * media/adopt-node-crash.html:
+        * media/airplay-autoplay.html:
+        * media/audio-as-video-fullscreen.html:
+        * media/audio-controls-do-not-fade-out.html:
+        * media/audio-controls-rendering.html:
+        * media/audio-controls-timeline-in-media-document.html:
+        * media/audio-delete-while-slider-thumb-clicked.html:
+        * media/audio-repaint.html:
+        * media/click-placeholder-not-pausing.html:
+        * media/click-volume-bar-not-pausing.html:
+        * media/controls-after-reload.html:
+        * media/controls-drag-timebar.html:
+        * media/controls-right-click-on-timebar.html:
+        * media/controls-strict.html:
+        * media/controls-styling.html:
+        * media/controls-without-preload.html:
+        * media/controls/airplay-controls.html:
+        * media/controls/airplay-picker.html:
+        * media/controls/basic.html:
+        * media/controls/elementOrder.html:
+        * media/controls/forced-tracks-only.html:
+        * media/controls/fullscreen-button-inline-layout.html:
+        * media/controls/inline-elements-dropoff-order.html:
+        * media/controls/picture-in-picture.html:
+        * media/controls/pip-placeholder-without-video-controls.html:
+        * media/controls/showControlsButton.html:
+        * media/controls/statusDisplay.html:
+        * media/controls/statusDisplayBad.html:
+        * media/controls/track-menu.html:
+        * media/mac/controls-panel-not-clipped-out-expected.html:
+        * media/mac/controls-panel-not-clipped-out.html:
+        * media/media-captions-no-controls.html:
+        * media/media-controller-drag-crash.html:
+        * media/media-controls-accessibility.html:
+        * media/media-controls-cancel-events.html:
+        * media/media-controls-clone.html:
+        * media/media-controls-drag-timeline-set-controls-property.html:
+        * media/media-controls-timeline-updates-after-playing.html:
+        * media/media-controls-timeline-updates-when-hovered.html:
+        * media/media-controls-timeline-updates.html:
+        * media/media-document-audio-controls-visible.html:
+        * media/media-document-audio-repaint.html:
+        * media/media-fullscreen-return-to-inline.html:
+        * media/modern-media-controls/airplay-button/airplay-button-on.html:
+        * media/modern-media-controls/airplay-button/airplay-button.html:
+        * media/modern-media-controls/airplay-placard/airplay-placard-text-section.html:
+        * media/modern-media-controls/audio/audio-controls-buttons-expected.txt:
+        * media/modern-media-controls/audio/audio-controls-buttons.html:
+        * media/modern-media-controls/audio/audio-controls-metrics.html:
+        * media/modern-media-controls/button/button.html:
+        * media/modern-media-controls/buttons-container/buttons-container-buttons-property.html:
+        * media/modern-media-controls/forward-button/forward-button.html:
+        * media/modern-media-controls/fullscreen-button/fullscreen-button.html:
+        * media/modern-media-controls/fullscreen-support/fullscreen-support-click.html:
+        * media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap-expected.txt: Added.
+        * media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html: Added.
+        * media/modern-media-controls/icon-button/icon-button-active-state.html:
+        * media/modern-media-controls/icon-button/icon-button-on.html:
+        * media/modern-media-controls/icon-button/icon-button.html:
+        * media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-buttons-styles.html:
+        * media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-controls-bar-styles.html:
+        * media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-layout.html:
+        * media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-time-control-styles.html:
+        * media/modern-media-controls/ios-inline-media-controls/ios-inline-media-dropping-controls.html:
+        * media/modern-media-controls/layout-node/addChild.html:
+        * media/modern-media-controls/layout-node/children.html:
+        * media/modern-media-controls/layout-node/height.html:
+        * media/modern-media-controls/layout-node/insertAfter.html:
+        * media/modern-media-controls/layout-node/insertBefore.html:
+        * media/modern-media-controls/layout-node/node-made-dirty-during-layout.html:
+        * media/modern-media-controls/layout-node/remove.html:
+        * media/modern-media-controls/layout-node/removeChild.html:
+        * media/modern-media-controls/layout-node/subclassing.html:
+        * media/modern-media-controls/layout-node/visible.html:
+        * media/modern-media-controls/layout-node/width.html:
+        * media/modern-media-controls/layout-node/x.html:
+        * media/modern-media-controls/layout-node/y.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-right-container-margin.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-time-control-styles.html:
+        * media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-volume-styles.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-layout.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-status-label.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-time-control-styles.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html:
+        * media/modern-media-controls/macos-inline-media-controls/macos-inline-media-dropping-controls.html:
+        * media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html:
+        * media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html:
+        * media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
+        * media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
+        * media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html:
+        * media/modern-media-controls/media-controller/media-controller-auto-hide.html:
+        * media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html:
+        * media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html:
+        * media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html:
+        * media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html:
+        * media/modern-media-controls/media-controller/media-controller-resize.html:
+        * media/modern-media-controls/media-controller/media-controller-scale-factor.html:
+        * media/modern-media-controls/media-controller/media-controller-single-container.html:
+        * media/modern-media-controls/mute-button/mute-button.html:
+        * media/modern-media-controls/pip-button/pip-button.html:
+        * media/modern-media-controls/pip-placard/pip-placard-text-section.html:
+        * media/modern-media-controls/pip-support/ipad/pip-support-enabled-expected.txt: Added.
+        * media/modern-media-controls/pip-support/ipad/pip-support-enabled.html: Copied from LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html.
+        * media/modern-media-controls/pip-support/ipad/pip-support-tap-expected.txt: Added.
+        * media/modern-media-controls/pip-support/ipad/pip-support-tap.html: Copied from LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html.
+        * media/modern-media-controls/pip-support/pip-support-click.html:
+        * media/modern-media-controls/pip-support/pip-support-enabled.html:
+        * media/modern-media-controls/placard-support/ipad/placard-support-pip-expected.txt: Copied from LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt.
+        * media/modern-media-controls/placard-support/ipad/placard-support-pip.html: Added.
+        * media/modern-media-controls/placard-support/placard-support-airplay-expected.txt:
+        * media/modern-media-controls/play-pause-button/play-pause-button.html:
+        * media/modern-media-controls/playback-support/playback-support-button-click-expected.txt:
+        * media/modern-media-controls/playback-support/playback-support-button-click.html:
+        * media/modern-media-controls/resources/media-controls-utils.js:
+        (pressOnElement):
+        (finishMediaControlsTest):
+        * media/modern-media-controls/rewind-button/rewind-button.html:
+        * media/modern-media-controls/scheduler/not-reentrant.html:
+        * media/modern-media-controls/scheduler/single-callback-when-registered-multiple-times.html:
+        * media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag-expected.txt: Copied from LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt.
+        * media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html: Added.
+        * media/modern-media-controls/scrubber-support/scrubber-support-click.html:
+        * media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt:
+        * media/modern-media-controls/scrubber-support/scrubber-support-drag.html:
+        * media/modern-media-controls/seek-backward-support/seek-backward-support.html:
+        * media/modern-media-controls/seek-forward-support/seek-forward-support.html:
+        * media/modern-media-controls/skip-back-button/skip-back-button.html:
+        * media/modern-media-controls/slider/slider-fill.html:
+        * media/modern-media-controls/slider/slider-styles.html:
+        * media/modern-media-controls/start-support/start-support-click-to-start-expected.txt:
+        * media/modern-media-controls/start-support/start-support-click-to-start.html:
+        * media/modern-media-controls/status-label/status-label-font.html:
+        * media/modern-media-controls/status-label/status-label-text-selection.html:
+        * media/modern-media-controls/status-label/status-label.html:
+        * media/modern-media-controls/time-label/time-label.html:
+        * media/modern-media-controls/tracks-button/tracks-button.html:
+        * media/modern-media-controls/tracks-panel/tracks-panel-right-x.html:
+        * media/modern-media-controls/tracks-panel/tracks-panel-select-track-with-keyboard.html:
+        * media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html:
+        * media/modern-media-controls/tracks-support/tracks-support-show-and-populate-panel.html:
+        * media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls-expected.txt:
+        * media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html:
+        * media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html:
+        * media/modern-media-controls/volume-slider/volume-slider-value.html:
+        * media/modern-media-controls/volume-support/volume-support-click.html:
+        * media/modern-media-controls/volume-support/volume-support-drag.html:
+        * media/nodesFromRect-shadowContent.html:
+        * media/progress-events-generated-correctly.html:
+        * media/require-user-gesture-to-load-video.html:
+        * media/tab-focus-inside-media-elements.html:
+        * media/track/track-cue-rendering-horizontal.html:
+        * media/track/track-cue-rendering-vertical.html:
+        * media/track/track-cues-cuechange.html:
+        * media/track/track-cues-enter-exit.html:
+        * media/track/track-in-band-duplicate-tracks-when-source-changes.html:
+        * media/track/track-manual-mode.html:
+        * media/video-controls-audiotracks-trackmenu.html:
+        * media/video-controls-captions-trackmenu-localized.html:
+        * media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html:
+        * media/video-controls-captions-trackmenu-sorted.html:
+        * media/video-controls-captions-trackmenu.html:
+        * media/video-controls-drop-and-restore-timeline.html:
+        * media/video-controls-in-media-document.html:
+        * media/video-controls-no-display-with-text-track.html:
+        * media/video-controls-rendering.html:
+        * media/video-controls-show-on-kb-or-ax-event.html:
+        * media/video-controls-toggling.html:
+        * media/video-controls-transformed.html:
+        * media/video-controls-visible-audio-only.html:
+        * media/video-controls-visible-exiting-fullscreen.html:
+        * media/video-controls-zoomed.html:
+        * media/video-display-toggle.html:
+        * media/video-empty-source.html:
+        * media/video-fullscreeen-only-controls.html:
+        * media/video-fullscreeen-only-playback.html:
+        * media/video-initially-hidden-volume-slider-up.html:
+        * media/video-no-audio.html:
+        * media/video-play-audio-require-user-gesture.html:
+        * media/video-play-require-user-gesture.html:
+        * media/video-trackmenu-selection.html:
+        * media/video-volume-slider-drag.html:
+        * media/video-volume-slider.html:
+        * media/video-zoom-controls.html:
+        * media/volume-bar-empty-when-muted.html:
+        * platform/gtk/TestExpectations:
+        * platform/ios-simulator/TestExpectations:
+        * platform/ios-simulator/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html:
+        * platform/mac-wk1/TestExpectations:
+        * platform/mac/TestExpectations:
+
</ins><span class="cx"> 2017-01-17  Michael Catanzaro  &lt;mcatanzaro@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r210834
</span></span></pre></div>
<a id="trunkLayoutTestsTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/TestExpectations (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/TestExpectations        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/TestExpectations        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -682,9 +682,6 @@
</span><span class="cx"> # Media Sessions is not yet enabled by default: ENABLE(MEDIA_SESSION)
</span><span class="cx"> media/session [ Skip ]
</span><span class="cx"> 
</span><del>-# Skip modern-media-controls tests until flakiness can be resolved - webkit.org/b/164322
-media/modern-media-controls [ Skip ]
-
</del><span class="cx"> # Only iOS WK1 has testRunner.setPagePaused.
</span><span class="cx"> fast/dom/timer-fire-after-page-pause.html [ Skip ]
</span><span class="cx"> 
</span><span class="lines">@@ -998,3 +995,6 @@
</span><span class="cx"> # Visual viewports
</span><span class="cx"> webkit.org/b/165460 compositing/repaint/scroll-fixed-layer-no-content.html [ Failure ]
</span><span class="cx"> webkit.org/b/165460 compositing/repaint/scroll-fixed-layer-out-of-view.html [ Failure ]
</span><ins>+
+# iOS-specific test
+media/modern-media-controls/media-controller/media-controller-scale-factor.html [ Skip ]
</ins></span></pre></div>
<a id="trunkLayoutTestsaccessibilitymacvideotaghittesthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/accessibility/mac/video-tag-hit-test.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/mac/video-tag-hit-test.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/accessibility/mac/video-tag-hit-test.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
</del><ins>+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script src=&quot;../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsaccessibilitymacvideovolumeslideraccessibilityhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/accessibility/mac/video-volume-slider-accessibility.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/mac/video-volume-slider-accessibility.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/accessibility/mac/video-volume-slider-accessibility.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
</del><ins>+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script src=&quot;../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsaccessibilitymediaelementhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/accessibility/media-element.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/media-element.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/accessibility/media-element.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsaccessibilitymediaemitsobjectreplacementhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/accessibility/media-emits-object-replacement.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/media-emits-object-replacement.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/accessibility/media-emits-object-replacement.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE HTML&gt;
</del><ins>+&lt;!DOCTYPE HTML&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestscompositingvideoposterexpectedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/compositing/video/poster-expected.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/compositing/video/poster-expected.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/compositing/video/poster-expected.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;style&gt;
</span></span></pre></div>
<a id="trunkLayoutTestscompositingvideoposterhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/compositing/video/poster.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/compositing/video/poster.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/compositing/video/poster.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;style&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfasthidpivideocontrolsinhidpihtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/hidpi/video-controls-in-hidpi.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/hidpi/video-controls-in-hidpi.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/fast/hidpi/video-controls-in-hidpi.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     function startTest() {
</span></span></pre></div>
<a id="trunkLayoutTestsfastlayersvideolayerhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/layers/video-layer.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/layers/video-layer.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/fast/layers/video-layer.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">   &lt;title&gt;Video element gets layer&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfullscreenvideocontrolsdraghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fullscreen/video-controls-drag.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fullscreen/video-controls-drag.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/fullscreen/video-controls-drag.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx">     &lt;p&gt;This tests that the video element's controls are draggable in full screen.  Press any key to continue.&lt;/p&gt;
</span><span class="cx">     &lt;video id=&quot;video&quot; width=&quot;300&quot;&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfullscreenvideocontrolsoverridehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fullscreen/video-controls-override.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fullscreen/video-controls-override.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/fullscreen/video-controls-override.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx">     &lt;p&gt;This tests that the video element's &quot;controls&quot; attribute is overridden in full screen mode, and that the controls are correctly hidden upon exiting full screen.  Press any key to continue.&lt;/p&gt;
</span><span class="cx">     &lt;video id=&quot;video&quot; width=&quot;300&quot;&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfullscreenvideocontrolsrtlhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fullscreen/video-controls-rtl.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fullscreen/video-controls-rtl.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/fullscreen/video-controls-rtl.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx">     &lt;p&gt;This tests that the video element's controls in full screen mode flip the layout of the volume controls in RTL mode.&lt;/p&gt;
</span><span class="cx">     &lt;video id=&quot;video&quot; width=&quot;300&quot;&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfullscreenvideocontrolstimelinehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fullscreen/video-controls-timeline.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fullscreen/video-controls-timeline.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/fullscreen/video-controls-timeline.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx">     &lt;p&gt;This tests that the video element's timeline controls are draggable in full screen.  Press any key to continue.&lt;/p&gt;
</span><span class="cx">     &lt;video id=&quot;video&quot; width=&quot;300&quot; controls&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsmediahlsvideocontrolslivestreamhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/media/hls/video-controls-live-stream.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/media/hls/video-controls-live-stream.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/http/tests/media/hls/video-controls-live-stream.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=../../media-resources/video-test.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsmediahlsvideodurationaccessibilityhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/media/hls/video-duration-accessibility.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/media/hls/video-duration-accessibility.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/http/tests/media/hls/video-duration-accessibility.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=../../media-resources/video-test.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMdefaultsrcobjectdataurlallowedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-allowed.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-allowed.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-allowed.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;meta http-equiv=&quot;Content-Security-Policy&quot; content=&quot;default-src 'self'; script-src 'self' 'unsafe-inline'&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMdefaultsrcobjectdataurlblockedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;meta http-equiv=&quot;Content-Security-Policy&quot; content=&quot;default-src 'self'; script-src 'self' 'unsafe-inline'&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMdefaultsrcobjectdataurlblocked2html"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked2.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked2.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/default-src-object-data-url-blocked2.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;meta http-equiv=&quot;Content-Security-Policy&quot; content=&quot;default-src 'self'; script-src 'self' 'unsafe-inline'&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycontentSecurityPolicyuserAgentShadowDOMvideocontrolsallowedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/video-controls-allowed.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/video-controls-allowed.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/video-controls-allowed.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;meta http-equiv=&quot;Content-Security-Policy&quot; content=&quot;default-src 'self'; script-src 'self' 'unsafe-inline'&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaccessibilityclosedcaptionshasariaownshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/accessibility-closed-captions-has-aria-owns.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/accessibility-closed-captions-has-aria-owns.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/accessibility-closed-captions-has-aria-owns.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;script src=&quot;../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaadoptnodecrashhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/adopt-node-crash.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/adopt-node-crash.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/adopt-node-crash.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE HTML&gt;
</del><ins>+&lt;!DOCTYPE HTML&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> 
</span><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaairplayautoplayhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/airplay-autoplay.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/airplay-autoplay.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/airplay-autoplay.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;AirPlay target should persist across src change&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaudioasvideofullscreenhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/audio-as-video-fullscreen.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/audio-as-video-fullscreen.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/audio-as-video-fullscreen.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Test that an audio file in a video element should not have a fullscreen button&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaudiocontrolsdonotfadeouthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/audio-controls-do-not-fade-out.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/audio-controls-do-not-fade-out.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/audio-controls-do-not-fade-out.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;p&gt;
</span><span class="cx">     This tests that audio controls do not fade out when the audio is playing.
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaudiocontrolsrenderinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/audio-controls-rendering.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/audio-controls-rendering.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/audio-controls-rendering.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;style&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaudiocontrolstimelineinmediadocumenthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/audio-controls-timeline-in-media-document.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/audio-controls-timeline-in-media-document.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/audio-controls-timeline-in-media-document.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;p&gt;Pass if the timeline of audio in a media document is properly updated during playback.&lt;/p&gt;
</span><span class="cx"> &lt;script src=&quot;media-file.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;video-test.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaudiodeletewhilesliderthumbclickedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/audio-delete-while-slider-thumb-clicked.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/audio-delete-while-slider-thumb-clicked.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/audio-delete-while-slider-thumb-clicked.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;style&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaaudiorepainthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/audio-repaint.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/audio-repaint.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/audio-repaint.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;p&gt;
</span><span class="cx">     This tests that in a html document with inline audio content, the media element repaints correctly
</span></span></pre></div>
<a id="trunkLayoutTestsmediaclickplaceholdernotpausinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/click-placeholder-not-pausing.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/click-placeholder-not-pausing.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/click-placeholder-not-pausing.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Click on placeholder on a MediaDocument should not pause.&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaclickvolumebarnotpausinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/click-volume-bar-not-pausing.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/click-volume-bar-not-pausing.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/click-volume-bar-not-pausing.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;title&gt;Click on volume bar on a MediaDocument does not pause.&lt;/title&gt;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsairplaycontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/airplay-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/airplay-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/airplay-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsairplaypickerhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/airplay-picker.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/airplay-picker.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/airplay-picker.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsbasichtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/basic.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/basic.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/basic.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolselementOrderhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/elementOrder.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/elementOrder.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/elementOrder.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsforcedtracksonlyhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/forced-tracks-only.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/forced-tracks-only.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/forced-tracks-only.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../video-test.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsfullscreenbuttoninlinelayouthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/fullscreen-button-inline-layout.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/fullscreen-button-inline-layout.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/fullscreen-button-inline-layout.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsinlineelementsdropofforderhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/inline-elements-dropoff-order.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/inline-elements-dropoff-order.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/inline-elements-dropoff-order.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolspictureinpicturehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/picture-in-picture.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/picture-in-picture.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/picture-in-picture.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolspipplaceholderwithoutvideocontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/pip-placeholder-without-video-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/pip-placeholder-without-video-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/pip-placeholder-without-video-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsshowControlsButtonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/showControlsButton.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/showControlsButton.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/showControlsButton.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsstatusDisplayhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/statusDisplay.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/statusDisplay.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/statusDisplay.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsstatusDisplayBadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/statusDisplayBad.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/statusDisplayBad.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/statusDisplayBad.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolstrackmenuhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls/track-menu.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls/track-menu.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls/track-menu.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;../video-test.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsafterreloadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls-after-reload.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls-after-reload.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls-after-reload.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsdragtimebarhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls-drag-timebar.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls-drag-timebar.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls-drag-timebar.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;drag timebar test&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsrightclickontimebarhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls-right-click-on-timebar.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls-right-click-on-timebar.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls-right-click-on-timebar.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;right click on timebar test&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsstricthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls-strict.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls-strict.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls-strict.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE HTML&gt;
</del><ins>+&lt;!DOCTYPE HTML&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=&quot;media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolsstylinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls-styling.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls-styling.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls-styling.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;script src=&quot;media-file.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediacontrolswithoutpreloadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/controls-without-preload.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/controls-without-preload.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/controls-without-preload.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamaccontrolspanelnotclippedoutexpectedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/mac/controls-panel-not-clipped-out-expected.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/mac/controls-panel-not-clipped-out-expected.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/mac/controls-panel-not-clipped-out-expected.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;div style=&quot;position: relative; height: 100px; width: 200px&quot;&gt;
</span><span class="cx">     &lt;audio controls style=&quot;height: 60px; width: 200px; position: absolute; bottom: 0;&quot;&gt;&lt;/audio&gt;
</span><span class="cx"> &lt;/div&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamaccontrolspanelnotclippedouthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/mac/controls-panel-not-clipped-out.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/mac/controls-panel-not-clipped-out.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/mac/controls-panel-not-clipped-out.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;div style=&quot;position: relative; height: 100px; width: 200px&quot;&gt;
</span><span class="cx">     &lt;audio controls style=&quot;height: 1px; width: 200px; position: absolute; bottom: 0;&quot;&gt;&lt;/audio&gt;
</span><span class="cx"> &lt;/div&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacaptionsnocontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-captions-no-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-captions-no-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-captions-no-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrollerdragcrashhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controller-drag-crash.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controller-drag-crash.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controller-drag-crash.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">   &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Dragging through timebar test&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolsaccessibilityhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-accessibility.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-accessibility.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-accessibility.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;video id=&quot;video&quot; controls&gt;&lt;/video&gt;
</span><span class="cx"> &lt;p id=&quot;description&quot;&gt;&lt;/p&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolscanceleventshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-cancel-events.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-cancel-events.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-cancel-events.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolsclonehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-clone.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-clone.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-clone.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;!-- This should be converted to a reftest in the future. --&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;!-- 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolsdragtimelinesetcontrolspropertyhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-drag-timeline-set-controls-property.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-drag-timeline-set-controls-property.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-drag-timeline-set-controls-property.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;media-controls-timeline-set-controls-property&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolstimelineupdatesafterplayinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-timeline-updates-after-playing.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-timeline-updates-after-playing.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-timeline-updates-after-playing.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;p&gt;This tests if media controls shows up and timeline is accordingly updated after playing the video.&lt;/p&gt;
</span><span class="cx"> &lt;video controls&gt;&lt;/video&gt;
</span><span class="cx"> &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolstimelineupdateswhenhoveredhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-timeline-updates-when-hovered.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-timeline-updates-when-hovered.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-timeline-updates-when-hovered.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;p&gt;This tests if media controls timeline is properly updated when a cursor hovers the controls during playback.&lt;/p&gt;
</span><span class="cx"> &lt;video controls&gt;&lt;/video&gt;
</span><span class="cx"> &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediacontrolstimelineupdateshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-controls-timeline-updates.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-controls-timeline-updates.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-controls-timeline-updates.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediadocumentaudiocontrolsvisiblehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-document-audio-controls-visible.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-document-audio-controls-visible.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-document-audio-controls-visible.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;script src='video-test.js'&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediadocumentaudiorepainthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-document-audio-repaint.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-document-audio-repaint.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-document-audio-repaint.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.testRunner)
</span><span class="cx">         testRunner.waitUntilDone();
</span></span></pre></div>
<a id="trunkLayoutTestsmediamediafullscreenreturntoinlinehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/media-fullscreen-return-to-inline.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/media-fullscreen-return-to-inline.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/media-fullscreen-return-to-inline.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;media-fullscreen-return-to-inline&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsairplaybuttonairplaybuttononhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -18,7 +19,7 @@
</span><span class="cx"> {
</span><span class="cx">     shouldBeTrue('airplayButton.element.classList.contains(&quot;on&quot;)');
</span><span class="cx">     debug(`window.getComputedStyle(airplayButton.element).backgroundColor = ${window.getComputedStyle(airplayButton.element).backgroundColor}`);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsairplaybuttonairplaybuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,5 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsairplayplacardairplayplacardtextsectionhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/airplay-placard/airplay-placard-text-section.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/airplay-placard/airplay-placard-text-section.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-placard/airplay-placard-text-section.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -20,7 +21,7 @@
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsaudioaudiocontrolsbuttonsexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons-expected.txt (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons-expected.txt        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -3,7 +3,6 @@
</span><span class="cx"> On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-Making AirPlay routes available.
</del><span class="cx"> AirPlay routes became available.
</span><span class="cx"> PASS mediaController.controls.controlsBar.children[2].children.length is 2
</span><span class="cx"> PASS mediaController.controls.controlsBar.children[2].children[0] is mediaController.controls.muteButton
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsaudioaudiocontrolsbuttonshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-buttons.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;audio src=&quot;../../content/test.mp4&quot; style=&quot;width: 600px; height: 50px;&quot; autoplay controls&gt;&lt;/audio&gt;
</span><span class="cx"> &lt;div id=&quot;container&quot;&gt;&lt;/div&gt;
</span><span class="lines">@@ -15,18 +16,15 @@
</span><span class="cx"> 
</span><span class="cx"> window.internals.setMockMediaPlaybackTargetPickerEnabled(false);
</span><span class="cx"> 
</span><del>-media.addEventListener(&quot;play&quot;, () =&gt; {
-    media.addEventListener(&quot;webkitplaybacktargetavailabilitychanged&quot;, playbackTargetAvailabilityChanged);
</del><ins>+media.addEventListener(&quot;webkitplaybacktargetavailabilitychanged&quot;, playbackTargetAvailabilityChanged);
</ins><span class="cx"> 
</span><del>-    debug(&quot;Making AirPlay routes available.&quot;);
-    window.internals.setMockMediaPlaybackTargetPickerEnabled(true);
-});
-
</del><span class="cx"> function playbackTargetAvailabilityChanged(event)
</span><span class="cx"> {
</span><span class="cx">     if (event.availability != &quot;available&quot;)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><ins>+    media.removeEventListener(&quot;webkitplaybacktargetavailabilitychanged&quot;, playbackTargetAvailabilityChanged);
+
</ins><span class="cx">     debug(&quot;AirPlay routes became available.&quot;);
</span><span class="cx"> 
</span><span class="cx">     scheduler.frameDidFire = function()
</span><span class="lines">@@ -38,7 +36,7 @@
</span><span class="cx">         debug(&quot;&quot;);
</span><span class="cx">         shadowRoot.remove();
</span><span class="cx">         media.remove();
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">     };
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsaudioaudiocontrolsmetricshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-metrics.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-metrics.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/audio/audio-controls-metrics.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsbuttonbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/button/button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/button/button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/button/button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,18 +1,31 @@
</span><span class="cx"> &lt;link rel=&quot;stylesheet&quot; href=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/button.css&quot; type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><ins>+&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+
+button {
+    width: 100px;
+    height: 100px;
+}
+    
+&lt;/style&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><ins>+window.jsTestIsAsync = true;
+
</ins><span class="cx"> description(&quot;Testing the &lt;code&gt;Button&lt;/code&gt; class.&quot;);
</span><span class="cx"> 
</span><ins>+const button = new Button;
+document.body.appendChild(button.element);
+
</ins><span class="cx"> debug(&quot;Default values&quot;);
</span><del>-const button = new Button;
</del><span class="cx"> shouldBeTrue(&quot;button.enabled&quot;);
</span><span class="cx"> shouldBeUndefined(&quot;button.uiDelegate&quot;);
</span><span class="cx"> shouldBeEqualToString(&quot;button.element.localName&quot;, &quot;button&quot;);
</span><span class="cx"> 
</span><del>-let clickedButton;
</del><ins>+let clickedButton, style;
</ins><span class="cx"> 
</span><span class="cx"> debug(&quot;&quot;);
</span><span class="cx"> debug(&quot;Responds to click events&quot;);
</span><span class="lines">@@ -25,20 +38,22 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> }
</span><del>-button.element.dispatchEvent(new MouseEvent(&quot;click&quot;));
</del><span class="cx"> 
</span><del>-debug(&quot;&quot;);
-debug(&quot;Doesn't respond to click events when disabled&quot;);
-button.enabled = false;
-button.element.dispatchEvent(new MouseEvent(&quot;click&quot;));
</del><ins>+pressOnElement(button.element, () =&gt; {
+    debug(&quot;&quot;);
+    debug(&quot;Doesn't respond to click events when disabled&quot;);
+    button.enabled = false;
+    pressOnElement(button.element, () =&gt; {
+        debug(&quot;&quot;);
+        debug(&quot;Has all the appropriate styles&quot;)
+        style = window.getComputedStyle(button.element);
+        shouldBeEqualToString(&quot;style.position&quot;, &quot;absolute&quot;);
+        shouldBeEqualToString(&quot;style.borderWidth&quot;, &quot;0px&quot;);
+        shouldBeEqualToString(&quot;style.webkitAppearance&quot;, &quot;none&quot;);
</ins><span class="cx"> 
</span><del>-debug(&quot;&quot;);
-debug(&quot;Has all the appropriate styles&quot;)
-document.body.appendChild(button.element);
-const style = window.getComputedStyle(button.element);
-shouldBeEqualToString(&quot;style.position&quot;, &quot;absolute&quot;);
-shouldBeEqualToString(&quot;style.borderWidth&quot;, &quot;0px&quot;);
-shouldBeEqualToString(&quot;style.webkitAppearance&quot;, &quot;none&quot;);
</del><ins>+        finishJSTest();
+    });
+});
</ins><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsbuttonscontainerbuttonscontainerbuttonspropertyhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/buttons-container/buttons-container-buttons-property.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/buttons-container/buttons-container-buttons-property.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/buttons-container/buttons-container-buttons-property.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -19,7 +20,7 @@
</span><span class="cx">     shouldBe(&quot;container.buttons.length&quot;, &quot;3&quot;);
</span><span class="cx">     shouldBe(&quot;container.children.length&quot;, &quot;3&quot;);
</span><span class="cx">     shouldBe(&quot;container.buttons&quot;, &quot;container.children&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsforwardbuttonforwardbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/forward-button/forward-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/forward-button/forward-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/forward-button/forward-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -22,7 +23,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue('forwardButton.element.style.webkitMaskImage.includes(&quot;macOS/forward@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsfullscreenbuttonfullscreenbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/fullscreen-button/fullscreen-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/fullscreen-button/fullscreen-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/fullscreen-button/fullscreen-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -27,7 +28,7 @@
</span><span class="cx">     shouldBeTrue('enterFullscreenButton.element.style.webkitMaskImage.includes(&quot;macOS/enter-fullscreen@&quot;)');
</span><span class="cx">     shouldBeTrue('iOSEnterFullscreenButton.element.style.webkitMaskImage.includes(&quot;iOS/enter-fullscreen@&quot;)');
</span><span class="cx">     shouldBeTrue('exitFullscreenButton.element.style.webkitMaskImage.includes(&quot;macOS/exit-fullscreen@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsfullscreensupportfullscreensupportclickhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/fullscreen-support/fullscreen-support-click.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/fullscreen-support/fullscreen-support-click.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/fullscreen-support/fullscreen-support-click.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
</span><span class="cx">     
</span><span class="lines">@@ -31,14 +32,13 @@
</span><span class="cx">     if (media.paused)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    const input = mediaController.controls.fullscreenButton.element;
-    const bounds = input.getBoundingClientRect();
-    const centerX = bounds.left + bounds.width / 2;
-    const centerY = bounds.top + bounds.height / 2;
</del><ins>+    const button = mediaController.controls.fullscreenButton.element;
+    if (button.getBoundingClientRect().width === 0)
+        return;
</ins><span class="cx"> 
</span><del>-    eventSender.mouseMoveTo(centerX, centerY);
-    eventSender.mouseDown();
-    eventSender.mouseUp();
</del><ins>+    media.pause();
+    pressOnElement(button);
+    scheduler.frameDidFire = null;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> media.addEventListener(&quot;webkitfullscreenchange&quot;, () =&gt; {
</span><span class="lines">@@ -45,7 +45,7 @@
</span><span class="cx">     shouldBeTrue(&quot;media.webkitDisplayingFullscreen&quot;);
</span><span class="cx">     container.remove();
</span><span class="cx">     media.remove();
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsfullscreensupportipadfullscreensupporttapexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap-expected.txt (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap-expected.txt                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+Testing the FullscreenSupport behavior when tapping the fullscreen button.
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+PASS media.webkitDisplayingFullscreen is true
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsfullscreensupportipadfullscreensupporttaphtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;script src=&quot;../../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;body&gt;
+&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    
+    video, #host {
+        position: absolute;
+        top: 0;
+        left: 0;
+    }
+
+    video {
+        width: 768px;
+        height: 240px;
+    }
+    
+&lt;/style&gt;
+&lt;video src=&quot;../../../content/test.mp4&quot; autoplay controls&gt;&lt;/video&gt;
+&lt;div id=&quot;host&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+window.jsTestIsAsync = true;
+
+description(&quot;Testing the &lt;code&gt;FullscreenSupport&lt;/code&gt; behavior when tapping the fullscreen button.&quot;);
+
+const container = document.querySelector(&quot;div#host&quot;);
+const media = document.querySelector(&quot;video&quot;);
+const mediaController = createControls(container, media, null);
+
+media.addEventListener(&quot;webkitpresentationmodechanged&quot;, () =&gt; {
+    if (media.webkitDisplayingFullscreen) {
+        shouldBeTrue(&quot;media.webkitDisplayingFullscreen&quot;);
+        media.webkitExitFullscreen();
+    } else {
+        // We're giving the test time to finish the animation to exit fullscreen
+        // so that we are in a clean state for the next test.
+        setTimeout(() =&gt; {
+            container.remove();
+            media.remove();
+            finishJSTest();
+        }, 1000);
+    }
+});
+
+scheduler.frameDidFire = function() {
+    if (media.paused)
+        return;
+
+    if (pressOnElement(mediaController.controls.fullscreenButton.element))
+        scheduler.frameDidFire = null;
+};
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiconbuttoniconbuttonactivestatehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-active-state.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-active-state.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-active-state.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -11,31 +11,47 @@
</span><span class="cx"> iconButton.iconName = Icons.Pause;
</span><span class="cx"> document.body.appendChild(iconButton.element);
</span><span class="cx"> 
</span><ins>+let x, y;
+
</ins><span class="cx"> function checkBackgroundColor()
</span><span class="cx"> {
</span><del>-    shouldBeEqualToString(&quot;window.getComputedStyle(iconButton.element).backgroundColor&quot;, &quot;rgb(255, 255, 255)&quot;);
-    finishJSTest();
-}
-
-if (&quot;testRunner&quot; in window) {
-    const bounds = iconButton.element.getBoundingClientRect();
-    const x = bounds.left + 1;
-    const y = bounds.top + 1;
</del><ins>+    shouldBeEqualToString(&quot;window.getComputedStyle(iconButton.element).backgroundColor&quot;, &quot;rgb(255, 255, 255)&quot;)
</ins><span class="cx">     if (&quot;createTouch&quot; in document) {
</span><span class="cx">         testRunner.runUIScript(`
</span><del>-        (function() {
-            uiController.touchDownAtPoint(${x}, ${y}, 1, function() {
</del><ins>+            uiController.liftUpAtPoint(${x}, ${y}, 1, function() {
</ins><span class="cx">                 uiController.uiScriptComplete(&quot;Done&quot;);
</span><del>-            });
-        })();`, checkBackgroundColor);
</del><ins>+            })`, finishJSTest);
</ins><span class="cx">     } else {
</span><del>-        eventSender.mouseMoveTo(x, y);
-        eventSender.mouseDown();
-        checkBackgroundColor();
</del><ins>+        eventSender.mouseUp();
+        finishJSTest();
</ins><span class="cx">     }
</span><del>-} else
-    debug(&quot;This test is designed to run in DRT.&quot;);
</del><ins>+}
</ins><span class="cx"> 
</span><ins>+scheduler.frameDidFire = function()
+{
+    const bounds = iconButton.element.getBoundingClientRect();
+    if (bounds.height === 0)
+        return;
+
+    scheduler.frameDidFire = null;
+
+    if (&quot;testRunner&quot; in window) {
+        x = bounds.left + 1;
+        y = bounds.top + 1;
+        if (&quot;createTouch&quot; in document) {
+            testRunner.runUIScript(`
+                uiController.touchDownAtPoint(${x}, ${y}, 1, function() {
+                    uiController.uiScriptComplete(&quot;Done&quot;);
+                })`, checkBackgroundColor);
+        } else {
+            eventSender.mouseMoveTo(x, y);
+            eventSender.mouseDown();
+            checkBackgroundColor();
+        }
+    } else
+        debug(&quot;This test is designed to run in DRT.&quot;);
+}
+
</ins><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiconbuttoniconbuttononhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -18,7 +19,7 @@
</span><span class="cx"> 
</span><span class="cx">     iconButton.element.remove();
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiconbuttoniconbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -49,7 +50,7 @@
</span><span class="cx">         shouldBeEqualToString(&quot;iconButton.element.style.height&quot;, &quot;70px&quot;);
</span><span class="cx">         shouldBeEqualToString(&quot;iconButton.element.style.webkitMaskSize&quot;, &quot;70px 70px&quot;);
</span><span class="cx"> 
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">     } 
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolsbuttonsstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-buttons-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-buttons-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-buttons-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -23,6 +23,9 @@
</span><span class="cx"> {
</span><span class="cx">     document.body.appendChild(mediaControls.element);
</span><span class="cx"> 
</span><ins>+    if (buttonPositions.some(buttonPosition =&gt; buttonPosition[0].width == 0))
+        return;
+
</ins><span class="cx">     for (let [button, y] of buttonPositions) {
</span><span class="cx">         style = window.getComputedStyle(button.element);
</span><span class="cx">         debug(button.constructor.name);
</span><span class="lines">@@ -33,8 +36,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><del>-
-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolscontrolsbarstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-controls-bar-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-controls-bar-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-controls-bar-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -40,7 +40,7 @@
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolslayouthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-layout.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-layout.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-layout.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -33,7 +34,7 @@
</span><span class="cx">     shouldBe(&quot;mediaControls.controlsBar.children[0].children&quot;, &quot;[mediaControls.playPauseButton, mediaControls.skipBackButton]&quot;);
</span><span class="cx">     shouldBe(&quot;mediaControls.controlsBar.children[2].children&quot;, &quot;[mediaControls.airplayButton, mediaControls.pipButton, mediaControls.fullscreenButton]&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediacontrolstimecontrolstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-time-control-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-time-control-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-controls-time-control-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -21,7 +21,7 @@
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsiosinlinemediacontrolsiosinlinemediadroppingcontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-dropping-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-dropping-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/ios-inline-media-controls/ios-inline-media-dropping-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -51,8 +52,7 @@
</span><span class="cx">         debug(&quot;&quot;);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    scheduler.frameDidFire = new Function;
-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodeaddChildhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/addChild.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/addChild.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/addChild.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.addChild(child[, index])&lt;/code&gt; method.&quot;);
</span><span class="lines">@@ -34,7 +35,7 @@
</span><span class="cx">     shouldBeTrue(&quot;node.element.firstElementChild === b.element&quot;);
</span><span class="cx">     shouldBeTrue(&quot;node.element.lastElementChild === a.element&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodechildrenhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/children.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/children.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/children.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.children&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -58,7 +59,7 @@
</span><span class="cx">         break;
</span><span class="cx">     case 3:
</span><span class="cx">         shouldBeTrue(&quot;node.element.childElementCount === 0&quot;);
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">         break;
</span><span class="cx">     }
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodeheighthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/height.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/height.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/height.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.height&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -37,7 +38,7 @@
</span><span class="cx">     shouldBeFalse(&quot;scheduler.hasScheduledLayoutCallbacks&quot;);
</span><span class="cx">     debug(&quot;&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodeinsertAfterhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/insertAfter.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/insertAfter.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/insertAfter.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.insertAfter(newSibling, referenceSibling)&lt;/code&gt; method.&quot;);
</span><span class="lines">@@ -52,7 +53,7 @@
</span><span class="cx">     shouldBeTrue(&quot;node.element.firstElementChild.nextElementSibling === c.element&quot;);
</span><span class="cx">     shouldBeTrue(&quot;node.element.lastElementChild === a.element&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodeinsertBeforehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/insertBefore.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/insertBefore.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/insertBefore.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.insertBefore(newSibling, referenceSibling)&lt;/code&gt; method.&quot;);
</span><span class="lines">@@ -52,7 +53,7 @@
</span><span class="cx">     shouldBeTrue(&quot;node.element.firstElementChild.nextElementSibling === c.element&quot;);
</span><span class="cx">     shouldBeTrue(&quot;node.element.lastElementChild === a.element&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodenodemadedirtyduringlayouthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/node-made-dirty-during-layout.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/node-made-dirty-during-layout.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/node-made-dirty-during-layout.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,8 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.y&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -30,15 +32,9 @@
</span><span class="cx">         shouldBeEqualToString(&quot;node.element.style.left&quot;, &quot;20px&quot;);
</span><span class="cx">     else if (numberOfFrames == 2) {
</span><span class="cx">         shouldBeEqualToString(&quot;node.element.style.left&quot;, &quot;10px&quot;);
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">     }
</span><span class="cx"> };
</span><span class="cx"> 
</span><del>-// Half a second should be sufficient for this test to complete.
-setTimeout(() =&gt; {
-    debug(&quot;FAIL: Test timed out.&quot;);
-    finishJSTest();
-}, 500);
-
</del><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnoderemovehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/remove.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/remove.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/remove.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.remove()&lt;/code&gt; method.&quot;);
</span><span class="lines">@@ -42,7 +43,7 @@
</span><span class="cx">     shouldBeTrue(&quot;node.element.childElementCount === 1&quot;);
</span><span class="cx">     shouldBeTrue(&quot;node.element.firstElementChild === c.element&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnoderemoveChildhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/removeChild.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/removeChild.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/removeChild.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,8 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.removeChild(child)&lt;/code&gt; method.&quot;);
</span><span class="lines">@@ -48,7 +50,7 @@
</span><span class="cx">     shouldBeTrue(&quot;node.element.childElementCount === 1&quot;);
</span><span class="cx">     shouldBeTrue(&quot;node.element.firstElementChild === c.element&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodesubclassinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/subclassing.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/subclassing.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/subclassing.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Subclassing &lt;code&gt;LayoutNode&lt;/code&gt; by exposing a new custom property.&quot;);
</span><span class="lines">@@ -64,7 +65,7 @@
</span><span class="cx">         node.needsLayout = true;
</span><span class="cx">         break;
</span><span class="cx">     case 2:
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">         break;
</span><span class="cx">     }
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodevisiblehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/visible.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/visible.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/visible.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.visible&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -43,7 +44,7 @@
</span><span class="cx">         shouldBeFalse(&quot;scheduler.hasScheduledLayoutCallbacks&quot;);
</span><span class="cx">         debug(&quot;&quot;);
</span><span class="cx"> 
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">         break;
</span><span class="cx">     }
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodewidthhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/width.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/width.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/width.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.width&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -37,7 +38,7 @@
</span><span class="cx">     shouldBeFalse(&quot;scheduler.hasScheduledLayoutCallbacks&quot;);
</span><span class="cx">     debug(&quot;&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodexhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/x.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/x.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/x.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.x&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -37,7 +38,7 @@
</span><span class="cx">     shouldBeFalse(&quot;scheduler.hasScheduledLayoutCallbacks&quot;);
</span><span class="cx">     debug(&quot;&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolslayoutnodeyhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/layout-node/y.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/layout-node/y.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/layout-node/y.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,6 +1,7 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/layout-node.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;LayoutNode.y&lt;/code&gt; property.&quot;);
</span><span class="lines">@@ -37,7 +38,7 @@
</span><span class="cx">     shouldBeFalse(&quot;scheduler.hasScheduledLayoutCallbacks&quot;);
</span><span class="cx">     debug(&quot;&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsbuttonscontainersstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,4 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><del>-&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</del><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;div id=&quot;container&quot;&gt;&lt;/div&gt;
</span><span class="lines">@@ -31,25 +30,31 @@
</span><span class="cx">     if (buttons.some(button =&gt; button.width == 0))
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    document.getElementById(&quot;container&quot;).appendChild(mediaControls.element);
</del><ins>+    // All buttons have been loaded, we wait for the next tick to ensure
+    // that their CSS properties have also been committed.
+    window.requestAnimationFrame(() =&gt; {
+        document.getElementById(&quot;container&quot;).appendChild(mediaControls.element);
</ins><span class="cx"> 
</span><del>-    centerContainerBounds = centerContainer.element.getBoundingClientRect();
-    shouldBe(&quot;centerContainerBounds.left&quot;, &quot;311&quot;);
-    shouldBe(&quot;centerContainerBounds.top&quot;, &quot;500&quot;);
-    shouldBe(&quot;centerContainerBounds.width&quot;, &quot;178&quot;);
-    shouldBe(&quot;centerContainerBounds.height&quot;, &quot;44&quot;);
</del><ins>+        centerContainerBounds = centerContainer.element.getBoundingClientRect();
</ins><span class="cx"> 
</span><del>-    debug(&quot;&quot;);
-    rightContainerBounds = rightContainer.element.getBoundingClientRect();
-    shouldBeCloseTo(&quot;rightContainerBounds.left&quot;, 493, 0.5);
-    shouldBe(&quot;rightContainerBounds.top&quot;, &quot;500&quot;);
-    shouldBeCloseTo(&quot;rightContainerBounds.width&quot;, 141, 0.5);
-    shouldBe(&quot;rightContainerBounds.height&quot;, &quot;44&quot;);
</del><ins>+        shouldBe(&quot;centerContainerBounds.left&quot;, &quot;311&quot;);
+        shouldBe(&quot;centerContainerBounds.top&quot;, &quot;500&quot;);
+        shouldBe(&quot;centerContainerBounds.width&quot;, &quot;178&quot;);
+        shouldBe(&quot;centerContainerBounds.height&quot;, &quot;44&quot;);
</ins><span class="cx"> 
</span><del>-    mediaControls.element.remove();
</del><ins>+        debug(&quot;&quot;);
+        rightContainerBounds = rightContainer.element.getBoundingClientRect();
+        shouldBeCloseTo(&quot;rightContainerBounds.left&quot;, 493, 0.5);
+        shouldBe(&quot;rightContainerBounds.top&quot;, &quot;500&quot;);
+        shouldBeCloseTo(&quot;rightContainerBounds.width&quot;, 141, 0.5);
+        shouldBe(&quot;rightContainerBounds.height&quot;, &quot;44&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;&quot;);
-    finishJSTest();
</del><ins>+        debug(&quot;&quot;);
+        mediaControls.element.remove();
+        finishJSTest();
+    });
+
+    scheduler.frameDidFire = null;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsbuttonsstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -25,6 +25,9 @@
</span><span class="cx"> {
</span><span class="cx">     document.body.appendChild(mediaControls.element);
</span><span class="cx"> 
</span><ins>+    if (buttonPositions.some(buttonPosition =&gt; buttonPosition[0].width == 0))
+        return;
+
</ins><span class="cx">     for (let [button, x, y, width] of buttonPositions) {
</span><span class="cx">         style = window.getComputedStyle(button.element);
</span><span class="cx">         debug(button.constructor.name);
</span><span class="lines">@@ -35,8 +38,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><del>-
-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolscontrolsbarstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -46,7 +46,7 @@
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsdraghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls autoplay&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsrightcontainermarginhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-right-container-margin.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-right-container-margin.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-right-container-margin.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx">         debug(&quot;2 enabled buttons&quot;)
</span><span class="cx">         shouldBe(&quot;rightContainer.margin&quot;, &quot;24&quot;);
</span><span class="cx">         debug(&quot;&quot;);
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">     }
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolstimecontrolstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-time-control-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-time-control-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-time-control-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosfullscreenmediacontrolsmacosfullscreenmediacontrolsvolumestyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-volume-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-volume-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-volume-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -20,7 +20,7 @@
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolsbuttonsstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -25,6 +25,9 @@
</span><span class="cx"> {
</span><span class="cx">     document.body.appendChild(mediaControls.element);
</span><span class="cx"> 
</span><ins>+    if (buttonPositions.some(buttonPosition =&gt; buttonPosition[0].width == 0))
+        return;
+
</ins><span class="cx">     for (let [button, y] of buttonPositions) {
</span><span class="cx">         style = window.getComputedStyle(button.element);
</span><span class="cx">         debug(button.constructor.name);
</span><span class="lines">@@ -35,8 +38,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><del>-
-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolscontrolsbarstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -43,7 +43,7 @@
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><span class="cx">     debug();
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolslayouthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-layout.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-layout.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-layout.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -42,7 +43,7 @@
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue(&quot;mediaControls.volumeSlider.parent.x == expectedVolumeSliderContainerX&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolsstatuslabelhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-status-label.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-status-label.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-status-label.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -26,7 +27,7 @@
</span><span class="cx">         shouldBeTrue(&quot;mediaControls.controlsBar.children.includes(mediaControls.statusLabel)&quot;);
</span><span class="cx">         shouldBeFalse(&quot;mediaControls.controlsBar.children.includes(mediaControls.timeControl)&quot;);
</span><span class="cx">         debug(&quot;&quot;);
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">     }
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolstimecontrolstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-time-control-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-time-control-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-time-control-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -21,7 +21,7 @@
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediacontrolsvolumestyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -31,7 +31,7 @@
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx"> 
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmacosinlinemediacontrolsmacosinlinemediadroppingcontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-dropping-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-dropping-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/macos-inline-media-controls/macos-inline-media-dropping-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -56,8 +57,7 @@
</span><span class="cx">         debug(&quot;&quot;);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    scheduler.frameDidFire = new Function;
-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidemouseenterandmouseleavehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; left: 0; top: 0; width: 320px; height: 240px;&quot; controls autoplay data-auto-hide-delay=&quot;250&quot;&gt;&lt;/video&gt;
</span><span class="lines">@@ -11,35 +11,37 @@
</span><span class="cx"> let controlsBar;
</span><span class="cx"> 
</span><span class="cx"> document.querySelector(&quot;video&quot;).addEventListener(&quot;play&quot;, (event) =&gt; {
</span><del>-    const media = event.target;
-    controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</del><ins>+    window.requestAnimationFrame(() =&gt; {
+        const media = event.target;
+        controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;Video started playing, controls bar is visible by default.&quot;);
-    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+        debug(&quot;Video started playing, controls bar is visible by default.&quot;);
+        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-    setTimeout(() =&gt; {
-        debug(&quot;&quot;);
-        debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
-        shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
-
-        eventSender.mouseMoveTo(100, 100);
-        window.requestAnimationFrame(() =&gt; {
</del><ins>+        setTimeout(() =&gt; {
</ins><span class="cx">             debug(&quot;&quot;);
</span><del>-            debug(&quot;Mouse moved over the media, controls bar should be visible.&quot;);
-            shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+            debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
+            shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-            eventSender.mouseMoveTo(400, 400);
</del><ins>+            eventSender.mouseMoveTo(100, 100);
</ins><span class="cx">             window.requestAnimationFrame(() =&gt; {
</span><span class="cx">                 debug(&quot;&quot;);
</span><del>-                debug(&quot;Mouse moved out of the media, controls bar should be faded.&quot;);
-                shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+                debug(&quot;Mouse moved over the media, controls bar should be visible.&quot;);
+                shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-                debug(&quot;&quot;);
-                media.remove();
-                finishJSTest();
</del><ins>+                eventSender.mouseMoveTo(400, 400);
+                window.requestAnimationFrame(() =&gt; {
+                    debug(&quot;&quot;);
+                    debug(&quot;Mouse moved out of the media, controls bar should be faded.&quot;);
+                    shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
+
+                    debug(&quot;&quot;);
+                    media.remove();
+                    finishJSTest();
+                });
</ins><span class="cx">             });
</span><del>-        });
-    }, 300);
</del><ins>+        }, 300);
+    });
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidemouseenterovercontrolsbarhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; left: 0; top: 0; width: 320px; height: 240px;&quot; controls autoplay data-auto-hide-delay=&quot;250&quot;&gt;&lt;/video&gt;
</span><span class="lines">@@ -11,35 +11,37 @@
</span><span class="cx"> let controlsBar;
</span><span class="cx"> 
</span><span class="cx"> document.querySelector(&quot;video&quot;).addEventListener(&quot;play&quot;, (event) =&gt; {
</span><del>-    const media = event.target;
-    controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</del><ins>+    window.requestAnimationFrame(() =&gt; {
+        const media = event.target;
+        controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;Video started playing, controls bar is visible by default.&quot;);
-    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+        debug(&quot;Video started playing, controls bar is visible by default.&quot;);
+        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-    setTimeout(() =&gt; {
-        debug(&quot;&quot;);
-        debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
-        shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
-
-        eventSender.mouseMoveTo(100, 220);
-        window.requestAnimationFrame(() =&gt; {
-            debug(&quot;&quot;);
-            debug(&quot;Mouse moved over the media, controls bar should be visible.&quot;);
-            shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
-        });
-
</del><span class="cx">         setTimeout(() =&gt; {
</span><span class="cx">             debug(&quot;&quot;);
</span><del>-            debug(&quot;Auto-hide timer would have elapsed, but the controls bar remains visible since the mouse is over the controls bar.&quot;);
-            shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+            debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
+            shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-            debug(&quot;&quot;);
-            media.remove();
-            finishJSTest();
</del><ins>+            eventSender.mouseMoveTo(100, 220);
+            window.requestAnimationFrame(() =&gt; {
+                debug(&quot;&quot;);
+                debug(&quot;Mouse moved over the media, controls bar should be visible.&quot;);
+                shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
+            });
+
+            setTimeout(() =&gt; {
+                debug(&quot;&quot;);
+                debug(&quot;Auto-hide timer would have elapsed, but the controls bar remains visible since the mouse is over the controls bar.&quot;);
+                shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
+
+                debug(&quot;&quot;);
+                media.remove();
+                finishJSTest();
+            }, 300);
+
</ins><span class="cx">         }, 300);
</span><del>-
-    }, 300);
</del><ins>+    });
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidemouseleaveafterplayhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; left: 0; top: 0; width: 320px; height: 240px;&quot; controls autoplay data-auto-hide-delay=&quot;250&quot;&gt;&lt;/video&gt;
</span><span class="lines">@@ -17,49 +17,51 @@
</span><span class="cx"> 
</span><span class="cx">     played = true;
</span><span class="cx"> 
</span><del>-    const media = event.target;
-    controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</del><ins>+    window.requestAnimationFrame(() =&gt; {
+        const media = event.target;
+        controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;Video started playing, controls bar is visible by default.&quot;);
-    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+        debug(&quot;Video started playing, controls bar is visible by default.&quot;);
+        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;&quot;);
-    debug(&quot;Pausing media, this stops the auto-hide timer.&quot;);
-    media.pause();
-
-    setTimeout(() =&gt; {
</del><span class="cx">         debug(&quot;&quot;);
</span><del>-        debug(&quot;Resuming media playback, this should rewind the auto-hide timer and ensure that entering and leaving the media doesn't hide the controls bar until the auto-hide timer has expired after playing.&quot;);
-        media.play();
</del><ins>+        debug(&quot;Pausing media, this stops the auto-hide timer.&quot;);
+        media.pause();
</ins><span class="cx"> 
</span><span class="cx">         setTimeout(() =&gt; {
</span><span class="cx">             debug(&quot;&quot;);
</span><del>-            debug(&quot;Mouse entering the media.&quot;);
-            eventSender.mouseMoveTo(100, 100);
</del><ins>+            debug(&quot;Resuming media playback, this should rewind the auto-hide timer and ensure that entering and leaving the media doesn't hide the controls bar until the auto-hide timer has expired after playing.&quot;);
+            media.play();
</ins><span class="cx"> 
</span><span class="cx">             setTimeout(() =&gt; {
</span><span class="cx">                 debug(&quot;&quot;);
</span><del>-                debug(&quot;Mouse leaving the media.&quot;);
-                eventSender.mouseMoveTo(400, 400);
</del><ins>+                debug(&quot;Mouse entering the media.&quot;);
+                eventSender.mouseMoveTo(100, 100);
</ins><span class="cx"> 
</span><del>-                window.requestAnimationFrame(() =&gt; {
</del><ins>+                setTimeout(() =&gt; {
</ins><span class="cx">                     debug(&quot;&quot;);
</span><del>-                    debug(&quot;The initial auto-hide timer started when we resumed playback should not have expired or be overriden by the mouse entering and leaving the media, the controls should remain visible.&quot;);
-                    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+                    debug(&quot;Mouse leaving the media.&quot;);
+                    eventSender.mouseMoveTo(400, 400);
</ins><span class="cx"> 
</span><del>-                });
</del><ins>+                    window.requestAnimationFrame(() =&gt; {
+                        debug(&quot;&quot;);
+                        debug(&quot;The initial auto-hide timer started when we resumed playback should not have expired or be overriden by the mouse entering and leaving the media, the controls should remain visible.&quot;);
+                        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
+
+                    });
+                }, 50);
</ins><span class="cx">             }, 50);
</span><del>-        }, 50);
</del><span class="cx"> 
</span><del>-        setTimeout(() =&gt; {
-            debug(&quot;&quot;);
-            debug(&quot;The initial auto-hide timer started when we resumed playback should now have expired and the controls should be faded.&quot;);
-            shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+            setTimeout(() =&gt; {
+                debug(&quot;&quot;);
+                debug(&quot;The initial auto-hide timer started when we resumed playback should now have expired and the controls should be faded.&quot;);
+                shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-            debug(&quot;&quot;);
-            media.remove();
-            finishJSTest();
-        }, 300);
</del><ins>+                debug(&quot;&quot;);
+                media.remove();
+                finishJSTest();
+            }, 300);
+        });
</ins><span class="cx">     });
</span><span class="cx"> });
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidepausehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; left: 0; top: 0; width: 320px; height: 240px;&quot; controls autoplay data-auto-hide-delay=&quot;250&quot;&gt;&lt;/video&gt;
</span><span class="lines">@@ -11,23 +11,25 @@
</span><span class="cx"> let controlsBar;
</span><span class="cx"> 
</span><span class="cx"> document.querySelector(&quot;video&quot;).addEventListener(&quot;play&quot;, (event) =&gt; {
</span><del>-    const media = event.target;
-    controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</del><ins>+    window.requestAnimationFrame(() =&gt; {
+        const media = event.target;
+        controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;Video started playing, controls bar is visible by default.&quot;);
-    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+        debug(&quot;Video started playing, controls bar is visible by default.&quot;);
+        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-    media.pause();
</del><ins>+        media.pause();
</ins><span class="cx"> 
</span><del>-    setTimeout(() =&gt; {
-        debug(&quot;&quot;);
-        debug(&quot;Auto-hide timer would have elapsed, but media was paused so controls bar should remain visible.&quot;);
-        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+        setTimeout(() =&gt; {
+            debug(&quot;&quot;);
+            debug(&quot;Auto-hide timer would have elapsed, but media was paused so controls bar should remain visible.&quot;);
+            shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-        debug(&quot;&quot;);
-        media.remove();
-        finishJSTest();
-    }, 300);
</del><ins>+            debug(&quot;&quot;);
+            media.remove();
+            finishJSTest();
+        }, 300);
+    });
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohiderewindwithmouseenterhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; left: 0; top: 0; width: 320px; height: 240px;&quot; controls autoplay data-auto-hide-delay=&quot;250&quot;&gt;&lt;/video&gt;
</span><span class="lines">@@ -11,35 +11,36 @@
</span><span class="cx"> let controlsBar;
</span><span class="cx"> 
</span><span class="cx"> document.querySelector(&quot;video&quot;).addEventListener(&quot;play&quot;, (event) =&gt; {
</span><del>-    const media = event.target;
-    controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</del><ins>+    window.requestAnimationFrame(() =&gt; {
+        const media = event.target;
+        controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</ins><span class="cx"> 
</span><del>-    debug(&quot;Video started playing, controls bar is visible by default.&quot;);
-    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+        debug(&quot;Video started playing, controls bar is visible by default.&quot;);
+        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</ins><span class="cx"> 
</span><del>-    setTimeout(() =&gt; {
-        debug(&quot;&quot;);
-        debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
-        shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
-
-        eventSender.mouseMoveTo(100, 100);
-        window.requestAnimationFrame(() =&gt; {
-            debug(&quot;&quot;);
-            debug(&quot;Mouse moved over the media, controls bar should be visible.&quot;);
-            shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
-        });
-
</del><span class="cx">         setTimeout(() =&gt; {
</span><span class="cx">             debug(&quot;&quot;);
</span><span class="cx">             debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
</span><span class="cx">             shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
</span><span class="cx"> 
</span><del>-            debug(&quot;&quot;);
-            media.remove();
-            finishJSTest();
</del><ins>+            eventSender.mouseMoveTo(100, 100);
+            window.requestAnimationFrame(() =&gt; {
+                debug(&quot;&quot;);
+                debug(&quot;Mouse moved over the media, controls bar should be visible.&quot;);
+                shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
+            });
+
+            setTimeout(() =&gt; {
+                debug(&quot;&quot;);
+                debug(&quot;Auto-hide timer has elapsed, controls bar should be faded.&quot;);
+                shouldBeTrue(&quot;controlsBar.classList.contains('faded')&quot;);
+
+                debug(&quot;&quot;);
+                media.remove();
+                finishJSTest();
+            }, 300);
</ins><span class="cx">         }, 300);
</span><del>-
-    }, 300);
</del><ins>+    });
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerautohidehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; left: 0; top: 0; width: 320px; height: 240px;&quot; controls autoplay data-auto-hide-delay=&quot;250&quot;&gt;&lt;/video&gt;
</span><span class="lines">@@ -12,11 +12,14 @@
</span><span class="cx"> 
</span><span class="cx"> document.querySelector(&quot;video&quot;).addEventListener(&quot;play&quot;, (event) =&gt; {
</span><span class="cx">     const media = event.target;
</span><del>-    controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</del><span class="cx"> 
</span><del>-    debug(&quot;Video started playing, controls bar is visible by default.&quot;);
-    shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
</del><ins>+    window.requestAnimationFrame(() =&gt; {
+        controlsBar = window.internals.shadowRoot(media).querySelector(&quot;.controls-bar&quot;);
</ins><span class="cx"> 
</span><ins>+        debug(&quot;Video started playing, controls bar is visible by default.&quot;);
+        shouldBeFalse(&quot;controlsBar.classList.contains('faded')&quot;);
+    });
+
</ins><span class="cx">     setTimeout(() =&gt; {
</span><span class="cx">         debug(&quot;&quot;);
</span><span class="cx">         debug(&quot;Auto-hide timer has been going for 200ms, controls bar should still be visible.&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerfadecontrolswhenenteringfullscreenhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 640px; height: 480px;&quot; controls autoplay&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerfullscreenltrhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerinlinetofullscreentoinlinehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; top: 0; left: 0; width: 320px; height: 240px;&quot; controls autoplay&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerinlinetofullscreentopiptoinlinehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;position: absolute; top: 0; left: 0; width: 320px; height: 240px;&quot; controls autoplay&gt;&lt;/video&gt;
</span><span class="lines">@@ -24,11 +24,13 @@
</span><span class="cx">     window.requestAnimationFrame(() =&gt; clickOnElement(shadowRoot.querySelector(&quot;button.fullscreen&quot;)));
</span><span class="cx"> });
</span><span class="cx"> 
</span><del>-let becameInline = false;
-media.addEventListener(&quot;webkitpresentationmodechanged&quot;, function() {
-    if (becameInline)
</del><ins>+let previousPresentationMode = media.webkitPresentationMode;
+media.addEventListener(&quot;webkitpresentationmodechanged&quot;, () =&gt; {
+    if (previousPresentationMode === media.webkitPresentationMode)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><ins>+    previousPresentationMode = media.webkitPresentationMode;
+
</ins><span class="cx">     debug(&quot;&quot;);
</span><span class="cx">     debug(`Media received a webkitpresentationmodechanged event, media.webkitPresentationMode = ${media.webkitPresentationMode}.`);
</span><span class="cx"> 
</span><span class="lines">@@ -45,10 +47,9 @@
</span><span class="cx">     case &quot;picture-in-picture&quot;:
</span><span class="cx">         debug(&quot;&quot;);
</span><span class="cx">         debug(&quot;We exit picture-in-picture.&quot;);
</span><del>-        media.webkitSetPresentationMode(&quot;inline&quot;);
</del><ins>+        window.setTimeout(() =&gt; media.webkitSetPresentationMode(&quot;inline&quot;));
</ins><span class="cx">         break;
</span><span class="cx">     case &quot;inline&quot;:
</span><del>-        becameInline = true;
</del><span class="cx">         window.requestAnimationFrame(() =&gt; {
</span><span class="cx">             shouldBeTrue(&quot;shadowRoot.querySelector('.media-controls').classList.contains('inline')&quot;);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerresizehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-resize.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-resize.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-resize.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollerscalefactorhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-scale-factor.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-scale-factor.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-scale-factor.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;meta name=&quot;viewport&quot; content=&quot;width=400&quot;&gt;
</span><span class="cx"> &lt;body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmediacontrollermediacontrollersinglecontainerhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-single-container.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-single-container.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-single-container.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsmutebuttonmutebuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/mute-button/mute-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/mute-button/mute-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/mute-button/mute-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -27,7 +28,7 @@
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue('muteButton.element.style.webkitMaskImage.includes(&quot;macOS/volume@&quot;)');
</span><span class="cx">     shouldBeTrue('mutedButton.element.style.webkitMaskImage.includes(&quot;macOS/volume-mute@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipbuttonpipbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/pip-button/pip-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-button/pip-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/pip-button/pip-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -23,7 +24,7 @@
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue('pipButton.element.style.webkitMaskImage.includes(&quot;macOS/pip-in@&quot;)');
</span><span class="cx">     shouldBeTrue('iOSPiPButton.element.style.webkitMaskImage.includes(&quot;iOS/pip-in@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipplacardpipplacardtextsectionhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/pip-placard/pip-placard-text-section.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-placard/pip-placard-text-section.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/pip-placard/pip-placard-text-section.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -18,7 +19,7 @@
</span><span class="cx"> 
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupportenabledexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled-expected.txt (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled-expected.txt                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+Testing the PipSupport behavior.
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+PASS mediaController.controls.pipButton.enabled is true
+PASS mediaController.controls.pipButton.enabled is false
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupportenabledhtmlfromrev210847trunkLayoutTestsmediamodernmediacontrolspipsupportpipsupportenabledhtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled.html (from rev 210847, trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html) (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled.html                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-enabled.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;script src=&quot;../../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;body&gt;
+&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    
+    video, #host {
+        position: absolute;
+        top: 0;
+        left: 0;
+    }
+
+    video {
+        width: 800px;
+        height: 240px;
+    }
+    
+&lt;/style&gt;
+&lt;video src=&quot;../../../content/test.mp4&quot; controls autoplay&gt;&lt;/video&gt;
+&lt;div id=&quot;host&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+window.jsTestIsAsync = true;
+
+description(&quot;Testing the &lt;code&gt;PipSupport&lt;/code&gt; behavior.&quot;);
+
+const container = document.querySelector(&quot;div#host&quot;);
+const media = document.querySelector(&quot;video&quot;);
+const mediaController = createControls(container, media, null);
+
+media.addEventListener(&quot;loadedmetadata&quot;, () =&gt; {
+    shouldBeTrue(&quot;mediaController.controls.pipButton.enabled&quot;);
+    media.src = &quot;&quot;;
+});
+
+media.addEventListener(&quot;error&quot;, () =&gt; {
+    shouldBeFalse(&quot;mediaController.controls.pipButton.enabled&quot;);
+    debug(&quot;&quot;);
+    container.remove();
+    media.remove();
+    finishJSTest();
+});
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupporttapexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap-expected.txt (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap-expected.txt                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+Testing the PiPSupport behavior when clicking the PiP button.
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+PASS media.webkitPresentationMode is &quot;picture-in-picture&quot;
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipsupportipadpipsupporttaphtmlfromrev210847trunkLayoutTestsmediamodernmediacontrolspipsupportpipsupportclickhtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap.html (from rev 210847, trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html) (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap.html                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/pip-support/ipad/pip-support-tap.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;script src=&quot;../../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;body&gt;
+&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    
+    video, #host {
+        position: absolute;
+        top: 0;
+        left: 0;
+    }
+
+    video {
+        width: 768px;
+        height: 240px;
+    }
+    
+&lt;/style&gt;
+&lt;video src=&quot;../../../content/test.mp4&quot; autoplay controls&gt;&lt;/video&gt;
+&lt;div id=&quot;host&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+window.jsTestIsAsync = true;
+
+description(&quot;Testing the &lt;code&gt;PiPSupport&lt;/code&gt; behavior when clicking the PiP button.&quot;);
+
+const container = document.querySelector(&quot;div#host&quot;);
+const media = document.querySelector(&quot;video&quot;);
+const mediaController = createControls(container, media, null);
+
+scheduler.frameDidFire = function() {
+    if (media.paused)
+        return;
+
+    if (pressOnElement(mediaController.controls.pipButton.element))
+        scheduler.frameDidFire = null;
+};
+
+media.addEventListener(&quot;webkitpresentationmodechanged&quot;, () =&gt; {
+    shouldBeEqualToString(&quot;media.webkitPresentationMode&quot;, &quot;picture-in-picture&quot;);
+    container.remove();
+    media.remove();
+    finishMediaControlsTest();
+});
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipsupportpipsupportclickhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-click.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
</span><span class="cx">     
</span><span class="lines">@@ -36,14 +37,13 @@
</span><span class="cx">     if (media.paused)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    const input = mediaController.controls.pipButton.element;
-    const bounds = input.getBoundingClientRect();
-    const centerX = bounds.left + bounds.width / 2;
-    const centerY = bounds.top + bounds.height / 2;
</del><ins>+    const button = mediaController.controls.pipButton.element;
+    if (button.getBoundingClientRect().width === 0)
+        return;
</ins><span class="cx"> 
</span><del>-    eventSender.mouseMoveTo(centerX, centerY);
-    eventSender.mouseDown();
-    eventSender.mouseUp();
</del><ins>+    media.pause();
+    pressOnElement(button);
+    scheduler.frameDidFire = null;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> media.addEventListener(&quot;webkitpresentationmodechanged&quot;, () =&gt; {
</span><span class="lines">@@ -50,7 +50,7 @@
</span><span class="cx">     shouldBeEqualToString(&quot;media.webkitPresentationMode&quot;, &quot;picture-in-picture&quot;);
</span><span class="cx">     container.remove();
</span><span class="cx">     media.remove();
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolspipsupportpipsupportenabledhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/pip-support/pip-support-enabled.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -15,7 +15,7 @@
</span><span class="cx">     }
</span><span class="cx">     
</span><span class="cx"> &lt;/style&gt;
</span><del>-&lt;video src=&quot;../../content/test.mp4&quot;&gt;&lt;/video&gt;
</del><ins>+&lt;video src=&quot;../../content/test.mp4&quot; controls autoplay&gt;&lt;/video&gt;
</ins><span class="cx"> &lt;div id=&quot;host&quot;&gt;&lt;/div&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -23,8 +23,6 @@
</span><span class="cx"> 
</span><span class="cx"> description(&quot;Testing the &lt;code&gt;PipSupport&lt;/code&gt; behavior.&quot;);
</span><span class="cx"> 
</span><del>-iconService.directoryPath = &quot;../../../../Source/WebCore/Modules/modern-media-controls/images&quot;;
-
</del><span class="cx"> if (window.internals)
</span><span class="cx">     window.internals.settings.setAllowsPictureInPictureMediaPlayback(true);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsplacardsupportipadplacardsupportpipexpectedtxtfromrev210847trunkLayoutTestsmediamodernmediacontrolsplacardsupportplacardsupportairplayexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip-expected.txt (from rev 210847, trunk/LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt) (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip-expected.txt                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+Testing the PlacardSupport behavior when entering picture-in-picture.
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+PASS mediaController.controls.showsPlacard is true
+PASS mediaController.controls.children.includes(mediaController.controls.pipPlacard) is true
+PASS mediaController.controls.showsPlacard is false
+PASS mediaController.controls.children.includes(mediaController.controls.pipPlacard) is false
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsplacardsupportipadplacardsupportpiphtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip.html (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip.html                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/placard-support/ipad/placard-support-pip.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;script src=&quot;../../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;body&gt;
+&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    
+    video, #host {
+        position: absolute;
+        top: 0;
+        left: 0;
+    }
+
+    video {
+        width: 800px;
+        height: 240px;
+    }
+    
+&lt;/style&gt;
+&lt;video src=&quot;../../../content/test.mp4&quot; autoplay controls&gt;&lt;/video&gt;
+&lt;div id=&quot;host&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+window.jsTestIsAsync = true;
+
+description(&quot;Testing the &lt;code&gt;PlacardSupport&lt;/code&gt; behavior when entering picture-in-picture.&quot;);
+
+const container = document.querySelector(&quot;div#host&quot;);
+const media = document.querySelector(&quot;video&quot;);
+const mediaController = createControls(container, media, null);
+
+media.addEventListener(&quot;webkitpresentationmodechanged&quot;, () =&gt; {
+    if (media.webkitPresentationMode == &quot;picture-in-picture&quot;) {
+        shouldBeTrue(&quot;mediaController.controls.showsPlacard&quot;);
+        shouldBeTrue(&quot;mediaController.controls.children.includes(mediaController.controls.pipPlacard)&quot;);
+        media.webkitSetPresentationMode(&quot;inline&quot;);
+    } else {
+        shouldBeFalse(&quot;mediaController.controls.showsPlacard&quot;);
+        shouldBeFalse(&quot;mediaController.controls.children.includes(mediaController.controls.pipPlacard)&quot;);
+        container.remove();
+        media.remove();
+        finishMediaControlsTest();
+    }
+});
+
+scheduler.frameDidFire = function() {
+    if (media.paused)
+        return;
+
+    if (pressOnElement(mediaController.controls.pipButton.element))
+        scheduler.frameDidFire = null;
+};
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsplacardsupportplacardsupportairplayexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/placard-support/placard-support-airplay-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -3,6 +3,8 @@
</span><span class="cx"> On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
</span><span class="cx"> 
</span><span class="cx"> 
</span><ins>+got event false
+got event true
</ins><span class="cx"> PASS mediaController.controls.showsPlacard is true
</span><span class="cx"> PASS mediaController.controls.children.includes(mediaController.controls.airplayPlacard) is true
</span><span class="cx"> PASS successfullyParsed is true
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsplaypausebuttonplaypausebuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/play-pause-button/play-pause-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/play-pause-button/play-pause-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/play-pause-button/play-pause-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -40,7 +41,7 @@
</span><span class="cx">     shouldBeTrue('iOSPauseButton.element.style.webkitMaskImage.includes(&quot;iOS/pause@&quot;)');
</span><span class="cx">     shouldBeTrue('fullscreenPlayButton.element.style.webkitMaskImage.includes(&quot;macOS/play-fullscreen@&quot;)');
</span><span class="cx">     shouldBeTrue('fullscreenPauseButton.element.style.webkitMaskImage.includes(&quot;macOS/pause-fullscreen@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsplaybacksupportplaybacksupportbuttonclickexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click-expected.txt (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click-expected.txt        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -3,16 +3,17 @@
</span><span class="cx"> On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-PASS mediaController.controls.playPauseButton.playing is false
-
-Dispatching click event to the play/pause button
</del><span class="cx"> Media is playing
</span><span class="cx"> PASS mediaController.controls.playPauseButton.playing is true
</span><span class="cx"> 
</span><del>-Dispatching click event to the play/pause button
</del><ins>+Pressing on the play/pause button
</ins><span class="cx"> Media is paused
</span><span class="cx"> PASS mediaController.controls.playPauseButton.playing is false
</span><span class="cx"> 
</span><ins>+Pressing on the play/pause button
+Media is playing
+PASS mediaController.controls.playPauseButton.playing is true
+
</ins><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span><span class="cx"> TEST COMPLETE
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsplaybacksupportplaybacksupportbuttonclickhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/playback-support/playback-support-button-click.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,7 +1,8 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><del>-&lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot;&gt;&lt;/video&gt;
</del><ins>+&lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls autoplay&gt;&lt;/video&gt;
</ins><span class="cx"> &lt;div id=&quot;shadow&quot;&gt;&lt;/div&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -13,33 +14,37 @@
</span><span class="cx"> const media = document.querySelector(&quot;video&quot;);
</span><span class="cx"> const mediaController = createControls(shadowRoot, media, null);
</span><span class="cx"> 
</span><del>-shouldBeFalse(&quot;mediaController.controls.playPauseButton.playing&quot;);
</del><ins>+let numberOfPlayEvents = 0;
+media.addEventListener(&quot;play&quot;, function() {
+    numberOfPlayEvents++;
</ins><span class="cx"> 
</span><del>-media.addEventListener(&quot;play&quot;, function() {
</del><span class="cx">     debug(&quot;Media is playing&quot;);
</span><span class="cx">     shouldBeTrue(&quot;mediaController.controls.playPauseButton.playing&quot;);
</span><span class="cx"> 
</span><del>-    clickPlayPauseButton();
</del><ins>+    if (numberOfPlayEvents === 1)
+        clickPlayPauseButton();
+    else {
+        debug(&quot;&quot;);
+        shadowRoot.host.remove();
+        media.remove();
+        finishJSTest();
+    }
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> media.addEventListener(&quot;pause&quot;, function() {
</span><span class="cx">     debug(&quot;Media is paused&quot;);
</span><span class="cx">     shouldBeFalse(&quot;mediaController.controls.playPauseButton.playing&quot;);
</span><del>-    debug(&quot;&quot;);
-    shadowRoot.host.remove();
-    media.remove();
-    finishJSTest();
</del><ins>+
+    clickPlayPauseButton();
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> function clickPlayPauseButton()
</span><span class="cx"> {
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    debug(&quot;Dispatching click event to the play/pause button&quot;);
-    mediaController.controls.playPauseButton.element.click();
</del><ins>+    debug(&quot;Pressing on the play/pause button&quot;);
+    window.requestAnimationFrame(() =&gt; pressOnElement(mediaController.controls.playPauseButton.element));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-clickPlayPauseButton();
-
</del><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsresourcesmediacontrolsutilsjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/resources/media-controls-utils.js (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/resources/media-controls-utils.js        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/resources/media-controls-utils.js        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -46,4 +46,38 @@
</span><span class="cx">     shouldBeCloseTo(`rgba(${expr}).a`, expectedRGBA.a, 0.001);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+function pressOnElement(element, continuation)
+{
+    if (typeof continuation !== &quot;function&quot;)
+        continuation = new Function;
</ins><span class="cx"> 
</span><ins>+    const bounds = element.getBoundingClientRect();
+    if (bounds.width === 0 || bounds.height === 0)
+        return false;
+
+    const centerX = bounds.left + bounds.width / 2;
+    const centerY = bounds.top + bounds.height / 2;
+
+    // debug(`Trying to press on &amp;lt;${element.localName} class=&quot;${element.className}&quot;&gt; at ${centerX}x${centerY}.`);
+
+    if (&quot;createTouch&quot; in document) {
+        testRunner.runUIScript(`
+            uiController.singleTapAtPoint(${centerX}, ${centerY}, function() {
+                uiController.uiScriptComplete(&quot;Done&quot;);
+            });`, continuation);
+    } else {
+        eventSender.mouseMoveTo(centerX, centerY);
+        eventSender.mouseDown();
+        eventSender.mouseUp();
+        continuation();
+    }
+
+    return true;
+}
+
+function finishMediaControlsTest()
+{
+    if (scheduler)
+        scheduler.frameDidFire = null;
+    finishJSTest();
+}
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsrewindbuttonrewindbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/rewind-button/rewind-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/rewind-button/rewind-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/rewind-button/rewind-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -22,7 +23,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue('rewindButton.element.style.webkitMaskImage.includes(&quot;macOS/rewind@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsschedulernotreentranthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/scheduler/not-reentrant.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scheduler/not-reentrant.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/scheduler/not-reentrant.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;This test checks that calling `scheduleLayout()` during a layout callback delays that callback until the next frame.&quot;);
</span><span class="lines">@@ -23,7 +24,7 @@
</span><span class="cx">     numberOfFrames++;
</span><span class="cx"> 
</span><span class="cx">     if (numberOfFrames === 2)
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> function layout()
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsschedulersinglecallbackwhenregisteredmultipletimeshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/scheduler/single-callback-when-registered-multiple-times.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scheduler/single-callback-when-registered-multiple-times.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/scheduler/single-callback-when-registered-multiple-times.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../../Source/WebCore/Modules/modern-media-controls/controls/scheduler.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="cx"> description(&quot;This test checks that calling `scheduleLayout()` multiple times with the same function yields a single call to that function.&quot;);
</span><span class="lines">@@ -18,7 +19,7 @@
</span><span class="cx"> scheduler.frameDidFire = function()
</span><span class="cx"> {
</span><span class="cx">     shouldBe(&quot;numberOfCalls&quot;, &quot;1&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> scheduler.scheduleLayout(layout);
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsscrubbersupportipadscrubbersupportdragexpectedtxtfromrev210847trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportdragexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag-expected.txt (from rev 210847, trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt) (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag-expected.txt                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+Testing the ScrubberSupport behavior when dragging the scrubber.
+
+On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
+
+
+FAIL media.currentTime should be within 0.01 of 3.0136. Was 0.
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsscrubbersupportipadscrubbersupportdraghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html (0 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html                                (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -0,0 +1,76 @@
</span><ins>+&lt;script src=&quot;../../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;../../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;body&gt;
+&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    
+    video, #host {
+        position: absolute;
+        top: 0;
+        left: 0;
+    }
+
+    video {
+        width: 720px;
+        height: 240px;
+    }
+    
+&lt;/style&gt;
+&lt;video src=&quot;../../../content/test.mp4&quot; autoplay controls&gt;&lt;/video&gt;
+&lt;div id=&quot;host&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+window.jsTestIsAsync = true;
+
+description(&quot;Testing the &lt;code&gt;ScrubberSupport&lt;/code&gt; behavior when dragging the scrubber.&quot;);
+
+const container = document.querySelector(&quot;div#host&quot;);
+const media = document.querySelector(&quot;video&quot;);
+const mediaController = createControls(container, media, null);
+
+let numberOfEvents = 0;
+scheduler.frameDidFire = function() {
+    if (media.paused)
+        return;
+
+    media.pause();
+
+    const input = mediaController.controls.timeControl.scrubber.children[1].element;
+    const bounds = input.getBoundingClientRect();
+
+    if (bounds.width === 0)
+        return;
+
+    media.addEventListener(&quot;timeupdate&quot;, () =&gt; {
+        numberOfEvents++;
+
+        debug(&quot;timeupdate event with media.currentTime = &quot; + media.currentTime);
+    });
+
+    const minX = bounds.left + 7;
+    const dragStartX = minX;
+    const dragEndX = minX + bounds.width / 2;
+    const centerY = bounds.top + bounds.height / 2;
+
+    const point = document.body.appendChild(document.createElement(&quot;div&quot;));
+    point.style.left = minX + &quot;px&quot;;
+    point.style.top = centerY + &quot;px&quot;;
+    point.style.width = &quot;1px&quot;;
+    point.style.height = &quot;1px&quot;;
+    point.style.position = &quot;absolute&quot;;
+    point.style.backgroundColor = &quot;red&quot;;
+
+    debug(`
+        uiController.dragFromPointToPoint(${dragStartX}, ${centerY}, ${dragEndX}, ${centerY}, 0.15, function() {
+            uiController.uiScriptComplete(&quot;Done&quot;);
+        });`);
+    testRunner.runUIScript(`
+        uiController.dragFromPointToPoint(${dragStartX}, ${centerY}, ${dragEndX}, ${centerY}, 0.15, function() {
+            uiController.uiScriptComplete(&quot;Done&quot;);
+        });`);
+
+    scheduler.frameDidFire = null;
+};
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportclickhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
</span><span class="cx">     
</span><span class="lines">@@ -33,6 +34,10 @@
</span><span class="cx">     if (media.paused)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><ins>+    const scrubber = mediaController.controls.timeControl.scrubber.children[1].element;
+    if (scrubber.getBoundingClientRect().width === 0)
+        return;
+
</ins><span class="cx">     media.pause();
</span><span class="cx"> 
</span><span class="cx">     media.addEventListener(&quot;timeupdate&quot;, () =&gt; {
</span><span class="lines">@@ -41,15 +46,9 @@
</span><span class="cx">         media.remove();
</span><span class="cx">         finishJSTest();
</span><span class="cx">     });
</span><del>-
-    const input = mediaController.controls.timeControl.scrubber.children[1].element;
-    const bounds = input.getBoundingClientRect();
-    const centerX = bounds.left + bounds.width / 2;
-    const centerY = bounds.top + bounds.height / 2;
-
-    eventSender.mouseMoveTo(centerX, centerY);
-    eventSender.mouseDown();
-    eventSender.mouseUp();
</del><ins>+    
+    scheduler.frameDidFire = null;
+    pressOnElement(scrubber);
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportdragexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -3,7 +3,7 @@
</span><span class="cx"> On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-PASS media.currentTime is within 0.01 of 3.0136
</del><ins>+PASS media.currentTime is within 0.2 of 3.0136
</ins><span class="cx"> PASS media.currentTime is 0
</span><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsscrubbersupportscrubbersupportdraghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-drag.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -32,15 +32,13 @@
</span><span class="cx">     if (media.paused)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    media.pause();
-
</del><span class="cx">     const input = mediaController.controls.timeControl.scrubber.children[1].element;
</span><span class="cx">     const bounds = input.getBoundingClientRect();
</span><del>-
</del><span class="cx">     if (bounds.width === 0)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    const minX = bounds.left;
</del><ins>+    media.pause();
+
</ins><span class="cx">     const dragStartX = bounds.left + bounds.width / 2;
</span><span class="cx">     const dragEndX = bounds.left;
</span><span class="cx">     const centerY = bounds.top + bounds.height / 2;
</span><span class="lines">@@ -49,7 +47,7 @@
</span><span class="cx">         numberOfEvents++;
</span><span class="cx"> 
</span><span class="cx">         if (numberOfEvents == 1) {
</span><del>-            shouldBeCloseTo(&quot;media.currentTime&quot;, media.duration / 2, 0.01);
</del><ins>+            shouldBeCloseTo(&quot;media.currentTime&quot;, media.duration / 2, 0.2);
</ins><span class="cx">             const delta = dragEndX - dragStartX;
</span><span class="cx">             const iterations = Math.abs(delta);
</span><span class="cx">             for (let i = 1; i &lt;= iterations; ++i)
</span><span class="lines">@@ -62,12 +60,13 @@
</span><span class="cx">             media.remove();
</span><span class="cx">             finishJSTest();
</span><span class="cx">         }
</span><del>-        
</del><ins>+    
</ins><span class="cx">     });
</span><span class="cx"> 
</span><span class="cx">     // Start dragging.
</span><span class="cx">     eventSender.mouseMoveTo(dragStartX, centerY);
</span><span class="cx">     eventSender.mouseDown();
</span><ins>+    scheduler.frameDidFire = null;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsseekbackwardsupportseekbackwardsupporthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/seek-backward-support/seek-backward-support.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/seek-backward-support/seek-backward-support.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/seek-backward-support/seek-backward-support.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsseekforwardsupportseekforwardsupporthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/seek-forward-support/seek-forward-support.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/seek-forward-support/seek-forward-support.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/seek-forward-support/seek-forward-support.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsskipbackbuttonskipbackbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/skip-back-button/skip-back-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/skip-back-button/skip-back-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/skip-back-button/skip-back-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -23,7 +24,7 @@
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue('skipBackButton.element.style.webkitMaskImage.includes(&quot;macOS/interval-skip-back@&quot;)');
</span><span class="cx">     shouldBeTrue('iOSSkipBackButton.element.style.webkitMaskImage.includes(&quot;iOS/interval-skip-back@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsslidersliderfillhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/slider/slider-fill.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/slider/slider-fill.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/slider/slider-fill.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -18,7 +18,7 @@
</span><span class="cx"> scheduler.frameDidFire = function()
</span><span class="cx"> {
</span><span class="cx">     shouldBeEqualToString(&quot;slider.children[0].element.style.width&quot;, &quot;100px&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsslidersliderstyleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/slider/slider-styles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/slider/slider-styles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/slider/slider-styles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -45,7 +45,7 @@
</span><span class="cx">     shouldBeEqualToString(&quot;inputStyle.borderRadius&quot;, &quot;1.5px&quot;);
</span><span class="cx">     shouldBeEqualToString(&quot;inputStyle.margin&quot;, &quot;0px&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsstartsupportstartsupportclicktostartexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start-expected.txt (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start-expected.txt        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -5,7 +5,7 @@
</span><span class="cx"> 
</span><span class="cx"> PASS mediaController.controls.showsStartButton is true
</span><span class="cx"> 
</span><del>-Dispatching click event to the start button
</del><ins>+Pressing on the start button
</ins><span class="cx"> Media is playing
</span><span class="cx"> PASS mediaController.controls.showsStartButton is false
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsstartsupportstartsupportclicktostarthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/start-support/start-support-click-to-start.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,7 +1,8 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><del>-&lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot;&gt;&lt;/video&gt;
</del><ins>+&lt;video src=&quot;../../content/test.mp4&quot; style=&quot;width: 320px; height: 240px;&quot; controls&gt;&lt;/video&gt;
</ins><span class="cx"> &lt;div id=&quot;shadow&quot;&gt;&lt;/div&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -16,8 +17,8 @@
</span><span class="cx"> media.addEventListener(&quot;loadedmetadata&quot;, function() {
</span><span class="cx">     shouldBeTrue(&quot;mediaController.controls.showsStartButton&quot;);
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    debug(&quot;Dispatching click event to the start button&quot;);
-    mediaController.controls.startButton.element.click();
</del><ins>+    debug(&quot;Pressing on the start button&quot;);
+    window.requestAnimationFrame(() =&gt; pressOnElement(mediaController.controls.startButton.element));
</ins><span class="cx"> });
</span><span class="cx"> 
</span><span class="cx"> media.addEventListener(&quot;play&quot;, function() {
</span><span class="lines">@@ -29,7 +30,6 @@
</span><span class="cx">     finishJSTest();
</span><span class="cx"> });
</span><span class="cx"> 
</span><del>-
</del><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsstatuslabelstatuslabelfonthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/status-label/status-label-font.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/status-label/status-label-font.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/status-label/status-label-font.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -17,7 +18,7 @@
</span><span class="cx">     shouldBeEqualToString(&quot;window.getComputedStyle(mediaControls.statusLabel.element).fontFamily&quot;, &quot;-apple-system&quot;);
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsstatuslabelstatuslabeltextselectionhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/status-label/status-label-text-selection.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/status-label/status-label-text-selection.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/status-label/status-label-text-selection.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -18,7 +19,7 @@
</span><span class="cx">     shouldBeEqualToString(&quot;window.getComputedStyle(mediaControls.statusLabel.element).cursor&quot;, &quot;default&quot;);
</span><span class="cx">     mediaControls.element.remove();
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsstatuslabelstatuslabelhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/status-label/status-label.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/status-label/status-label.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/status-label/status-label.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -44,7 +44,7 @@
</span><span class="cx"> 
</span><span class="cx">     statusLabel.element.remove();
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstimelabeltimelabelhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/time-label/time-label.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/time-label/time-label.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/time-label/time-label.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -43,7 +43,7 @@
</span><span class="cx">     shouldBeEqualToString(&quot;timeLabelWithNegativeValue.element.textContent&quot;, &quot;-01:01&quot;);
</span><span class="cx">     shouldBeEqualToString(&quot;timeLabelWithHours.element.textContent&quot;, &quot;01:01:01&quot;);
</span><span class="cx"> 
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstracksbuttontracksbuttonhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-button/tracks-button.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-button/tracks-button.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-button/tracks-button.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -23,7 +24,7 @@
</span><span class="cx"> 
</span><span class="cx">     shouldBeTrue('tracksButton.element.style.webkitMaskImage.includes(&quot;macOS/media-selection@&quot;)');
</span><span class="cx">     shouldBeTrue('fullscreenTracksButton.element.style.webkitMaskImage.includes(&quot;macOS/media-selection-fullscreen@&quot;)');
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackspaneltrackspanelrightxhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-right-x.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-right-x.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-right-x.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script type=&quot;text/javascript&quot;&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -17,7 +18,7 @@
</span><span class="cx">     shouldBeEqualToString(&quot;tracksPanel.element.style.right&quot;, &quot;10px&quot;);
</span><span class="cx"> 
</span><span class="cx">     debug(&quot;&quot;);
</span><del>-    finishJSTest();
</del><ins>+    finishMediaControlsTest();
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackspaneltrackspanelselecttrackwithkeyboardhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-select-track-with-keyboard.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-select-track-with-keyboard.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-panel/tracks-panel-select-track-with-keyboard.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -77,7 +77,7 @@
</span><span class="cx"> 
</span><span class="cx">             debug(&quot;&quot;);
</span><span class="cx">             debug(&quot;Activating the focused track by pressing the Enter key&quot;);
</span><del>-            eventSender.keyDown(&quot;Enter&quot;);
</del><ins>+            window.requestAnimationFrame(() =&gt; eventSender.keyDown(&quot;Enter&quot;));
</ins><span class="cx">         });
</span><span class="cx"> 
</span><span class="cx">         eventSender.keyDown(&quot;ArrowDown&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportclicktrackinpanelhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/CC+Subtitles.mov&quot; style=&quot;width: 640px; height: 360px;&quot; controls autoplay&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowandpopulatepanelhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-and-populate-panel.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-and-populate-panel.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-and-populate-panel.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/CC+Subtitles.mov&quot; style=&quot;width: 640px; height: 360px;&quot; controls autoplay&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowpanelafterdraggingcontrolsexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls-expected.txt (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls-expected.txt        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls-expected.txt        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -3,7 +3,7 @@
</span><span class="cx"> On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-PASS shadowRoot.querySelector('.tracks-panel').style.right is &quot;267px&quot;
</del><ins>+PASS shadowRoot.querySelector('button.tracks').getBoundingClientRect().right === shadowRoot.querySelector('.tracks-panel').getBoundingClientRect().right is true
</ins><span class="cx"> PASS shadowRoot.querySelector('.tracks-panel').style.bottom is &quot;151px&quot;
</span><span class="cx"> 
</span><span class="cx"> PASS successfullyParsed is true
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowpanelafterdraggingcontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/CC+Subtitles.mov&quot; style=&quot;width: 320px; height: 240px;&quot; controls autoplay&gt;&lt;/video&gt;
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx">                 window.requestAnimationFrame(() =&gt; {
</span><span class="cx">                     clickOnButton(&quot;tracks&quot;);
</span><span class="cx">                     window.requestAnimationFrame(() =&gt; {
</span><del>-                        shouldBeEqualToString(&quot;shadowRoot.querySelector('.tracks-panel').style.right&quot;, &quot;267px&quot;);
</del><ins>+                        shouldBeTrue(&quot;shadowRoot.querySelector('button.tracks').getBoundingClientRect().right === shadowRoot.querySelector('.tracks-panel').getBoundingClientRect().right&quot;);
</ins><span class="cx">                         shouldBeEqualToString(&quot;shadowRoot.querySelector('.tracks-panel').style.bottom&quot;, &quot;151px&quot;);
</span><span class="cx"> 
</span><span class="cx">                         debug(&quot;&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolstrackssupporttrackssupportshowpanelfullscreenhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=true ] --&gt;
</del><ins>+&lt;!DOCTYPE html&gt;
</ins><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;video src=&quot;../../content/CC+Subtitles.mov&quot; style=&quot;width: 320px; height: 240px;&quot; controls autoplay&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsvolumeslidervolumeslidervaluehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -63,6 +63,8 @@
</span><span class="cx">     debug(&quot;&quot;);
</span><span class="cx">     debug(&quot;Now we'll drag to the slider thumb from 10px to 30px within the slider's bounds&quot;);
</span><span class="cx">     dragSlider(10, 30);
</span><ins>+    
+    scheduler.frameDidFire = null;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsvolumesupportvolumesupportclickhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-click.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-click.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-click.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -29,7 +29,10 @@
</span><span class="cx"> 
</span><span class="cx"> let numberOfFrames = 0;
</span><span class="cx"> scheduler.frameDidFire = function() {
</span><del>-    if (media.paused)
</del><ins>+    const muteButtonElement = mediaController.controls.muteButton.element;
+    const muteButtonBounds = muteButtonElement.getBoundingClientRect();
+
+    if (media.paused || muteButtonBounds.width === 0)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     numberOfFrames++;
</span><span class="lines">@@ -36,8 +39,6 @@
</span><span class="cx"> 
</span><span class="cx">     if (numberOfFrames == 1) {
</span><span class="cx">         // Controls are now visible, let's hover over the mute button to make the volume control visible.
</span><del>-        const muteButtonElement = mediaController.controls.muteButton.element;
-        const muteButtonBounds = muteButtonElement.getBoundingClientRect();
</del><span class="cx">         eventSender.mouseMoveTo(muteButtonBounds.left + muteButtonBounds.width / 2, muteButtonBounds.top + muteButtonBounds.height / 2);
</span><span class="cx">     } else if (numberOfFrames == 2) {
</span><span class="cx">         // Volume slider is visible, let's click in the middle of it.
</span><span class="lines">@@ -45,6 +46,8 @@
</span><span class="cx">         eventSender.mouseMoveTo(volumeSliderBounds.left + volumeSliderBounds.width / 2, volumeSliderBounds.top + volumeSliderBounds.height / 2);
</span><span class="cx">         eventSender.mouseDown();
</span><span class="cx">         eventSender.mouseUp();
</span><ins>+
+        scheduler.frameDidFire = null;
</ins><span class="cx">     }
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediamodernmediacontrolsvolumesupportvolumesupportdraghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-drag.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-drag.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-drag.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;../resources/media-controls-loader.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span><ins>+&lt;script src=&quot;../resources/media-controls-utils.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
</span><span class="cx">     
</span><span class="lines">@@ -32,7 +33,9 @@
</span><span class="cx"> 
</span><span class="cx"> let numberOfFrames = 0;
</span><span class="cx"> scheduler.frameDidFire = function() {
</span><del>-    if (media.paused)
</del><ins>+    const muteButtonElement = mediaController.controls.muteButton.element;
+    const muteButtonBounds = muteButtonElement.getBoundingClientRect();
+    if (media.paused || muteButtonBounds.width === 0)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     numberOfFrames++;
</span><span class="lines">@@ -39,8 +42,6 @@
</span><span class="cx"> 
</span><span class="cx">     if (numberOfFrames == 1) {
</span><span class="cx">         // Controls are now visible, let's hover over the mute button to make the volume control visible.
</span><del>-        const muteButtonElement = mediaController.controls.muteButton.element;
-        const muteButtonBounds = muteButtonElement.getBoundingClientRect();
</del><span class="cx">         eventSender.mouseMoveTo(muteButtonBounds.left + muteButtonBounds.width / 2, muteButtonBounds.top + muteButtonBounds.height / 2);
</span><span class="cx">     } else if (numberOfFrames == 2) {
</span><span class="cx">         // Volume slider is visible, let's start dragging in the middle of it.
</span><span class="lines">@@ -73,7 +74,7 @@
</span><span class="cx">         shouldBe(&quot;media.volume&quot;, &quot;1&quot;);
</span><span class="cx">         container.remove();
</span><span class="cx">         media.remove();
</span><del>-        finishJSTest();
</del><ins>+        finishMediaControlsTest();
</ins><span class="cx">     }
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmedianodesFromRectshadowContenthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/nodesFromRect-shadowContent.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/nodesFromRect-shadowContent.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/nodesFromRect-shadowContent.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;html&gt;
</del><ins>+&lt;html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;head&gt;
</span><span class="cx">   &lt;title&gt;Document::nodesFromRect shadow content access - bug 80847 &lt;/title&gt;
</span><span class="cx">   &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediaprogresseventsgeneratedcorrectlyhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/progress-events-generated-correctly.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/progress-events-generated-correctly.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/progress-events-generated-correctly.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width&quot;&gt;
</span><span class="cx">     &lt;title&gt;Progress Events Generated Correctly During Loading&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediarequireusergesturetoloadvideohtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/require-user-gesture-to-load-video.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/require-user-gesture-to-load-video.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/require-user-gesture-to-load-video.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script src=&quot;media-controls.js&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatabfocusinsidemediaelementshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/tab-focus-inside-media-elements.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/tab-focus-inside-media-elements.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/tab-focus-inside-media-elements.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html!&gt;
</del><ins>+&lt;!DOCTYPE html!&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;audio controls&gt;&lt;/audio&gt;&lt;video controls&gt;&lt;/video&gt;&lt;br&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatracktrackcuerenderinghorizontalhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/track/track-cue-rendering-horizontal.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/track/track-cue-rendering-horizontal.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/track/track-cue-rendering-horizontal.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatracktrackcuerenderingverticalhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/track/track-cue-rendering-vertical.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/track/track-cue-rendering-vertical.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/track/track-cue-rendering-vertical.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta charset=&quot;utf-8&quot;&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatracktrackcuescuechangehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/track/track-cues-cuechange.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/track/track-cues-cuechange.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/track/track-cues-cuechange.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatracktrackcuesenterexithtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/track/track-cues-enter-exit.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/track/track-cues-enter-exit.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/track/track-cues-enter-exit.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatracktrackinbandduplicatetrackswhensourcechangeshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/track/track-in-band-duplicate-tracks-when-source-changes.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/track/track-in-band-duplicate-tracks-when-source-changes.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/track/track-in-band-duplicate-tracks-when-source-changes.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediatracktrackmanualmodehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/track/track-manual-mode.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/track/track-manual-mode.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/track/track-manual-mode.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsaudiotrackstrackmenuhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-audiotracks-trackmenu.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-audiotracks-trackmenu.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-audiotracks-trackmenu.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Selecting from a list of tracks&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolscaptionstrackmenulocalizedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Testing that the track menu gets localized strings&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolscaptionstrackmenuonlycaptionsdescriptionsandsubtitleshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Selecting from a list of tracks&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolscaptionstrackmenusortedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Testing that the list of tracks is sorted&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolscaptionstrackmenuhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-captions-trackmenu.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-captions-trackmenu.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-captions-trackmenu.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Selecting from a list of tracks&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsdropandrestoretimelinehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-drop-and-restore-timeline.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-drop-and-restore-timeline.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-drop-and-restore-timeline.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Tests that the scrubber is dropped when a video is too narrow and restored when made wider&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsinmediadocumenthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-in-media-document.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-in-media-document.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-in-media-document.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;p&gt;Test that controls don't increase the size of the container (i.e. are
</span><span class="cx"> rendered overlapping with the video canvas).&lt;p&gt;
</span><span class="cx"> &lt;script src=&quot;media-file.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsnodisplaywithtexttrackhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-no-display-with-text-track.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-no-display-with-text-track.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-no-display-with-text-track.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Video controls no display with text track Test&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsrenderinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-rendering.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-rendering.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-rendering.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;script src=&quot;media-file.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;video-paint-test.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsshowonkboraxeventhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-show-on-kb-or-ax-event.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-show-on-kb-or-ax-event.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-show-on-kb-or-ax-event.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body onload=&quot;initialChecksBeforePlay()&quot;&gt;
</span><span class="cx"> &lt;p&gt;
</span><span class="cx">     This tests:&lt;br&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolstogglinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-toggling.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-toggling.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-toggling.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Test rendering of volume slider of video tag&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolstransformedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-transformed.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-transformed.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-transformed.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">   &lt;title&gt;Test controls on transformed video&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsvisibleaudioonlyhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-visible-audio-only.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-visible-audio-only.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-visible-audio-only.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;style&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolsvisibleexitingfullscreenhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-visible-exiting-fullscreen.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-visible-exiting-fullscreen.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-visible-exiting-fullscreen.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Test rendering of video control after exiting fullscreen&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideocontrolszoomedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-controls-zoomed.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-controls-zoomed.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-controls-zoomed.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">   &lt;title&gt;Test controls with zooming&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideodisplaytogglehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-display-toggle.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-display-toggle.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-display-toggle.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideoemptysourcehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-empty-source.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-empty-source.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-empty-source.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideofullscreeenonlycontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-fullscreeen-only-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-fullscreeen-only-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-fullscreeen-only-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;body&gt;
</span><span class="cx">     &lt;p&gt;This tests that when inline-playback is restricted, the video element's &quot;controls&quot; are always shown while inline.&lt;/p&gt;
</span><span class="cx">     &lt;video id=&quot;video&quot; width=&quot;300&quot;&gt;&lt;/video&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideofullscreeenonlyplaybackhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-fullscreeen-only-playback.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-fullscreeen-only-playback.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-fullscreeen-only-playback.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideoinitiallyhiddenvolumeslideruphtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-initially-hidden-volume-slider-up.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-initially-hidden-volume-slider-up.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-initially-hidden-volume-slider-up.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;title&gt;Test that volume slider is rendered up. &lt;/title&gt;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideonoaudiohtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-no-audio.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-no-audio.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-no-audio.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;script src=media-file.js&gt;&lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideoplayaudiorequireusergesturehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-play-audio-require-user-gesture.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-play-audio-require-user-gesture.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-play-audio-require-user-gesture.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Test that video play, pause and enterfullscreen does not work unless a user gesture is involved in playing a video&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideoplayrequireusergesturehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-play-require-user-gesture.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-play-require-user-gesture.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-play-require-user-gesture.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Test that video play, pause and enterfullscreen does not work unless a user gesture is involved in playing a video&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideotrackmenuselectionhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-trackmenu-selection.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-trackmenu-selection.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-trackmenu-selection.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx">     &lt;head&gt;
</span><span class="cx">         &lt;title&gt;Selecting from a list of tracks&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideovolumesliderdraghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-volume-slider-drag.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-volume-slider-drag.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-volume-slider-drag.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Test that dragging the volume slider results in multiple volume change events.&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideovolumesliderhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-volume-slider.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-volume-slider.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-volume-slider.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Test rendering of volume slider of video tag&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavideozoomcontrolshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/video-zoom-controls.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/video-zoom-controls.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/video-zoom-controls.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;style&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsmediavolumebaremptywhenmutedhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/media/volume-bar-empty-when-muted.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/media/volume-bar-empty-when-muted.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/media/volume-bar-empty-when-muted.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx">     &lt;title&gt;Test rendering of volume slider of video tag&lt;/title&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformgtkTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/gtk/TestExpectations (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/TestExpectations        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/platform/gtk/TestExpectations        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -748,6 +748,9 @@
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/158836 imported/w3c/web-platform-tests/encrypted-media [ Skip ]
</span><span class="cx"> 
</span><ins>+# No support for modern media controls on GTK
+media/modern-media-controls [ Skip ]
+
</ins><span class="cx"> #////////////////////////////////////////////////////////////////////////////////////////
</span><span class="cx"> # End of Expected failures
</span><span class="cx"> #////////////////////////////////////////////////////////////////////////////////////////
</span><span class="lines">@@ -2666,10 +2669,6 @@
</span><span class="cx"> webkit.org/b/163383 accessibility/roles-computedRoleString.html [ Failure ]
</span><span class="cx"> webkit.org/b/163383 accessibility/roles-exposed.html [ Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/163518 media/modern-media-controls/airplay-button/airplay-button-on.html [ Failure ]
-webkit.org/b/163519 media/modern-media-controls/icon-button/icon-button-active-state.html [ Failure ]
-webkit.org/b/163520 media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-controls-bar-styles.html [ Failure ]
-
</del><span class="cx"> webkit.org/b/163512 media/media-controls-accessibility.html [ Failure ]
</span><span class="cx"> webkit.org/b/163521 media/tab-focus-inside-media-elements.html [ Failure ]
</span><span class="cx"> webkit.org/b/163523 media/track/track-manual-mode.html [ Failure ]
</span><span class="lines">@@ -2688,8 +2687,6 @@
</span><span class="cx"> webkit.org/b/163823 media/video-defaultmuted.html [ Failure ]
</span><span class="cx"> webkit.org/b/163823 media/video-volume-slider.html [ Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/163825 media/modern-media-controls/media-controller/media-controller-resize.html [ Failure ]
-
</del><span class="cx"> webkit.org/b/163826 storage/domstorage/events/basic-body-attribute.html [ Failure ]
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/163827 storage/websql/quota-tracking.html [ Failure ]
</span></span></pre></div>
<a id="trunkLayoutTestsplatformiossimulatorTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-simulator/TestExpectations        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/platform/ios-simulator/TestExpectations        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -2769,6 +2769,60 @@
</span><span class="cx"> 
</span><span class="cx"> fast/css/deferred-parsing/hover-test.html [ Skip ]
</span><span class="cx"> 
</span><ins>+# iOS-specific test
+media/modern-media-controls/media-controller/media-controller-scale-factor.html [ Pass ]
+
+# The tracks menu is never used in media controls on iOS
+media/modern-media-controls/tracks-panel [ Skip ]
+media/modern-media-controls/tracks-support [ Skip ]
+
+# There is no mute button or volume scrubber on iOS
+media/modern-media-controls/mute-button [ Skip ]
+media/modern-media-controls/mute-support [ Skip ]
+media/modern-media-controls/volume-slider [ Skip ]
+media/modern-media-controls/volume-support [ Skip ]
+
+# Fullscreen is handled natively on iOS, so no need to test fullscreen or controls only shown in fullscreen
+media/modern-media-controls/macos-fullscreen-media-controls [ Skip ]
+media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-fullscreen-change.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-inline.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html [ Skip ]
+media/modern-media-controls/seek-backward-support [ Skip ]
+media/modern-media-controls/seek-forward-support [ Skip ]
+media/modern-media-controls/start-support/start-support-fullscreen.html [ Skip ]
+
+# These tests are mouse-specific
+media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar.html [ Skip ]
+media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html [ Skip ]
+media/modern-media-controls/scrubber-support/scrubber-support-click.html [ Skip ]
+
+# Tests designed for macOS that have iOS equivalents in &quot;ipad&quot; directories
+media/modern-media-controls/fullscreen-support/fullscreen-support-click.html [ Skip ]
+media/modern-media-controls/pip-support/pip-support-click.html [ Skip ]
+media/modern-media-controls/pip-support/pip-support-enabled.html [ Skip ]
+media/modern-media-controls/placard-support/placard-support-pip.html [ Skip ]
+media/modern-media-controls/scrubber-support/scrubber-support-drag.html [ Skip ]
+media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html [ Skip ]
+
+# These tests use uiController and need to be skipped in open-source
+media/modern-media-controls/placard-support/ipad/placard-support-pip.html [ Skip ]
+media/modern-media-controls/icon-button/icon-button-active-state.html [ Skip ]
+media/modern-media-controls/pip-support/ipad/pip-support-tap.html [ Skip ]
+media/modern-media-controls/playback-support/playback-support-button-click.html [ Skip ]
+media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html [ Skip ]
+media/modern-media-controls/start-support/start-support-click-to-start.html [ Skip ]
+media/modern-media-controls/button/button.html [ Skip ]
+
+# AirPlay cannot be tested on iOS
+webkit.org/b/166062 media/modern-media-controls/airplay-placard/airplay-placard-text-section.html [ Skip ]
+webkit.org/b/166062 media/modern-media-controls/airplay-support/airplay-support.html [ Skip ]
+webkit.org/b/166062 media/modern-media-controls/placard-support/placard-support-airplay.html [ Skip ]
+webkit.org/b/166062 media/modern-media-controls/audio/audio-controls-buttons.html [ Skip ]
+
</ins><span class="cx"> # New Encrypted Media API not enabled on iOS
</span><span class="cx"> media/encrypted-media/mock-navigator-requestMediaKeySystemAccess.html [ Skip ]
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsplatformiossimulatormediavideoplayglyphcompositedoutsideoverflowscrollingtouchcontainerhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios-simulator/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-simulator/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/platform/ios-simulator/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;!DOCTYPE html&gt;
</del><ins>+&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ enableModernMediaControls=false ] --&gt;
</ins><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width&quot; /&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/TestExpectations (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/TestExpectations        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/platform/mac/TestExpectations        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1461,6 +1461,32 @@
</span><span class="cx"> webkit.org/b/165530 compositing/layer-creation/fixed-position-out-of-view-scaled.html [ Failure ]
</span><span class="cx"> webkit.org/b/165530 compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html [ Failure ]
</span><span class="cx"> 
</span><ins>+# picture-in-picture is not supported prior to Sierra.
+[ ElCapitan Yosemite ] media/modern-media-controls/pip-support [ Skip ]
+[ ElCapitan Yosemite ] media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html [ Skip ]
+[ ElCapitan Yosemite ] media/modern-media-controls/placard-support/placard-support-pip.html [ Skip ]
+
+# internals.setMockMediaPlaybackTargetPickerState() is not available on Yosemite
+[ Yosemite ] media/modern-media-controls/airplay-support/airplay-support.html [ Skip ]
+[ Yosemite ] media/modern-media-controls/placard-support/placard-support-airplay.html [ Skip ]
+
+# internals.setMockMediaPlaybackTargetPickerEnabled() is not available on Yosemite
+[ Yosemite ] media/modern-media-controls/audio/audio-controls-buttons.html [ Skip ]
+
+# iPad-specific tests
+media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html [ Skip ]
+media/modern-media-controls/pip-support/ipad/pip-support-enabled.html [ Skip ]
+media/modern-media-controls/pip-support/ipad/pip-support-tap.html [ Skip ]
+media/modern-media-controls/placard-support/ipad/placard-support-pip.html [ Skip ]
+media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html [ Skip ]
+
+# These sometimes work but more often than not don't
+webkit.org/b/164323 media/modern-media-controls/airplay-support/airplay-support.html [ Pass Failure ]
+webkit.org/b/164298 media/modern-media-controls/placard-support/placard-support-airplay.html [ Pass Failure ]
+
+# This one always times out on the bots, cannot reproduce locally.
+webkit.org/b/165234 media/modern-media-controls/audio/audio-controls-buttons.html [ Pass Timeout ]
+
</ins><span class="cx"> webkit.org/b/165874 [ Debug ] streams/pipe-to.html [ Pass Failure ]
</span><span class="cx"> 
</span><span class="cx"> # New Encrypted Media API not enabled on Mac
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacwk1TestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-wk1/TestExpectations        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -291,3 +291,10 @@
</span><span class="cx"> webkit.org/b/165541 compositing/rtl/rtl-fixed-overflow.html [ Failure ]
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/165589 pointer-lock/lock-lost-on-esc-in-fullscreen.html [ Skip ]
</span><ins>+
+# webkit.org/b/163585
+media/track/track-cues-cuechange.html [ Pass Crash ]
+media/track/track-cue-rendering-horizontal.html [ Pass Crash ]
+media/accessibility-closed-captions-has-aria-owns.html [ Pass Crash ]
+media/track/track-cues-enter-exit.html [ Pass Crash ]
+media/modern-media-controls/tracks-support/tracks-support-click-track-in-panel.html [ Pass Timeout ]
</ins></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Source/WebCore/ChangeLog        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,23 @@
</span><ins>+2017-01-18  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        [Modern Media Controls] Turn modern media controls on by default
+        https://bugs.webkit.org/show_bug.cgi?id=165668
+
+        Reviewed by Dean Jackson.
+
+        Tests: media/modern-media-controls/fullscreen-support/ipad/fullscreen-support-tap.html
+               media/modern-media-controls/pip-support/ipad/pip-support-enabled.html
+               media/modern-media-controls/pip-support/ipad/pip-support-tap.html
+               media/modern-media-controls/placard-support/ipad/placard-support-pip.html
+               media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html
+
+        Fix an error which may be triggered prior to Sierra where we would assume the presentation
+        mode API was avaiable when it might not be, which caused a few tests to fail.
+
+        * Modules/modern-media-controls/media/pip-support.js:
+        (PiPSupport.prototype.syncControl):
+        (PiPSupport):
+
</ins><span class="cx"> 2017-01-18  Miguel Gomez  &lt;magomez@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [GTK] [TextureMapper] [GLES2] Draw repeated patterns for NPOT textures manually
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmodernmediacontrolsmediapipsupportjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/modern-media-controls/media/pip-support.js (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/modern-media-controls/media/pip-support.js        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Source/WebCore/Modules/modern-media-controls/media/pip-support.js        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -50,7 +50,10 @@
</span><span class="cx">     syncControl()
</span><span class="cx">     {
</span><span class="cx">         const media = this.mediaController.media;
</span><del>-        this.control.enabled = media instanceof HTMLVideoElement &amp;&amp; media.webkitSupportsPresentationMode &amp;&amp; media.webkitSupportsPresentationMode(PiPMode) &amp;&amp; !media.webkitCurrentPlaybackTargetIsWireless;
</del><ins>+        if (media.webkitSupportsPresentationMode)
+            this.control.enabled = media instanceof HTMLVideoElement &amp;&amp; media.webkitSupportsPresentationMode(PiPMode) &amp;&amp; !media.webkitCurrentPlaybackTargetIsWireless;
+        else
+            this.control.enabled = false;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/ChangeLog        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Source/WebKit/mac/ChangeLog        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2017-01-18  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        [Modern Media Controls] Turn modern media controls on by default
+        https://bugs.webkit.org/show_bug.cgi?id=165668
+
+        Reviewed by Dean Jackson.
+
+        Enabled modern media controls by default in WK1. 
+
+        * WebView/WebPreferences.mm:
+        (+[WebPreferences initialize]):
+
</ins><span class="cx"> 2017-01-15  Darin Adler  &lt;darin@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Remove PassRefPtr from &quot;loader&quot; directory of WebCore
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebPreferencesmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebPreferences.mm (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebPreferences.mm        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Source/WebKit/mac/WebView/WebPreferences.mm        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -613,6 +613,7 @@
</span><span class="cx"> #endif
</span><span class="cx">         [NSNumber numberWithBool:YES], WebKitShadowDOMEnabledPreferenceKey,
</span><span class="cx">         [NSNumber numberWithBool:YES], WebKitCustomElementsEnabledPreferenceKey,
</span><ins>+        [NSNumber numberWithBool:YES], WebKitModernMediaControlsEnabledPreferenceKey,
</ins><span class="cx"> #if ENABLE(WEBGL2)
</span><span class="cx">         [NSNumber numberWithBool:NO], WebKitWebGL2EnabledPreferenceKey,
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Source/WebKit2/ChangeLog        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,14 @@
</span><ins>+2017-01-18  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        [Modern Media Controls] Turn modern media controls on by default
+        https://bugs.webkit.org/show_bug.cgi?id=165668
+
+        Reviewed by Dean Jackson.
+
+        Use DEFAULT_EXPERIMENTAL_FEATURES_ENABLED as the default value for modern media controls, which is true.
+
+        * Shared/WebPreferencesDefinitions.h:
+
</ins><span class="cx"> 2017-01-15  Darin Adler  &lt;darin@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Remove PassRefPtr from &quot;loader&quot; directory of WebCore
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedWebPreferencesDefinitionsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -316,7 +316,7 @@
</span><span class="cx">     macro(CSSGridLayoutEnabled, cssGridLayoutEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;CSS Grid&quot;, &quot;CSS Grid Layout Module support&quot;) \
</span><span class="cx">     macro(SpringTimingFunctionEnabled, springTimingFunctionEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;CSS Spring Animations&quot;, &quot;CSS Spring Animation prototype&quot;) \
</span><span class="cx">     macro(GamepadsEnabled, gamepadsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Gamepads&quot;, &quot;Web Gamepad API support&quot;) \
</span><del>-    macro(ModernMediaControlsEnabled, modernMediaControlsEnabled, Bool, bool, false, &quot;Modern Media Controls&quot;, &quot;Use modern media controls look&quot;) \
</del><ins>+    macro(ModernMediaControlsEnabled, modernMediaControlsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Modern Media Controls&quot;, &quot;Use modern media controls look&quot;) \
</ins><span class="cx">     macro(InputEventsEnabled, inputEventsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Input Events&quot;, &quot;Enable InputEvents support&quot;) \
</span><span class="cx">     macro(SubtleCryptoEnabled, subtleCryptoEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;SubtleCrypto&quot;, &quot;Enable SubtleCrypto support&quot;) \
</span><span class="cx">     macro(WebGL2Enabled, webGL2Enabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;WebGL 2.0&quot;, &quot;WebGL 2 prototype&quot;) \
</span></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Tools/ChangeLog        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2017-01-18  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        [Modern Media Controls] Turn modern media controls on by default
+        https://bugs.webkit.org/show_bug.cgi?id=165668
+
+        Reviewed by Dean Jackson.
+
+        Enabled modern media controls by default in test runners. 
+
+        * DumpRenderTree/TestOptions.h:
+        * WebKitTestRunner/TestOptions.h:
+
</ins><span class="cx"> 2017-01-17  Michael Catanzaro  &lt;mcatanzaro@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r210834
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreeTestOptionsh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/TestOptions.h (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/TestOptions.h        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Tools/DumpRenderTree/TestOptions.h        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx"> 
</span><span class="cx"> struct TestOptions {
</span><span class="cx">     bool enableIntersectionObserver { false };
</span><del>-    bool enableModernMediaControls { false };
</del><ins>+    bool enableModernMediaControls { true };
</ins><span class="cx">     bool enablePointerLock { false };
</span><span class="cx"> 
</span><span class="cx">     TestOptions(NSURL*, const TestCommand&amp;);
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerTestOptionsh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/TestOptions.h (210847 => 210848)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/TestOptions.h        2017-01-18 08:50:16 UTC (rev 210847)
+++ trunk/Tools/WebKitTestRunner/TestOptions.h        2017-01-18 09:05:37 UTC (rev 210848)
</span><span class="lines">@@ -44,7 +44,7 @@
</span><span class="cx">     bool ignoresViewportScaleLimits { false };
</span><span class="cx">     bool useCharacterSelectionGranularity { false };
</span><span class="cx">     bool enableIntersectionObserver { false };
</span><del>-    bool enableModernMediaControls { false };
</del><ins>+    bool enableModernMediaControls { true };
</ins><span class="cx">     bool enablePointerLock { false };
</span><span class="cx"> 
</span><span class="cx">     float deviceScaleFactor { 1 };
</span></span></pre>
</div>
</div>

</body>
</html>