WebCore:

        Reviewed by Adam Roben.

        WebCore part of adding a master volume control for media elements in a WebView

        * WebCore.base.exp: Exported WebCore::Page::setMediaVolume().
        * dom/Document.cpp:
        (WebCore::Document::mediaVolumeDidChange): Added. Called by the Page
        when the media volume is changed.
        (WebCore::Document::registerForMediaVolumeCallbacks): Added. Allows
        elements to register for a callback when the media volume is changed.
        (WebCore::Document::unregisterForMediaVolumeCallbacks): Added. Allows
        elements to unregister for the callback.
        * dom/Document.h:
        * dom/Element.h:
        (WebCore::Element::mediaVolumeDidChange): Added an empty implementation.
        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::HTMLMediaElement): Added a call to
        registerForMediaVolumeCallbacks().
        (WebCore::HTMLMediaElement::~HTMLMediaElement): Added a call to
        unregisterForMediaVolumeCallbacks().
        (WebCore::HTMLMediaElement::updateVolume): Changed to multiply the
        element's intrinsic volume by the master volume from the page.
        (WebCore::HTMLMediaElement::mediaVolumeDidChange): Added. Calls
        updateVolume().
        * html/HTMLMediaElement.h:
        * page/Page.cpp:
        (WebCore::Page::Page): Initialize m_mediaVolume to 1.
        (WebCore::Page::setMediaVolume): Added. Calls mediaVolumeDidChange() on
        every document in the page when the master volume changes.
        * page/Page.h:
        (WebCore::Page::mediaVolume): Added this getter.

WebKit/mac:

        Reviewed by Adam Roben.

        WebKit/mac part of adding a master volume control for media elements in a WebView

        * WebView/WebView.mm:
        (-[WebView setMediaVolume:]): Added.
        (-[WebView mediaVolume]): Added.
        * WebView/WebViewPrivate.h:

WebKit/win:

        Reviewed by Adam Roben.

        WebKit/win part of adding a master volume control for media elements in a WebView
        * Interfaces/IWebViewPrivate.idl: Added setMediaVolume() and
        mediaVolume().
        * WebView.cpp:
        (WebView::setMediaVolume): Added.
        (WebView::mediaVolume): Added.
        * WebView.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38318 268f45cc-cd09-0410-ab3c-d52691b4dbfc
16 files changed