| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Apple Inc. | 2 * Copyright (C) 2009 Apple Inc. |
| 3 * Copyright (C) 2009 Google Inc. | 3 * Copyright (C) 2009 Google Inc. |
| 4 * All rights reserved. | 4 * All rights reserved. |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 123 static Image* mediaOverlayPlay = platformResource("mediaplayerOverlayPlay"); | 123 static Image* mediaOverlayPlay = platformResource("mediaplayerOverlayPlay"); |
| 124 return paintMediaButton(paintInfo.context, rect, mediaOverlayPlay); | 124 return paintMediaButton(paintInfo.context, rect, mediaOverlayPlay); |
| 125 } | 125 } |
| 126 | 126 |
| 127 static Image* getMediaSliderThumb() | 127 static Image* getMediaSliderThumb() |
| 128 { | 128 { |
| 129 static Image* mediaSliderThumb = platformResource("mediaplayerSliderThumb"); | 129 static Image* mediaSliderThumb = platformResource("mediaplayerSliderThumb"); |
| 130 return mediaSliderThumb; | 130 return mediaSliderThumb; |
| 131 } | 131 } |
| 132 | 132 |
| 133 static void paintRoundedSliderBackground(const IntRect& rect, const LayoutStyle&
, GraphicsContext* context) | 133 static void paintRoundedSliderBackground(const IntRect& rect, const ComputedStyl
e&, GraphicsContext* context) |
| 134 { | 134 { |
| 135 int borderRadius = rect.height() / 2; | 135 int borderRadius = rect.height() / 2; |
| 136 IntSize radii(borderRadius, borderRadius); | 136 IntSize radii(borderRadius, borderRadius); |
| 137 Color sliderBackgroundColor = Color(11, 11, 11); | 137 Color sliderBackgroundColor = Color(11, 11, 11); |
| 138 context->fillRoundedRect(rect, radii, radii, radii, radii, sliderBackgroundC
olor); | 138 context->fillRoundedRect(rect, radii, radii, radii, radii, sliderBackgroundC
olor); |
| 139 } | 139 } |
| 140 | 140 |
| 141 static void paintSliderRangeHighlight(const IntRect& rect, const LayoutStyle& st
yle, GraphicsContext* context, int startPosition, int endPosition, Color startCo
lor, Color endColor) | 141 static void paintSliderRangeHighlight(const IntRect& rect, const ComputedStyle&
style, GraphicsContext* context, int startPosition, int endPosition, Color start
Color, Color endColor) |
| 142 { | 142 { |
| 143 // Calculate border radius; need to avoid being smaller than half the slider
height | 143 // Calculate border radius; need to avoid being smaller than half the slider
height |
| 144 // because of https://bugs.webkit.org/show_bug.cgi?id=30143. | 144 // because of https://bugs.webkit.org/show_bug.cgi?id=30143. |
| 145 int borderRadius = rect.height() / 2; | 145 int borderRadius = rect.height() / 2; |
| 146 IntSize radii(borderRadius, borderRadius); | 146 IntSize radii(borderRadius, borderRadius); |
| 147 | 147 |
| 148 // Calculate highlight rectangle and edge dimensions. | 148 // Calculate highlight rectangle and edge dimensions. |
| 149 int startOffset = startPosition; | 149 int startOffset = startPosition; |
| 150 int endOffset = rect.width() - endPosition; | 150 int endOffset = rect.width() - endPosition; |
| 151 int rangeWidth = endPosition - startPosition; | 151 int rangeWidth = endPosition - startPosition; |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 193 } | 193 } |
| 194 | 194 |
| 195 const int mediaSliderThumbWidth = 32; | 195 const int mediaSliderThumbWidth = 32; |
| 196 | 196 |
| 197 static bool paintMediaSlider(LayoutObject* object, const PaintInfo& paintInfo, c
onst IntRect& rect) | 197 static bool paintMediaSlider(LayoutObject* object, const PaintInfo& paintInfo, c
onst IntRect& rect) |
| 198 { | 198 { |
| 199 HTMLMediaElement* mediaElement = toParentMediaElement(object); | 199 HTMLMediaElement* mediaElement = toParentMediaElement(object); |
| 200 if (!mediaElement) | 200 if (!mediaElement) |
| 201 return false; | 201 return false; |
| 202 | 202 |
| 203 const LayoutStyle& style = object->styleRef(); | 203 const ComputedStyle& style = object->styleRef(); |
| 204 GraphicsContext* context = paintInfo.context; | 204 GraphicsContext* context = paintInfo.context; |
| 205 | 205 |
| 206 paintRoundedSliderBackground(rect, style, context); | 206 paintRoundedSliderBackground(rect, style, context); |
| 207 | 207 |
| 208 // Draw the buffered range. Since the element may have multiple buffered ran
ges and it'd be | 208 // Draw the buffered range. Since the element may have multiple buffered ran
ges and it'd be |
| 209 // distracting/'busy' to show all of them, show only the buffered range cont
aining the current play head. | 209 // distracting/'busy' to show all of them, show only the buffered range cont
aining the current play head. |
| 210 RefPtrWillBeRawPtr<TimeRanges> bufferedTimeRanges = mediaElement->buffered()
; | 210 RefPtrWillBeRawPtr<TimeRanges> bufferedTimeRanges = mediaElement->buffered()
; |
| 211 float duration = mediaElement->duration(); | 211 float duration = mediaElement->duration(); |
| 212 float currentTime = mediaElement->currentTime(); | 212 float currentTime = mediaElement->currentTime(); |
| 213 if (std::isnan(duration) || std::isinf(duration) || !duration || std::isnan(
currentTime)) | 213 if (std::isnan(duration) || std::isinf(duration) || !duration || std::isnan(
currentTime)) |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 | 272 |
| 273 const int mediaVolumeSliderThumbWidth = 24; | 273 const int mediaVolumeSliderThumbWidth = 24; |
| 274 | 274 |
| 275 static bool paintMediaVolumeSlider(LayoutObject* object, const PaintInfo& paintI
nfo, const IntRect& rect) | 275 static bool paintMediaVolumeSlider(LayoutObject* object, const PaintInfo& paintI
nfo, const IntRect& rect) |
| 276 { | 276 { |
| 277 HTMLMediaElement* mediaElement = toParentMediaElement(object); | 277 HTMLMediaElement* mediaElement = toParentMediaElement(object); |
| 278 if (!mediaElement) | 278 if (!mediaElement) |
| 279 return false; | 279 return false; |
| 280 | 280 |
| 281 GraphicsContext* context = paintInfo.context; | 281 GraphicsContext* context = paintInfo.context; |
| 282 const LayoutStyle& style = object->styleRef(); | 282 const ComputedStyle& style = object->styleRef(); |
| 283 | 283 |
| 284 paintRoundedSliderBackground(rect, style, context); | 284 paintRoundedSliderBackground(rect, style, context); |
| 285 | 285 |
| 286 // Calculate volume position for white background rectangle. | 286 // Calculate volume position for white background rectangle. |
| 287 float volume = mediaElement->volume(); | 287 float volume = mediaElement->volume(); |
| 288 if (std::isnan(volume) || volume < 0) | 288 if (std::isnan(volume) || volume < 0) |
| 289 return true; | 289 return true; |
| 290 if (volume > 1) | 290 if (volume > 1) |
| 291 volume = 1; | 291 volume = 1; |
| 292 if (!hasSource(mediaElement) || !mediaElement->hasAudio() || mediaElement->m
uted()) | 292 if (!hasSource(mediaElement) || !mediaElement->hasAudio() || mediaElement->m
uted()) |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 414 case MediaFullScreenVolumeSliderThumb: | 414 case MediaFullScreenVolumeSliderThumb: |
| 415 ASSERT_NOT_REACHED(); | 415 ASSERT_NOT_REACHED(); |
| 416 break; | 416 break; |
| 417 } | 417 } |
| 418 return false; | 418 return false; |
| 419 } | 419 } |
| 420 | 420 |
| 421 const int mediaSliderThumbHeight = 24; | 421 const int mediaSliderThumbHeight = 24; |
| 422 const int mediaVolumeSliderThumbHeight = 24; | 422 const int mediaVolumeSliderThumbHeight = 24; |
| 423 | 423 |
| 424 void LayoutMediaControls::adjustMediaSliderThumbSize(LayoutStyle& style) | 424 void LayoutMediaControls::adjustMediaSliderThumbSize(ComputedStyle& style) |
| 425 { | 425 { |
| 426 static Image* mediaSliderThumb = platformResource("mediaplayerSliderThumb"); | 426 static Image* mediaSliderThumb = platformResource("mediaplayerSliderThumb"); |
| 427 static Image* mediaVolumeSliderThumb = platformResource("mediaplayerVolumeSl
iderThumb"); | 427 static Image* mediaVolumeSliderThumb = platformResource("mediaplayerVolumeSl
iderThumb"); |
| 428 int width = 0; | 428 int width = 0; |
| 429 int height = 0; | 429 int height = 0; |
| 430 | 430 |
| 431 Image* thumbImage = 0; | 431 Image* thumbImage = 0; |
| 432 if (style.appearance() == MediaSliderThumbPart) { | 432 if (style.appearance() == MediaSliderThumbPart) { |
| 433 thumbImage = mediaSliderThumb; | 433 thumbImage = mediaSliderThumb; |
| 434 width = mediaSliderThumbWidth; | 434 width = mediaSliderThumbWidth; |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 474 { | 474 { |
| 475 return formatChromiumMediaControlsTime(time, time); | 475 return formatChromiumMediaControlsTime(time, time); |
| 476 } | 476 } |
| 477 | 477 |
| 478 String LayoutMediaControls::formatMediaControlsCurrentTime(float currentTime, fl
oat duration) | 478 String LayoutMediaControls::formatMediaControlsCurrentTime(float currentTime, fl
oat duration) |
| 479 { | 479 { |
| 480 return formatChromiumMediaControlsTime(currentTime, duration); | 480 return formatChromiumMediaControlsTime(currentTime, duration); |
| 481 } | 481 } |
| 482 | 482 |
| 483 } // namespace blink | 483 } // namespace blink |
| OLD | NEW |