Changeset 186538 in webkit


Ignore:
Timestamp:
Jul 8, 2015 4:46:16 PM (9 years ago)
Author:
mrajca@apple.com
Message:

Media Session: indicate to clients whether a media session has active media elements
https://bugs.webkit.org/show_bug.cgi?id=146742

Reviewed by Tim Horton.

  • UIProcess/API/C/WKPage.cpp:

(WKPageHasMediaSessionWithActiveMediaElements):

  • UIProcess/API/C/WKPagePrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::hasMediaSessionWithActiveMediaElementsDidChange):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::hasMediaSessionWithActiveMediaElementsDidChange):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::hasMediaSessionWithActiveMediaElementsDidChange):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
Location:
trunk/Source
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/page/ChromeClient.h

    r185929 r186538  
    420420
    421421#if ENABLE(MEDIA_SESSION)
     422    virtual void hasMediaSessionWithActiveMediaElementsDidChange(bool) { }
    422423    virtual void mediaSessionMetadataDidChange(const WebCore::MediaSessionMetadata&) { }
    423424#endif
  • trunk/Source/WebKit2/ChangeLog

    r186535 r186538  
     12015-07-08  Matt Rajca  <mrajca@apple.com>
     2
     3        Media Session: indicate to clients whether a media session has active media elements
     4        https://bugs.webkit.org/show_bug.cgi?id=146742
     5
     6        Reviewed by Tim Horton.
     7
     8        * UIProcess/API/C/WKPage.cpp:
     9        (WKPageHasMediaSessionWithActiveMediaElements):
     10        * UIProcess/API/C/WKPagePrivate.h:
     11        * UIProcess/WebPageProxy.cpp:
     12        (WebKit::WebPageProxy::hasMediaSessionWithActiveMediaElementsDidChange):
     13        * UIProcess/WebPageProxy.h:
     14        (WebKit::WebPageProxy::hasMediaSessionWithActiveMediaElementsDidChange):
     15        * UIProcess/WebPageProxy.messages.in:
     16        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
     17        (WebKit::WebChromeClient::hasMediaSessionWithActiveMediaElementsDidChange):
     18        * WebProcess/WebCoreSupport/WebChromeClient.h:
     19
    1202015-07-07  Matt Rajca  <mrajca@apple.com>
    221
  • trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp

    r186484 r186538  
    21542154}
    21552155
     2156bool WKPageHasMediaSessionWithActiveMediaElements(WKPageRef page)
     2157{
     2158#if ENABLE(MEDIA_SESSION)
     2159    return toImpl(page)->hasMediaSessionWithActiveMediaElements();
     2160#else
     2161    UNUSED_PARAM(page);
     2162    return false;
     2163#endif
     2164}
     2165
    21562166void WKPageHandleMediaEvent(WKPageRef page, WKMediaEventType wkEventType)
    21572167{
  • trunk/Source/WebKit2/UIProcess/API/C/WKPagePrivate.h

    r185477 r186538  
    119119typedef uint32_t WKMediaEventType;
    120120
     121WK_EXPORT bool WKPageHasMediaSessionWithActiveMediaElements(WKPageRef page);
    121122WK_EXPORT void WKPageHandleMediaEvent(WKPageRef page, WKMediaEventType event);
    122123
  • trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp

    r186484 r186538  
    58105810
    58115811#if ENABLE(MEDIA_SESSION)
     5812void WebPageProxy::hasMediaSessionWithActiveMediaElementsDidChange(bool state)
     5813{
     5814    m_hasMediaSessionWithActiveMediaElements = state;
     5815}
     5816
    58125817void WebPageProxy::mediaSessionMetadataDidChange(const WebCore::MediaSessionMetadata& metadata)
    58135818{
  • trunk/Source/WebKit2/UIProcess/WebPageProxy.h

    r186371 r186538  
    941941       
    942942#if ENABLE(MEDIA_SESSION)
     943    bool hasMediaSessionWithActiveMediaElements() const { return m_hasMediaSessionWithActiveMediaElements; }
    943944    void handleMediaEvent(WebCore::MediaEventType);
    944945#endif
     
    10261027
    10271028#if ENABLE(MEDIA_SESSION)
     1029    void hasMediaSessionWithActiveMediaElementsDidChange(bool);
    10281030    void mediaSessionMetadataDidChange(const WebCore::MediaSessionMetadata&);
    10291031#endif
     
    17631765    WebCore::MediaProducer::MediaStateFlags m_mediaState { WebCore::MediaProducer::IsNotPlaying };
    17641766
     1767#if ENABLE(MEDIA_SESSION)
     1768    bool m_hasMediaSessionWithActiveMediaElements { false };
     1769#endif
     1770
    17651771#if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
    17661772    bool m_requiresTargetMonitoring { false };
  • trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in

    r186082 r186538  
    426426
    427427#if ENABLE(MEDIA_SESSION)
     428    HasMediaSessionWithActiveMediaElementsDidChange(bool state)
    428429    MediaSessionMetadataDidChange(WebCore::MediaSessionMetadata metadata);
    429430#endif
  • trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp

    r185929 r186538  
    10631063
    10641064#if ENABLE(MEDIA_SESSION)
     1065void WebChromeClient::hasMediaSessionWithActiveMediaElementsDidChange(bool state)
     1066{
     1067    m_page->send(Messages::WebPageProxy::HasMediaSessionWithActiveMediaElementsDidChange(state));
     1068}
     1069
    10651070void WebChromeClient::mediaSessionMetadataDidChange(const WebCore::MediaSessionMetadata& metadata)
    10661071{
  • trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h

    r185929 r186538  
    296296
    297297#if ENABLE(MEDIA_SESSION)
     298    virtual void hasMediaSessionWithActiveMediaElementsDidChange(bool) override;
    298299    virtual void mediaSessionMetadataDidChange(const WebCore::MediaSessionMetadata&) override;
    299300#endif
Note: See TracChangeset for help on using the changeset viewer.