Title: [213900] trunk
Revision
213900
Author
commit-qu...@webkit.org
Date
2017-03-14 09:16:46 -0700 (Tue, 14 Mar 2017)

Log Message

[Modern Media Controls] iOS may attempt to load fullscreen icon variants
https://bugs.webkit.org/show_bug.cgi?id=169608
<rdar://problem/31037369>

Patch by Antoine Quint <grao...@apple.com> on 2017-03-14
Reviewed by Eric Carlson.

Source/WebCore:

Only return fullscreen or compact variants for macOS.

* Modules/modern-media-controls/controls/icon-service.js:
(const.iconService.new.IconService.prototype._fileNameAndPlatformForIconNameAndLayoutTraits):
(const.iconService.new.IconService):

LayoutTests:

Amend an existing test to check that we disregard fullscreen and compact variants on iOS.

* media/modern-media-controls/icon-service/icon-service-expected.txt:
* media/modern-media-controls/icon-service/icon-service.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (213899 => 213900)


--- trunk/LayoutTests/ChangeLog	2017-03-14 16:13:14 UTC (rev 213899)
+++ trunk/LayoutTests/ChangeLog	2017-03-14 16:16:46 UTC (rev 213900)
@@ -1,5 +1,18 @@
 2017-03-14  Antoine Quint  <grao...@apple.com>
 
+        [Modern Media Controls] iOS may attempt to load fullscreen icon variants
+        https://bugs.webkit.org/show_bug.cgi?id=169608
+        <rdar://problem/31037369>
+
+        Reviewed by Eric Carlson.
+
+        Amend an existing test to check that we disregard fullscreen and compact variants on iOS.
+
+        * media/modern-media-controls/icon-service/icon-service-expected.txt:
+        * media/modern-media-controls/icon-service/icon-service.html:
+
+2017-03-14  Antoine Quint  <grao...@apple.com>
+
         [Modern Media Controls] Controls are laid out incorrectly with RTL languages
         https://bugs.webkit.org/show_bug.cgi?id=169605
         <rdar://problem/30975709>

Modified: trunk/LayoutTests/media/modern-media-controls/icon-service/icon-service-expected.txt (213899 => 213900)


--- trunk/LayoutTests/media/modern-media-controls/icon-service/icon-service-expected.txt	2017-03-14 16:13:14 UTC (rev 213899)
+++ trunk/LayoutTests/media/modern-media-controls/icon-service/icon-service-expected.txt	2017-03-14 16:16:46 UTC (rev 213900)
@@ -8,6 +8,10 @@
 PASS iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS).src.includes("iOS/pause@") is true
 PASS iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.macOS | LayoutTraits.Fullscreen).src.includes("macOS/pause-fullscreen@") is true
 
+Checking fullscreen or compact layout traits are ignored on iOS
+PASS iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS | LayoutTraits.Fullscreen) === iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS) is true
+PASS iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS | LayoutTraits.Compact) === iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS) is true
+
 Checking requested images are cached
 PASS iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.macOS) === iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.macOS) is true
 PASS successfullyParsed is true

Modified: trunk/LayoutTests/media/modern-media-controls/icon-service/icon-service.html (213899 => 213900)


--- trunk/LayoutTests/media/modern-media-controls/icon-service/icon-service.html	2017-03-14 16:13:14 UTC (rev 213899)
+++ trunk/LayoutTests/media/modern-media-controls/icon-service/icon-service.html	2017-03-14 16:16:46 UTC (rev 213900)
@@ -15,6 +15,11 @@
 shouldBeTrue('iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.macOS | LayoutTraits.Fullscreen).src.includes("macOS/pause-fullscreen@")');
 
 debug("");
+debug("Checking fullscreen or compact layout traits are ignored on iOS");
+shouldBeTrue('iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS | LayoutTraits.Fullscreen) === iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS)');
+shouldBeTrue('iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS | LayoutTraits.Compact) === iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.iOS)');
+
+debug("");
 debug("Checking requested images are cached");
 shouldBeTrue('iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.macOS) === iconService.imageForIconNameAndLayoutTraits(Icons.Pause, LayoutTraits.macOS)');
 

Modified: trunk/Source/WebCore/ChangeLog (213899 => 213900)


--- trunk/Source/WebCore/ChangeLog	2017-03-14 16:13:14 UTC (rev 213899)
+++ trunk/Source/WebCore/ChangeLog	2017-03-14 16:16:46 UTC (rev 213900)
@@ -1,5 +1,19 @@
 2017-03-14  Antoine Quint  <grao...@apple.com>
 
+        [Modern Media Controls] iOS may attempt to load fullscreen icon variants
+        https://bugs.webkit.org/show_bug.cgi?id=169608
+        <rdar://problem/31037369>
+
+        Reviewed by Eric Carlson.
+
+        Only return fullscreen or compact variants for macOS.
+
+        * Modules/modern-media-controls/controls/icon-service.js:
+        (const.iconService.new.IconService.prototype._fileNameAndPlatformForIconNameAndLayoutTraits):
+        (const.iconService.new.IconService):
+
+2017-03-14  Antoine Quint  <grao...@apple.com>
+
         [Modern Media Controls] Controls are laid out incorrectly with RTL languages
         https://bugs.webkit.org/show_bug.cgi?id=169605
         <rdar://problem/30975709>

Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-service.js (213899 => 213900)


--- trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-service.js	2017-03-14 16:13:14 UTC (rev 213899)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-service.js	2017-03-14 16:16:46 UTC (rev 213900)
@@ -89,10 +89,12 @@
         else
             throw "Could not identify icon's platform from layout traits.";
 
-        if (layoutTraits & LayoutTraits.Fullscreen && IconsWithFullscreenVariants.includes(iconName))
-            iconName += "-fullscreen";
-        else if (layoutTraits & LayoutTraits.Compact && IconsWithCompactVariants.includes(iconName))
-            iconName += "-compact";
+        if (layoutTraits & LayoutTraits.macOS) {
+            if (layoutTraits & LayoutTraits.Fullscreen && IconsWithFullscreenVariants.includes(iconName))
+                iconName += "-fullscreen";
+            else if (layoutTraits & LayoutTraits.Compact && IconsWithCompactVariants.includes(iconName))
+                iconName += "-compact";
+        }
 
         const fileName = `${iconName}@${window.devicePixelRatio}x`;
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to