Index: Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h |
diff --git a/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h b/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h |
index 6cc7d2c31247f340069868e88d77599d46feb969..7f179551280e4495f50655612ff0ae241f73dc33 100644 |
--- a/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h |
+++ b/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h |
@@ -12,7 +12,7 @@ |
#include "platform/Supplementable.h" |
#include "platform/heap/Handle.h" |
#include "public/platform/WebEncryptedMediaTypes.h" |
-#include "public/platform/WebMediaPlayerClient.h" |
+#include "public/platform/WebMediaPlayerEncryptedMediaClient.h" |
namespace blink { |
@@ -21,8 +21,10 @@ class HTMLMediaElement; |
class MediaKeys; |
class ScriptPromise; |
class ScriptState; |
+class WebContentDecryptionModule; |
+class WebMediaPlayer; |
-class MODULES_EXPORT HTMLMediaElementEncryptedMedia final : public NoBaseWillBeGarbageCollected<HTMLMediaElementEncryptedMedia>, public WillBeHeapSupplement<HTMLMediaElement> { |
+class MODULES_EXPORT HTMLMediaElementEncryptedMedia final : public NoBaseWillBeGarbageCollected<HTMLMediaElementEncryptedMedia>, public WillBeHeapSupplement<HTMLMediaElement>, public WebMediaPlayerEncryptedMediaClient { |
WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(HTMLMediaElementEncryptedMedia); |
public: |
#if !ENABLE(OILPAN) |
@@ -46,13 +48,14 @@ public: |
static ScriptPromise setMediaKeys(ScriptState*, HTMLMediaElement&, MediaKeys*); |
DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(encrypted); |
- static void keyAdded(HTMLMediaElement&, const String& keySystem, const String& sessionId); |
- static void keyError(HTMLMediaElement&, const String& keySystem, const String& sessionId, WebMediaPlayerClient::MediaKeyErrorCode, unsigned short systemCode); |
- static void keyMessage(HTMLMediaElement&, const String& keySystem, const String& sessionId, const unsigned char* message, unsigned messageLength, const WebURL& defaultURL); |
- static void encrypted(HTMLMediaElement&, WebEncryptedMediaInitDataType, const unsigned char* initData, unsigned initDataLength); |
- static void didBlockPlaybackWaitingForKey(HTMLMediaElement&); |
- static void didResumePlaybackBlockedForKey(HTMLMediaElement&); |
- static WebContentDecryptionModule* contentDecryptionModule(HTMLMediaElement&); |
+ // WebMediaPlayerEncryptedMediaClient methods |
+ virtual void keyAdded(const WebString& keySystem, const WebString& sessionId) override final; |
+ virtual void keyError(const WebString& keySystem, const WebString& sessionId, WebMediaPlayerEncryptedMediaClient::MediaKeyErrorCode, unsigned short systemCode) override final; |
+ virtual void keyMessage(const WebString& keySystem, const WebString& sessionId, const unsigned char* message, unsigned messageLength, const WebURL& defaultURL) override final; |
+ virtual void encrypted(WebEncryptedMediaInitDataType, const unsigned char* initData, unsigned initDataLength) override final; |
+ virtual void didBlockPlaybackWaitingForKey() override final; |
+ virtual void didResumePlaybackBlockedForKey() override final; |
+ WebContentDecryptionModule* contentDecryptionModule(); |
static HTMLMediaElementEncryptedMedia& from(HTMLMediaElement&); |
static const char* supplementName(); |
@@ -62,7 +65,7 @@ public: |
private: |
friend class SetMediaKeysHandler; |
- HTMLMediaElementEncryptedMedia(); |
+ HTMLMediaElementEncryptedMedia(HTMLMediaElement&); |
void generateKeyRequest(WebMediaPlayer*, const String& keySystem, PassRefPtr<DOMUint8Array> initData, ExceptionState&); |
void addKey(WebMediaPlayer*, const String& keySystem, PassRefPtr<DOMUint8Array> key, PassRefPtr<DOMUint8Array> initData, const String& sessionId, ExceptionState&); |
void cancelKeyRequest(WebMediaPlayer*, const String& keySystem, const String& sessionId, ExceptionState&); |
@@ -81,8 +84,7 @@ private: |
// (v0.1b or WD). Returns whether the mode is allowed and successfully set. |
bool setEmeMode(EmeMode); |
- WebContentDecryptionModule* contentDecryptionModule(); |
- |
+ HTMLMediaElement& m_mediaElement; |
EmeMode m_emeMode; |
bool m_isWaitingForKey; |