Changeset 49878 in webkit


Ignore:
Timestamp:
Oct 20, 2009 12:08:17 PM (14 years ago)
Author:
eric@webkit.org
Message:

2009-10-20 Andrew Scherkus <scherkus@chromium.org>

Reviewed by Eric Seidel.

Hide Chromium's media slider thumb if no source has been loaded.

https://bugs.webkit.org/show_bug.cgi?id=30529

Covered by existing layout tests, notably:

LayoutTests/media/controls-rendering.html
LayoutTests/media/unsupported-tracks.html
LayoutTests/media/video-src-none.html

  • rendering/RenderMediaControlsChromium.cpp: (WebCore::hasSource): Returns true if an HTMLMediaElement has a valid source set. (WebCore::paintMediaMuteButton): Refactored to use hasSource(). (WebCore::paintMediaPlayButton): Ditto. (WebCore::paintMediaSliderThumb): Add call to hasSource() to determine if we should paint the thumb.
Location:
trunk/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r49876 r49878  
     12009-10-20  Andrew Scherkus  <scherkus@chromium.org>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Hide Chromium's media slider thumb if no source has been loaded.
     6
     7        https://bugs.webkit.org/show_bug.cgi?id=30529
     8
     9        Covered by existing layout tests, notably:
     10            LayoutTests/media/controls-rendering.html
     11            LayoutTests/media/unsupported-tracks.html
     12            LayoutTests/media/video-src-none.html
     13
     14        * rendering/RenderMediaControlsChromium.cpp:
     15        (WebCore::hasSource): Returns true if an HTMLMediaElement has a valid source set.
     16        (WebCore::paintMediaMuteButton): Refactored to use hasSource().
     17        (WebCore::paintMediaPlayButton): Ditto.
     18        (WebCore::paintMediaSliderThumb): Add call to hasSource() to determine if we should paint the thumb.
     19
    1202009-10-20  Satoshi Nakagawa  <psychs@limechat.net>
    221
  • trunk/WebCore/rendering/RenderMediaControlsChromium.cpp

    r49799 r49878  
    5555}
    5656
     57static bool hasSource(const HTMLMediaElement* mediaElement)
     58{
     59    return mediaElement->networkState() != HTMLMediaElement::NETWORK_EMPTY
     60        && mediaElement->networkState() != HTMLMediaElement::NETWORK_NO_SOURCE;
     61}
     62
    5763static bool paintMediaButton(GraphicsContext* context, const IntRect& rect, Image* image)
    5864{
     
    7278    static Image* soundDisabled = platformResource("mediaSoundDisabled");
    7379
    74     if (mediaElement->networkState() == HTMLMediaElement::NETWORK_NO_SOURCE || !mediaElement->hasAudio())
     80    if (!hasSource(mediaElement) || !mediaElement->hasAudio())
    7581        return paintMediaButton(paintInfo.context, rect, soundDisabled);
    7682
     
    8894    static Image* mediaPlayDisabled = platformResource("mediaPlayDisabled");
    8995
    90     if (mediaElement->networkState() == HTMLMediaElement::NETWORK_EMPTY ||
    91         mediaElement->networkState() == HTMLMediaElement::NETWORK_NO_SOURCE)
     96    if (!hasSource(mediaElement))
    9297        return paintMediaButton(paintInfo.context, rect, mediaPlayDisabled);
    9398
     
    147152    if (!object->parent()->isSlider())
    148153        return false;
     154
     155    HTMLMediaElement* mediaElement = toParentMediaElement(object->parent());
     156    if (!mediaElement)
     157        return false;
     158
     159    if (!hasSource(mediaElement))
     160        return true;
    149161
    150162    static Image* mediaSliderThumb = platformResource("mediaSliderThumb");
Note: See TracChangeset for help on using the changeset viewer.