12011-02-25 Eric Carlson <eric.carlson@apple.com>
2
3 Reviewed by NOBODY (OOPS!).
4
5 <audio> and <video> should respect private browsing mode
6 https://bugs.webkit.org/show_bug.cgi?id=55287
7 <rdar://problem/9057699>
8
9 No new tests, this is just the plumbing.
10
11 * dom/Document.cpp:
12 (WebCore::Document::privateBrowsingStateChanged): New.
13 (WebCore::Document::registerForPrivateBrowsingStateChangedCallbacks): Ditto.
14 (WebCore::Document::unregisterForPrivateBrowsingStateChangedCallbacks): Ditto.
15 * dom/Document.h:
16
17 * dom/Element.h:
18 (WebCore::Element::privateBrowsingStateChanged): New.
19
20 * html/HTMLMediaElement.cpp:
21 (WebCore::HTMLMediaElement::HTMLMediaElement): Register for privacy mode changes.
22 (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for privacy mode changes.
23 (WebCore::HTMLMediaElement::loadResource): Tell player current privacy mode.
24 (WebCore::HTMLMediaElement::privateBrowsingStateChanged): New, call through to MediaPlayer.
25 * html/HTMLMediaElement.h:
26
27 * page/Page.cpp:
28 (WebCore::Page::privateBrowsingStateChanged): Call document()->privateBrowsingStateChanged.
29
30 * platform/graphics/MediaPlayer.cpp:
31 (WebCore::MediaPlayer::setPrivateBrowsingMode): New, call through to media engine.
32 * platform/graphics/MediaPlayer.h:
33
34 * platform/graphics/MediaPlayerPrivate.h:
35 (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode): Declare new interface.
36