Title: [127831] trunk/Source/WebCore
Revision
127831
Author
[email protected]
Date
2012-09-06 22:59:40 -0700 (Thu, 06 Sep 2012)

Log Message

The CC button should have chrome-specific rendering for Mac.
https://bugs.webkit.org/show_bug.cgi?id=95981

Reviewed by Eric Carlson.

This patch allows RenderThemeChromiumMac to define its own behavior for the CC button.

No new tests.  Button should display graphics from chromium resources.

* css/mediaControlsChromium.css:
(audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
Adjust styling for the chromium graphics.
* rendering/RenderMediaControlsChromium.cpp:
(WebCore::paintMediaClosedCaptionsButton):
Check whether closed captions are visible to decide how to draw the button.
* rendering/RenderThemeChromiumMac.h:
(RenderThemeChromiumMac):
Override the paint function for the CC button.
* rendering/RenderThemeChromiumMac.mm:
(WebCore):
(WebCore::RenderThemeChromiumMac::paintMediaToggleClosedCaptionsButton):
Call the chromium-specific painting function.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (127830 => 127831)


--- trunk/Source/WebCore/ChangeLog	2012-09-07 05:54:12 UTC (rev 127830)
+++ trunk/Source/WebCore/ChangeLog	2012-09-07 05:59:40 UTC (rev 127831)
@@ -1,3 +1,28 @@
+2012-09-06  Anna Cavender  <[email protected]>
+
+        The CC button should have chrome-specific rendering for Mac.
+        https://bugs.webkit.org/show_bug.cgi?id=95981
+
+        Reviewed by Eric Carlson.
+
+        This patch allows RenderThemeChromiumMac to define its own behavior for the CC button.
+
+        No new tests.  Button should display graphics from chromium resources.
+
+        * css/mediaControlsChromium.css:
+        (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
+        Adjust styling for the chromium graphics.
+        * rendering/RenderMediaControlsChromium.cpp:
+        (WebCore::paintMediaClosedCaptionsButton):
+        Check whether closed captions are visible to decide how to draw the button.
+        * rendering/RenderThemeChromiumMac.h:
+        (RenderThemeChromiumMac):
+        Override the paint function for the CC button.
+        * rendering/RenderThemeChromiumMac.mm:
+        (WebCore):
+        (WebCore::RenderThemeChromiumMac::paintMediaToggleClosedCaptionsButton):
+        Call the chromium-specific painting function.
+
 2012-09-06  Elliott Sprehn  <[email protected]>
 
         Add methods to CounterDirectives to clean up StyleBuilder and RenderCounter.

Modified: trunk/Source/WebCore/css/mediaControlsChromium.css (127830 => 127831)


--- trunk/Source/WebCore/css/mediaControlsChromium.css	2012-09-07 05:54:12 UTC (rev 127830)
+++ trunk/Source/WebCore/css/mediaControlsChromium.css	2012-09-07 05:59:40 UTC (rev 127831)
@@ -183,9 +183,9 @@
     display: -webkit-box;
     border: none;
     box-sizing: border-box;
-    width: 25px;
-    height: 25px;
-    line-height: 25px;
+    width: 30px;
+    height: 30px;
+    line-height: 30px;
     margin-left: -5px;
     margin-right: 9px;
     padding: 0;

Modified: trunk/Source/WebCore/rendering/RenderMediaControlsChromium.cpp (127830 => 127831)


--- trunk/Source/WebCore/rendering/RenderMediaControlsChromium.cpp	2012-09-07 05:54:12 UTC (rev 127830)
+++ trunk/Source/WebCore/rendering/RenderMediaControlsChromium.cpp	2012-09-07 05:59:40 UTC (rev 127831)
@@ -334,7 +334,12 @@
         return false;
 
     static Image* mediaClosedCaptionButton = platformResource("mediaplayerClosedCaption");
-    return paintMediaButton(paintInfo.context, rect, mediaClosedCaptionButton);
+    static Image* mediaClosedCaptionButtonDisabled = platformResource("mediaplayerClosedCaptionDisabled");
+
+    if (mediaElement->webkitClosedCaptionsVisible())
+        return paintMediaButton(paintInfo.context, rect, mediaClosedCaptionButton);
+
+    return paintMediaButton(paintInfo.context, rect, mediaClosedCaptionButtonDisabled);
 }
 
 

Modified: trunk/Source/WebCore/rendering/RenderThemeChromiumMac.h (127830 => 127831)


--- trunk/Source/WebCore/rendering/RenderThemeChromiumMac.h	2012-09-07 05:54:12 UTC (rev 127830)
+++ trunk/Source/WebCore/rendering/RenderThemeChromiumMac.h	2012-09-07 05:59:40 UTC (rev 127831)
@@ -58,6 +58,7 @@
     virtual String formatMediaControlsCurrentTime(float currentTime, float duration) const;
     virtual String formatMediaControlsRemainingTime(float currentTime, float duration) const;
     virtual bool paintMediaFullscreenButton(RenderObject*, const PaintInfo&, const IntRect&);
+    virtual bool paintMediaToggleClosedCaptionsButton(RenderObject*, const PaintInfo&, const IntRect&);
 #endif
 
     virtual bool usesTestModeFocusRingColor() const;

Modified: trunk/Source/WebCore/rendering/RenderThemeChromiumMac.mm (127830 => 127831)


--- trunk/Source/WebCore/rendering/RenderThemeChromiumMac.mm	2012-09-07 05:54:12 UTC (rev 127830)
+++ trunk/Source/WebCore/rendering/RenderThemeChromiumMac.mm	2012-09-07 05:59:40 UTC (rev 127831)
@@ -233,6 +233,11 @@
 {
     return RenderMediaControlsChromium::paintMediaControlsPart(MediaEnterFullscreenButton, object, paintInfo, rect);
 }
+
+bool RenderThemeChromiumMac::paintMediaToggleClosedCaptionsButton(RenderObject* object, const PaintInfo& paintInfo, const IntRect& rect)
+{
+    return RenderMediaControlsChromium::paintMediaControlsPart(MediaShowClosedCaptionsButton, object, paintInfo, rect);
+}
 #endif
 
 } // namespace WebCore
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to