- Revision
- 209187
- Author
- grao...@webkit.org
- Date
- 2016-12-01 10:41:08 -0800 (Thu, 01 Dec 2016)
Log Message
[Modern Media Controls] Promote the "on" property from AirPlayButton to IconButton
https://bugs.webkit.org/show_bug.cgi?id=165260
Reviewed by NOBODY (OOPS!).
With the fix for https://bugs.webkit.org/show_bug.cgi?id=165239 we now set the "on"
property for the TracksButton as well, so it makes sense to provide that property
for all IconButton subclasses, not just AirplayButton.
Test: media/modern-media-controls/icon-button/icon-button-on.html
* Modules/modern-media-controls/controls/airplay-button.css:
(button.airplay.on):
* Modules/modern-media-controls/controls/airplay-button.js:
(AirplayButton):
(AirplayButton.prototype.get on): Deleted.
(AirplayButton.prototype.set on): Deleted.
* Modules/modern-media-controls/controls/icon-button.css:
(button.icon:active,):
(button.icon:active): Deleted.
* Modules/modern-media-controls/controls/icon-button.js:
(IconButton.prototype.get on):
(IconButton.prototype.set on):
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (209186 => 209187)
--- trunk/LayoutTests/ChangeLog 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/LayoutTests/ChangeLog 2016-12-01 18:41:08 UTC (rev 209187)
@@ -1,5 +1,18 @@
2016-12-01 Antoine Quint <grao...@apple.com>
+ [Modern Media Controls] Promote the "on" property from AirPlayButton to IconButton
+ https://bugs.webkit.org/show_bug.cgi?id=165260
+
+ Reviewed by Dean Jackson.
+
+ New test for the "on" property on IconButton.
+
+ * media/modern-media-controls/airplay-button/airplay-button-on.html:
+ * media/modern-media-controls/icon-button/icon-button-on-expected.txt: Added.
+ * media/modern-media-controls/icon-button/icon-button-on.html: Added.
+
+2016-12-01 Antoine Quint <grao...@apple.com>
+
[Modern Media Controls] Fix media/modern-media-controls/status-label/status-label.html
https://bugs.webkit.org/show_bug.cgi?id=165259
Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html (209186 => 209187)
--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html 2016-12-01 18:41:08 UTC (rev 209187)
@@ -1,14 +1,5 @@
-<link rel="stylesheet" href="" type="text/css" media="screen">
-<link rel="stylesheet" href="" type="text/css" media="screen">
-<link rel="stylesheet" href="" type="text/css" media="screen">
<script src=""
-<script src="" type="text/_javascript_"></script>
-<script src="" type="text/_javascript_"></script>
-<script src="" type="text/_javascript_"></script>
-<script src="" type="text/_javascript_"></script>
-<script src="" type="text/_javascript_"></script>
-<script src="" type="text/_javascript_"></script>
-<script src="" type="text/_javascript_"></script>
+<script src="" type="text/_javascript_"></script>
<body>
<script type="text/_javascript_">
Added: trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on-expected.txt (0 => 209187)
--- trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on-expected.txt (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on-expected.txt 2016-12-01 18:41:08 UTC (rev 209187)
@@ -0,0 +1,11 @@
+Testing an IconButton has a white background-color when set to `on`.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS window.getComputedStyle(iconButton.element).backgroundColor is "rgb(255, 255, 255)"
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html (0 => 209187)
--- trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html (rev 0)
+++ trunk/LayoutTests/media/modern-media-controls/icon-button/icon-button-on.html 2016-12-01 18:41:08 UTC (rev 209187)
@@ -0,0 +1,26 @@
+<script src=""
+<script src="" type="text/_javascript_"></script>
+<body>
+<script type="text/_javascript_">
+
+description("Testing an <code>IconButton</code> has a white background-color when set to `on`.");
+
+window.jsTestIsAsync = true;
+
+const iconButton = new IconButton({ layoutDelegate: { layoutTraits: LayoutTraits.macOS } });
+iconButton.iconName = Icons.Pause;
+iconButton.on = true;
+document.body.appendChild(iconButton.element);
+
+scheduler.frameDidFire = function()
+{
+ shouldBeEqualToString("window.getComputedStyle(iconButton.element).backgroundColor", "rgb(255, 255, 255)");
+
+ iconButton.element.remove();
+ debug("");
+ finishJSTest();
+}
+
+</script>
+<script src=""
+</body>
Modified: trunk/Source/WebCore/ChangeLog (209186 => 209187)
--- trunk/Source/WebCore/ChangeLog 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/Source/WebCore/ChangeLog 2016-12-01 18:41:08 UTC (rev 209187)
@@ -1,3 +1,29 @@
+2016-12-01 Antoine Quint <grao...@apple.com>
+
+ [Modern Media Controls] Promote the "on" property from AirPlayButton to IconButton
+ https://bugs.webkit.org/show_bug.cgi?id=165260
+
+ Reviewed by Dean Jackson.
+
+ With the fix for https://bugs.webkit.org/show_bug.cgi?id=165239 we now set the "on"
+ property for the TracksButton as well, so it makes sense to provide that property
+ for all IconButton subclasses, not just AirplayButton.
+
+ Test: media/modern-media-controls/icon-button/icon-button-on.html
+
+ * Modules/modern-media-controls/controls/airplay-button.css:
+ (button.airplay.on):
+ * Modules/modern-media-controls/controls/airplay-button.js:
+ (AirplayButton):
+ (AirplayButton.prototype.get on): Deleted.
+ (AirplayButton.prototype.set on): Deleted.
+ * Modules/modern-media-controls/controls/icon-button.css:
+ (button.icon:active,):
+ (button.icon:active): Deleted.
+ * Modules/modern-media-controls/controls/icon-button.js:
+ (IconButton.prototype.get on):
+ (IconButton.prototype.set on):
+
2016-11-30 Sam Weinig <s...@webkit.org>
[WebIDL] Remove custom bindings for File and Blob constructors
Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.css (209186 => 209187)
--- trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.css 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.css 2016-12-01 18:41:08 UTC (rev 209187)
@@ -24,5 +24,5 @@
*/
button.airplay.on {
- background-color: -apple-wireless-playback-target-active;
+ background-color: -apple-wireless-playback-target-active !important;
}
Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.js (209186 => 209187)
--- trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.js 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.js 2016-12-01 18:41:08 UTC (rev 209187)
@@ -35,15 +35,4 @@
});
}
- // Public
-
- get on()
- {
- return this.element.classList.contains("on");
- }
-
- set on(flag) {
- this.element.classList.toggle("on", flag);
- }
-
}
Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-button.css (209186 => 209187)
--- trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-button.css 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-button.css 2016-12-01 18:41:08 UTC (rev 209187)
@@ -27,6 +27,7 @@
-webkit-mask-repeat: no-repeat;
}
-button.icon:active {
- background-color: white;
+button.icon:active,
+button.icon.on {
+ background-color: white !important;
}
Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-button.js (209186 => 209187)
--- trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-button.js 2016-12-01 18:38:51 UTC (rev 209186)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-button.js 2016-12-01 18:41:08 UTC (rev 209187)
@@ -66,6 +66,15 @@
this._image.addEventListener("load", this);
}
+ get on()
+ {
+ return this.element.classList.contains("on");
+ }
+
+ set on(flag) {
+ this.element.classList.toggle("on", flag);
+ }
+
// Protected
handleEvent(event)