Title: [219412] trunk
- Revision
- 219412
- Author
- commit-qu...@webkit.org
- Date
- 2017-07-12 11:19:28 -0700 (Wed, 12 Jul 2017)
Log Message
Playback controls should not hide while AirPlay is active
https://bugs.webkit.org/show_bug.cgi?id=174422
<rdar://problem/33011477>
Patch by Antoine Quint <grao...@apple.com> on 2017-07-12
Reviewed by Eric Carlson.
Source/WebCore:
We now also track changes in AirPlay playback status and account for it when identifying whether we
ought to let media controls automatically hide, which should only happen if the media is playing and
not playing back through AirPlay.
* Modules/modern-media-controls/media/controls-visibility-support.js:
(ControlsVisibilitySupport.prototype.get mediaEvents):
(ControlsVisibilitySupport.prototype._updateControls):
(ControlsVisibilitySupport):
LayoutTests:
Expand the existing AirPlaySupport test to check that when we enter AirPlay we correctly prevent
the media controls from automatically hiding.
* media/modern-media-controls/airplay-support/airplay-support-expected.txt:
* media/modern-media-controls/airplay-support/airplay-support.html:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (219411 => 219412)
--- trunk/LayoutTests/ChangeLog 2017-07-12 18:07:14 UTC (rev 219411)
+++ trunk/LayoutTests/ChangeLog 2017-07-12 18:19:28 UTC (rev 219412)
@@ -1,3 +1,17 @@
+2017-07-12 Antoine Quint <grao...@apple.com>
+
+ Playback controls should not hide while AirPlay is active
+ https://bugs.webkit.org/show_bug.cgi?id=174422
+ <rdar://problem/33011477>
+
+ Reviewed by Eric Carlson.
+
+ Expand the existing AirPlaySupport test to check that when we enter AirPlay we correctly prevent
+ the media controls from automatically hiding.
+
+ * media/modern-media-controls/airplay-support/airplay-support-expected.txt:
+ * media/modern-media-controls/airplay-support/airplay-support.html:
+
2017-07-12 Nan Wang <n_w...@apple.com>
AX: [iOS] Implement a way to retrieve a text marker range with desired text that is closest to a position
Modified: trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support-expected.txt (219411 => 219412)
--- trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support-expected.txt 2017-07-12 18:07:14 UTC (rev 219411)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support-expected.txt 2017-07-12 18:19:28 UTC (rev 219412)
@@ -7,11 +7,13 @@
PASS mediaController.controls.airplayButton.enabled is true
PASS mediaController.controls.airplayButton.on is false
PASS mediaController.controls.muteButton.enabled is true
+PASS mediaController.controls.autoHideController.fadesWhileIdle is true
Entering AirPlay playback mode.
PASS mediaController.controls.airplayButton.enabled is true
PASS mediaController.controls.airplayButton.on is true
PASS mediaController.controls.muteButton.enabled is false
+PASS mediaController.controls.autoHideController.fadesWhileIdle is false
PASS successfullyParsed is true
Modified: trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support.html (219411 => 219412)
--- trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support.html 2017-07-12 18:07:14 UTC (rev 219411)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support.html 2017-07-12 18:19:28 UTC (rev 219412)
@@ -1,7 +1,7 @@
<script src=""
<script src="" type="text/_javascript_"></script>
<body>
-<video src="" style="width: 320px; height: 240px;"></video>
+<video src="" style="width: 320px; height: 240px;" autoplay></video>
<div id="host"></div>
<script type="text/_javascript_">
@@ -43,6 +43,7 @@
shouldBeTrue("mediaController.controls.airplayButton.enabled");
shouldBeFalse("mediaController.controls.airplayButton.on");
shouldBeTrue("mediaController.controls.muteButton.enabled");
+ shouldBeTrue("mediaController.controls.autoHideController.fadesWhileIdle");
enterAirPlay();
}
@@ -64,7 +65,8 @@
shouldBeTrue("mediaController.controls.airplayButton.enabled");
shouldBeTrue("mediaController.controls.airplayButton.on");
shouldBeFalse("mediaController.controls.muteButton.enabled");
-
+ shouldBeFalse("mediaController.controls.autoHideController.fadesWhileIdle");
+
debug("");
container.remove();
media.remove();
Modified: trunk/Source/WebCore/ChangeLog (219411 => 219412)
--- trunk/Source/WebCore/ChangeLog 2017-07-12 18:07:14 UTC (rev 219411)
+++ trunk/Source/WebCore/ChangeLog 2017-07-12 18:19:28 UTC (rev 219412)
@@ -1,3 +1,20 @@
+2017-07-12 Antoine Quint <grao...@apple.com>
+
+ Playback controls should not hide while AirPlay is active
+ https://bugs.webkit.org/show_bug.cgi?id=174422
+ <rdar://problem/33011477>
+
+ Reviewed by Eric Carlson.
+
+ We now also track changes in AirPlay playback status and account for it when identifying whether we
+ ought to let media controls automatically hide, which should only happen if the media is playing and
+ not playing back through AirPlay.
+
+ * Modules/modern-media-controls/media/controls-visibility-support.js:
+ (ControlsVisibilitySupport.prototype.get mediaEvents):
+ (ControlsVisibilitySupport.prototype._updateControls):
+ (ControlsVisibilitySupport):
+
2017-07-12 Daniel Bates <daba...@apple.com>
Attempt to fix the build following <https://trac.webkit.org/changeset/219407>
Modified: trunk/Source/WebCore/Modules/modern-media-controls/media/controls-visibility-support.js (219411 => 219412)
--- trunk/Source/WebCore/Modules/modern-media-controls/media/controls-visibility-support.js 2017-07-12 18:07:14 UTC (rev 219411)
+++ trunk/Source/WebCore/Modules/modern-media-controls/media/controls-visibility-support.js 2017-07-12 18:19:28 UTC (rev 219412)
@@ -45,7 +45,7 @@
get mediaEvents()
{
- return ["loadedmetadata", "play", "pause", "webkitfullscreenchange"];
+ return ["loadedmetadata", "play", "pause", "webkitfullscreenchange", "webkitcurrentplaybacktargetiswirelesschanged"];
}
get tracksToMonitor()
@@ -69,7 +69,7 @@
const controls = this.mediaController.controls;
controls.visible = shouldShowControls;
- controls.autoHideController.fadesWhileIdle = isVideo ? !media.paused : false;
+ controls.autoHideController.fadesWhileIdle = isVideo ? !media.paused && !media.webkitCurrentPlaybackTargetIsWireless : false;
}
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes