Skip to content
  • commit-queue@webkit.org's avatar
    Add Encrypted Media Extensions events and errors to HTMLMediaElement · 710a467a
    commit-queue@webkit.org authored
    https://bugs.webkit.org/show_bug.cgi?id=82974
    
    Patch by David Dorwin <ddorwin@chromium.org> on 2012-04-12
    Reviewed by Adam Barth.
    
    The new events and errors are behind the ENABLE(ENCRYPTED_MEDIA) feature define.
    Implementation is based on v0.1 of the draft proposal at
    http://dvcs.w3.org/hg/html-media/raw-file/tip/encrypted-media/encrypted-media.html#events.
    
    Source/WebCore:
    
    Tests: fast/events/constructors/media-key-event-constructor.html
           media/encrypted-media/encrypted-media-constants.html
           media/encrypted-media/encrypted-media-events.html
    
    * WebCore.gypi:
    * bindings/v8/Dictionary.cpp:
    (WebCore::Dictionary::get):
    (WebCore):
    * bindings/v8/Dictionary.h:
    (WebCore):
    (Dictionary):
    * dom/EventNames.h:
    (WebCore):
    * dom/EventNames.in:
    * html/HTMLAttributeNames.in:
    * html/HTMLMediaElement.cpp:
    (WebCore):
    (WebCore::HTMLMediaElement::mediaPlayerKeyAdded):
    (WebCore::HTMLMediaElement::mediaPlayerKeyError):
    (WebCore::HTMLMediaElement::mediaPlayerKeyMessage):
    (WebCore::HTMLMediaElement::mediaPlayerKeyNeeded):
    * html/HTMLMediaElement.h:
    (HTMLMediaElement):
    * html/HTMLMediaElement.idl:
    * html/MediaError.h:
    * html/MediaError.idl:
    * html/MediaKeyError.h: Added.
    (WebCore):
    (MediaKeyError):
    (WebCore::MediaKeyError::create):
    (WebCore::MediaKeyError::code):
    (WebCore::MediaKeyError::MediaKeyError):
    * html/MediaKeyError.idl: Added.
    * html/MediaKeyEvent.cpp: Added.
    (WebCore):
    (WebCore::MediaKeyEventInit::MediaKeyEventInit):
    (WebCore::MediaKeyEvent::MediaKeyEvent):
    (WebCore::MediaKeyEvent::~MediaKeyEvent):
    (WebCore::MediaKeyEvent::interfaceName):
    * html/MediaKeyEvent.h: Added.
    (WebCore):
    (MediaKeyEventInit):
    (MediaKeyEvent):
    (WebCore::MediaKeyEvent::create):
    (WebCore::MediaKeyEvent::keySystem):
    (WebCore::MediaKeyEvent::sessionId):
    (WebCore::MediaKeyEvent::initData):
    (WebCore::MediaKeyEvent::message):
    (WebCore::MediaKeyEvent::defaultURL):
    (WebCore::MediaKeyEvent::errorCode):
    (WebCore::MediaKeyEvent::systemCode):
    * html/MediaKeyEvent.idl: Added.
    * page/DOMWindow.idl:
    * platform/graphics/MediaPlayer.cpp:
    (WebCore):
    (WebCore::MediaPlayer::keyAdded):
    (WebCore::MediaPlayer::keyError):
    (WebCore::MediaPlayer::keyMessage):
    (WebCore::MediaPlayer::keyNeeded):
    * platform/graphics/MediaPlayer.h:
    (MediaPlayerClient):
    (WebCore::MediaPlayerClient::mediaPlayerKeyAdded):
    (WebCore::MediaPlayerClient::mediaPlayerKeyError):
    (WebCore::MediaPlayerClient::mediaPlayerKeyMessage):
    (WebCore::MediaPlayerClient::mediaPlayerKeyNeeded):
    (MediaPlayer):
    
    Source/WebKit/chromium:
    
    * public/WebMediaPlayerClient.h:
    * src/AssertMatchingEnums.cpp:
    * src/WebMediaPlayerClientImpl.cpp:
    (WebKit::WebMediaPlayerClientImpl::keyAdded):
    (WebKit):
    (WebKit::WebMediaPlayerClientImpl::keyError):
    (WebKit::WebMediaPlayerClientImpl::keyMessage):
    (WebKit::WebMediaPlayerClientImpl::keyNeeded):
    * src/WebMediaPlayerClientImpl.h:
    (WebMediaPlayerClientImpl):
    
    LayoutTests:
    
    * fast/events/constructors/media-key-event-constructor-expected.txt: Added.
    * fast/events/constructors/media-key-event-constructor.html: Added.
    * fast/js/resources/js-test-pre.js:
    (shouldBeZero):
    (shouldBeEmptyString):
    * media/encrypted-media/encrypted-media-constants-expected.txt: Added.
    * media/encrypted-media/encrypted-media-constants.html: Added.
    * media/encrypted-media/encrypted-media-events-expected.txt: Added.
    * media/encrypted-media/encrypted-media-events.html: Added.
    * media/video-test.js:
    (testExpected):
    (testArraysEqual):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@114067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    710a467a