Changeset 211802 in webkit
- Timestamp:
- Feb 7, 2017 2:53:54 AM (7 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r211779 r211802 1 2017-02-07 Antoine Quint <graouts@apple.com> 2 3 [Modern Media Controls] Improve handling of <video> with only audio tracks 4 https://bugs.webkit.org/show_bug.cgi?id=167836 5 <rdar://problem/30255812> 6 7 Reviewed by Dean Jackson. 8 9 Add a new test to check that a <video> with a resource that only has audio tracks 10 does not auto-hide nor show the fullscreen button. We also rebaseline a few existing 11 tests for this change of behavior. 12 13 * fast/regions/inline-block-inside-anonymous-overflow-with-covered-controls-expected.html: 14 * fast/regions/inline-block-inside-anonymous-overflow-with-covered-controls.html: 15 * media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-on-expected.txt: 16 * media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-on.html: 17 * media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-toggle-expected.txt: 18 * media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-toggle.html: 19 * media/modern-media-controls/media-controller/media-controller-video-with-only-audio-expected.txt: Added. 20 * media/modern-media-controls/media-controller/media-controller-video-with-only-audio.html: Added. 21 * media/modern-media-controls/time-label/time-label-white-space-nowrap.html: 22 1 23 2017-02-07 Romain Bellessort <romain.bellessort@crf.canon.fr> 2 24 -
trunk/LayoutTests/fast/regions/inline-block-inside-anonymous-overflow-with-covered-controls-expected.html
r211729 r211802 1 <!DOCTYPE html> 1 <!DOCTYPE html><!-- webkit-test-runner [ enableModernMediaControls=false ] --> 2 2 <html> 3 3 <head> … … 45 45 <div class="region" id="region1"> 46 46 <div class="article" id="article1"> 47 <video id="video" controls></video><span style="color:#00FF00">47 <video id="video" src="../../media/content/test.mp4" controls></video><span style="color:#00FF00"> 48 48 </div> 49 49 </div> -
trunk/LayoutTests/fast/regions/inline-block-inside-anonymous-overflow-with-covered-controls.html
r211729 r211802 1 <!DOCTYPE html> 1 <!DOCTYPE html><!-- webkit-test-runner [ enableModernMediaControls=false ] --> 2 2 <html> 3 3 <head> … … 45 45 <div class="region" id="region2"></div> 46 46 <div id="article"> 47 <video id="video" controls></video><span style="color:#00FF00">This text, together with the video element, are inside an anonymouse block</span>47 <video id="video" src="../../media/content/test.mp4" controls></video><span style="color:#00FF00">This text, together with the video element, are inside an anonymouse block</span> 48 48 <div id="after" style="color:blue">This div is after the anonymous block</div> 49 49 </div> -
trunk/LayoutTests/media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-on-expected.txt
r211729 r211802 4 4 5 5 6 Media has not begun loading yet7 PASS mediaController.controls.controlsBar.visible is false8 PASS mediaController.controls.startButton.visible is false9 6 10 7 Media has loaded metadata 8 PASS media.videoTracks.length is 1 11 9 PASS mediaController.controls.controlsBar.visible is true 12 10 PASS mediaController.controls.startButton.visible is true -
trunk/LayoutTests/media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-on.html
r211729 r211802 14 14 const mediaController = createControls(shadowRoot, media, null); 15 15 16 debug("Media has not begun loading yet");17 shouldBeFalse("mediaController.controls.controlsBar.visible");18 shouldBeFalse("mediaController.controls.startButton.visible");19 20 16 media.addEventListener("loadedmetadata", function() { 21 17 debug(""); 22 18 debug("Media has loaded metadata"); 19 shouldBe("media.videoTracks.length", "1"); 23 20 shouldBeTrue("mediaController.controls.controlsBar.visible"); 24 21 shouldBeTrue("mediaController.controls.startButton.visible"); -
trunk/LayoutTests/media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-toggle-expected.txt
r211729 r211802 4 4 5 5 6 Media has not begun loading yet7 PASS mediaController.controls.controlsBar.visible is false8 PASS mediaController.controls.startButton.visible is false9 6 10 7 Media has loaded metadata 8 PASS media.videoTracks.length is 1 11 9 PASS mediaController.controls.controlsBar.visible is true 12 10 PASS mediaController.controls.startButton.visible is true -
trunk/LayoutTests/media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-toggle.html
r211729 r211802 36 36 }).observe(media, { attributes: true, attributeFilter: ["controls"] }); 37 37 38 debug("Media has not begun loading yet");39 shouldBeFalse("mediaController.controls.controlsBar.visible");40 shouldBeFalse("mediaController.controls.startButton.visible");41 42 38 media.addEventListener("loadedmetadata", function() { 43 39 debug(""); 44 40 debug("Media has loaded metadata"); 41 shouldBe("media.videoTracks.length", "1"); 45 42 shouldBeTrue("mediaController.controls.controlsBar.visible"); 46 43 shouldBeTrue("mediaController.controls.startButton.visible"); -
trunk/LayoutTests/media/modern-media-controls/time-label/time-label-white-space-nowrap.html
r211729 r211802 15 15 media.pause(); 16 16 17 timeLabel = window.internals.shadowRoot(media).querySelector(".time-label"); 18 shouldBeEqualToString("timeLabel.ownerDocument.defaultView.getComputedStyle(timeLabel).whiteSpace", "nowrap"); 17 window.requestAnimationFrame(() => { 18 timeLabel = window.internals.shadowRoot(media).querySelector(".time-label"); 19 shouldBeEqualToString("timeLabel.ownerDocument.defaultView.getComputedStyle(timeLabel).whiteSpace", "nowrap"); 19 20 20 debug(""); 21 media.remove(); 22 finishJSTest(); 21 debug(""); 22 media.remove(); 23 finishJSTest(); 24 }); 23 25 }); 24 26 -
trunk/Source/WebCore/ChangeLog
r211779 r211802 1 2017-02-07 Antoine Quint <graouts@apple.com> 2 3 [Modern Media Controls] Improve handling of <video> with only audio tracks 4 https://bugs.webkit.org/show_bug.cgi?id=167836 5 <rdar://problem/30255812> 6 7 Reviewed by Dean Jackson. 8 9 We now check for the availability of video tracks before considering a <video> 10 element is displaying an actual video file and turning auto-hide on. We also 11 check that we have video tracks before enabling the fullscreen button. This 12 brings the behavior of a <video> pointing to a resource with no video tracks 13 to be the same as an <audio> element. 14 15 Test: media/modern-media-controls/media-controller/media-controller-video-with-only-audio.html 16 17 * Modules/modern-media-controls/media/controls-visibility-support.js: 18 (ControlsVisibilitySupport.prototype.get tracksToMonitor): 19 (ControlsVisibilitySupport.prototype._updateControls): 20 (ControlsVisibilitySupport): 21 * Modules/modern-media-controls/media/fullscreen-support.js: 22 (FullscreenSupport.prototype.syncControl): 23 (FullscreenSupport): 24 1 25 2017-02-07 Romain Bellessort <romain.bellessort@crf.canon.fr> 2 26 -
trunk/Source/WebCore/Modules/modern-media-controls/media/controls-visibility-support.js
r211729 r211802 49 49 } 50 50 51 get tracksToMonitor() 52 { 53 return [this.mediaController.media.videoTracks]; 54 } 55 51 56 handleEvent() 52 57 { … … 59 64 { 60 65 const media = this.mediaController.media; 61 const isVideo = media instanceof HTMLVideoElement ;66 const isVideo = media instanceof HTMLVideoElement && media.videoTracks.length > 0; 62 67 let shouldShowControls = this.mediaController.media.controls; 63 68 if (isVideo) -
trunk/Source/WebCore/Modules/modern-media-controls/media/fullscreen-support.js
r211729 r211802 70 70 const control = this.control; 71 71 const media = this.mediaController.media; 72 control.enabled = media.webkitSupportsFullscreen ;72 control.enabled = media.webkitSupportsFullscreen && media.videoTracks.length > 0; 73 73 control.isFullScreen = media.webkitDisplayingFullscreen; 74 74 }
Note: See TracChangeset
for help on using the changeset viewer.