Index: Source/core/rendering/RenderMediaControls.cpp |
diff --git a/Source/core/rendering/RenderMediaControls.cpp b/Source/core/rendering/RenderMediaControls.cpp |
index b08ee2e510ee3163c9c7fc9bc86fe6523a72aa0e..9124b8745353b370af37ff92ec7b038d568e2168 100644 |
--- a/Source/core/rendering/RenderMediaControls.cpp |
+++ b/Source/core/rendering/RenderMediaControls.cpp |
@@ -339,7 +339,22 @@ static bool paintMediaToggleClosedCaptionsButton(RenderObject* object, const Pai |
return paintMediaButton(paintInfo.context, rect, mediaClosedCaptionButtonDisabled); |
} |
+static bool paintMediaCastButton(RenderObject* object, const PaintInfo& paintInfo, const IntRect& rect) |
+{ |
+ HTMLMediaElement* mediaElement = toParentMediaElement(object); |
+ if (!mediaElement) |
+ return false; |
+ |
+ static Image* mediaCastOnButton = platformResource("mediaplayerCastOn"); |
+ static Image* mediaCastOffButton = platformResource("mediaplayerCastOff"); |
+ if (mediaElement->isPlayingRemotely()) { |
+ return paintMediaButton(paintInfo.context, rect, mediaCastOnButton); |
+ } |
+ |
+ return paintMediaButton(paintInfo.context, rect, mediaCastOffButton); |
+ |
+} |
bool RenderMediaControls::paintMediaControlsPart(MediaControlElementType part, RenderObject* object, const PaintInfo& paintInfo, const IntRect& rect) |
{ |
@@ -365,6 +380,11 @@ bool RenderMediaControls::paintMediaControlsPart(MediaControlElementType part, R |
return paintMediaFullscreenButton(object, paintInfo, rect); |
case MediaOverlayPlayButton: |
return paintMediaOverlayPlayButton(object, paintInfo, rect); |
+ case MediaCastOffButton: |
+ case MediaCastOnButton: |
+ case MediaOverlayCastOffButton: |
+ case MediaOverlayCastOnButton: |
+ return paintMediaCastButton(object, paintInfo, rect); |
case MediaVolumeSliderContainer: |
case MediaTimelineContainer: |
case MediaCurrentTimeDisplay: |