Index: public/platform/WebCDMSession.h |
diff --git a/public/webview/WebInbandTextTrack.h b/public/platform/WebCDMSession.h |
similarity index 64% |
copy from public/webview/WebInbandTextTrack.h |
copy to public/platform/WebCDMSession.h |
index cebdf20b8552aee6e4cc4977ebcf6cb7ebbc1e02..d172d03d282df24d1e305d78ccbd1bbeb70da606 100644 |
--- a/public/webview/WebInbandTextTrack.h |
+++ b/public/platform/WebCDMSession.h |
@@ -28,49 +28,41 @@ |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
-#ifndef WebInbandTextTrack_h |
-#define WebInbandTextTrack_h |
+#ifndef WebCDMSession_h |
+#define WebCDMSession_h |
namespace WebKit { |
class WebString; |
-class WebInbandTextTrackClient; |
+class WebURL; |
-class WebInbandTextTrack { |
-public: |
- enum Kind { |
- KindSubtitles, |
- KindCaptions, |
- KindDescriptions, |
- KindChapters, |
- KindMetadata, |
- KindNone |
- }; |
- |
- enum Mode { |
- ModeDisabled, |
- ModeHidden, |
- ModeShowing |
- }; |
+// Abstract interface to the Chromium CDM Session. |
- virtual ~WebInbandTextTrack() {} |
- |
- virtual void setClient(WebInbandTextTrackClient*) = 0; |
- virtual WebInbandTextTrackClient* client() = 0; |
+class WebCDMSession { |
+public: |
+ class Client { |
ddorwin
2013/06/06 23:29:50
Should we prefer [un]nested client classes?
|
+ public: |
+ enum MediaKeyErrorCode { |
+ MediaKeyErrorCodeUnknown = 1, |
+ MediaKeyErrorCodeClient, |
+ }; |
- virtual void setMode(Mode) = 0; |
- virtual Mode mode() const = 0; |
+ virtual void keyAdded() = 0; |
+ virtual void keyError(MediaKeyErrorCode, unsigned long systemCode) = 0; |
+ virtual void keyMessage(const unsigned char* message, unsigned messageLength, const WebKit::WebURL& destinationURL) = 0; |
- virtual Kind kind() const = 0; |
- virtual bool isClosedCaptions() const = 0; |
+ protected: |
+ virtual ~Client() { } |
+ }; |
- virtual WebString label() const = 0; |
- virtual WebString language() const = 0; |
- virtual bool isDefault() const = 0; |
+ virtual ~WebCDMSession() { } |
- virtual int textTrackIndex() const = 0; |
+ virtual const WebString& sessionId() const = 0; |
+ virtual void generateKeyRequest(const WebString& mimeType, const unsigned char* initData, unsigned initDataLength) = 0; |
+ virtual void update(const unsigned char* key, unsigned keyLength) = 0; |
+ virtual void close() = 0; |
}; |
} // namespace WebKit |
-#endif |
+#endif // WebCDMSession_h |