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