Changeset 80242 in webkit


Ignore:
Timestamp:
Mar 3, 2011 8:40:02 AM (13 years ago)
Author:
Dimitri Glazkov
Message:

2011-03-03 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Eric Carlson.

Tweak MediaControlMuteButtonElement class hierarchy.
https://bugs.webkit.org/show_bug.cgi?id=55614

This allows the mute button on the panel to have event handlers that are
different from the mute button in the volume slider.

No change in behavior, covered by existing tests.

  • html/shadow/MediaControls.cpp: (WebCore::MediaControls::createMuteButton): Changed to use MediaControlPanelMuteButtonElement.
  • rendering/MediaControlElements.cpp: (WebCore::MediaControlMuteButtonElement::updateDisplayType): (WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement): Added. (WebCore::MediaControlPanelMuteButtonElement::create): Added. (WebCore::MediaControlPanelMuteButtonElement::shadowPseudoId): Moved.
  • rendering/MediaControlElements.h: Added defs.
Location:
trunk/Source/WebCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r80239 r80242  
     12011-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
     2
     3        Reviewed by Eric Carlson.
     4
     5        Tweak MediaControlMuteButtonElement class hierarchy.
     6        https://bugs.webkit.org/show_bug.cgi?id=55614
     7
     8        This allows the mute button on the panel to have event handlers that are
     9        different from the mute button in the volume slider.
     10
     11        No change in behavior, covered by existing tests.
     12
     13        * html/shadow/MediaControls.cpp:
     14        (WebCore::MediaControls::createMuteButton): Changed to use MediaControlPanelMuteButtonElement.
     15        * rendering/MediaControlElements.cpp:
     16        (WebCore::MediaControlMuteButtonElement::updateDisplayType):
     17        (WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement): Added.
     18        (WebCore::MediaControlPanelMuteButtonElement::create): Added.
     19        (WebCore::MediaControlPanelMuteButtonElement::shadowPseudoId): Moved.
     20        * rendering/MediaControlElements.h: Added defs.
     21
    1222011-03-03  Yury Semikhatsky  <yurys@chromium.org>
    223
  • trunk/Source/WebCore/html/shadow/MediaControls.cpp

    r79613 r80242  
    247247{
    248248    ASSERT(!m_muteButton);
    249     m_muteButton = MediaControlMuteButtonElement::create(m_mediaElement);
     249    m_muteButton = MediaControlPanelMuteButtonElement::create(m_mediaElement);
    250250    m_muteButton->attachToParent(m_panel.get());
    251251}
  • trunk/Source/WebCore/rendering/MediaControlElements.cpp

    r77954 r80242  
    488488}
    489489
    490 PassRefPtr<MediaControlMuteButtonElement> MediaControlMuteButtonElement::create(HTMLMediaElement* mediaElement)
    491 {
    492     RefPtr<MediaControlMuteButtonElement> button = adoptRef(new MediaControlMuteButtonElement(mediaElement, MediaMuteButton));
    493     button->setType("button");
    494     return button.release();
    495 }
    496 
    497490void MediaControlMuteButtonElement::defaultEventHandler(Event* event)
    498491{
     
    504497}
    505498
    506 const AtomicString& MediaControlMuteButtonElement::shadowPseudoId() const
     499void MediaControlMuteButtonElement::updateDisplayType()
     500{
     501    setDisplayType(mediaElement()->muted() ? MediaUnMuteButton : MediaMuteButton);
     502}
     503
     504// ----------------------------
     505
     506inline MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement(HTMLMediaElement* mediaElement)
     507    : MediaControlMuteButtonElement(mediaElement, MediaMuteButton)
     508{
     509}
     510
     511PassRefPtr<MediaControlPanelMuteButtonElement> MediaControlPanelMuteButtonElement::create(HTMLMediaElement* mediaElement)
     512{
     513    RefPtr<MediaControlPanelMuteButtonElement> button = adoptRef(new MediaControlPanelMuteButtonElement(mediaElement));
     514    button->setType("button");
     515    return button.release();
     516}
     517
     518const AtomicString& MediaControlPanelMuteButtonElement::shadowPseudoId() const
    507519{
    508520    DEFINE_STATIC_LOCAL(AtomicString, id, ("-webkit-media-controls-mute-button"));
     
    510522}
    511523
    512 void MediaControlMuteButtonElement::updateDisplayType()
    513 {
    514     setDisplayType(mediaElement()->muted() ? MediaUnMuteButton : MediaMuteButton);
    515 }
     524// ----------------------------
    516525
    517526inline MediaControlVolumeSliderMuteButtonElement::MediaControlVolumeSliderMuteButtonElement(HTMLMediaElement* mediaElement)
  • trunk/Source/WebCore/rendering/MediaControlElements.h

    r77954 r80242  
    211211class MediaControlMuteButtonElement : public MediaControlInputElement {
    212212public:
    213     static PassRefPtr<MediaControlMuteButtonElement> create(HTMLMediaElement*);
    214 
    215213    virtual void defaultEventHandler(Event*);
    216214
     
    220218private:
    221219    virtual void updateDisplayType();
     220};
     221
     222// ----------------------------
     223
     224class MediaControlPanelMuteButtonElement : public MediaControlMuteButtonElement {
     225public:
     226    static PassRefPtr<MediaControlPanelMuteButtonElement> create(HTMLMediaElement*);
     227
     228private:
     229    MediaControlPanelMuteButtonElement(HTMLMediaElement*);
     230
    222231    virtual const AtomicString& shadowPseudoId() const;
    223232};
Note: See TracChangeset for help on using the changeset viewer.