Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(50)

Side by Side Diff: Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.cpp

Issue 216523002: Oilpan: Replace most of RefPtrs for Event objects with oilpan's transition types (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "config.h" 5 #include "config.h"
6 #include "modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h" 6 #include "modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h"
7 7
8 #include "RuntimeEnabledFeatures.h" 8 #include "RuntimeEnabledFeatures.h"
9 #include "bindings/v8/ExceptionState.h" 9 #include "bindings/v8/ExceptionState.h"
10 #include "core/dom/ExceptionCode.h" 10 #include "core/dom/ExceptionCode.h"
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::setMediaKeys"); 105 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::setMediaKeys");
106 HTMLMediaElementEncryptedMedia& thisElement = HTMLMediaElementEncryptedMedia ::from(element); 106 HTMLMediaElementEncryptedMedia& thisElement = HTMLMediaElementEncryptedMedia ::from(element);
107 107
108 if (!thisElement.setEmeMode(EmeModeUnprefixed, exceptionState)) 108 if (!thisElement.setEmeMode(EmeModeUnprefixed, exceptionState))
109 return; 109 return;
110 110
111 thisElement.setMediaKeysInternal(element, mediaKeys); 111 thisElement.setMediaKeysInternal(element, mediaKeys);
112 } 112 }
113 113
114 // Create a MediaKeyNeededEvent for WD EME. 114 // Create a MediaKeyNeededEvent for WD EME.
115 static PassRefPtr<Event> createNeedKeyEvent(const String& contentType, const uns igned char* initData, unsigned initDataLength) 115 static PassRefPtrWillBeRawPtr<Event> createNeedKeyEvent(const String& contentTyp e, const unsigned char* initData, unsigned initDataLength)
116 { 116 {
117 MediaKeyNeededEventInit initializer; 117 MediaKeyNeededEventInit initializer;
118 initializer.contentType = contentType; 118 initializer.contentType = contentType;
119 initializer.initData = Uint8Array::create(initData, initDataLength); 119 initializer.initData = Uint8Array::create(initData, initDataLength);
120 initializer.bubbles = false; 120 initializer.bubbles = false;
121 initializer.cancelable = false; 121 initializer.cancelable = false;
122 122
123 return MediaKeyNeededEvent::create(EventTypeNames::needkey, initializer); 123 return MediaKeyNeededEvent::create(EventTypeNames::needkey, initializer);
124 } 124 }
125 125
126 // Create a 'needkey' MediaKeyEvent for v0.1b EME. 126 // Create a 'needkey' MediaKeyEvent for v0.1b EME.
127 static PassRefPtr<Event> createWebkitNeedKeyEvent(const String& contentType, con st unsigned char* initData, unsigned initDataLength) 127 static PassRefPtrWillBeRawPtr<Event> createWebkitNeedKeyEvent(const String& cont entType, const unsigned char* initData, unsigned initDataLength)
128 { 128 {
129 MediaKeyEventInit webkitInitializer; 129 MediaKeyEventInit webkitInitializer;
130 webkitInitializer.keySystem = String(); 130 webkitInitializer.keySystem = String();
131 webkitInitializer.sessionId = String(); 131 webkitInitializer.sessionId = String();
132 webkitInitializer.initData = Uint8Array::create(initData, initDataLength); 132 webkitInitializer.initData = Uint8Array::create(initData, initDataLength);
133 webkitInitializer.bubbles = false; 133 webkitInitializer.bubbles = false;
134 webkitInitializer.cancelable = false; 134 webkitInitializer.cancelable = false;
135 135
136 return MediaKeyEvent::create(EventTypeNames::webkitneedkey, webkitInitialize r); 136 return MediaKeyEvent::create(EventTypeNames::webkitneedkey, webkitInitialize r);
137 } 137 }
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
251 void HTMLMediaElementEncryptedMedia::keyAdded(HTMLMediaElement& element, const S tring& keySystem, const String& sessionId) 251 void HTMLMediaElementEncryptedMedia::keyAdded(HTMLMediaElement& element, const S tring& keySystem, const String& sessionId)
252 { 252 {
253 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyAdded"); 253 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyAdded");
254 254
255 MediaKeyEventInit initializer; 255 MediaKeyEventInit initializer;
256 initializer.keySystem = keySystem; 256 initializer.keySystem = keySystem;
257 initializer.sessionId = sessionId; 257 initializer.sessionId = sessionId;
258 initializer.bubbles = false; 258 initializer.bubbles = false;
259 initializer.cancelable = false; 259 initializer.cancelable = false;
260 260
261 RefPtr<Event> event = MediaKeyEvent::create(EventTypeNames::webkitkeyadded, initializer); 261 RefPtrWillBeRawPtr<Event> event = MediaKeyEvent::create(EventTypeNames::webk itkeyadded, initializer);
262 event->setTarget(&element); 262 event->setTarget(&element);
263 element.scheduleEvent(event.release()); 263 element.scheduleEvent(event.release());
264 } 264 }
265 265
266 void HTMLMediaElementEncryptedMedia::keyError(HTMLMediaElement& element, const S tring& keySystem, const String& sessionId, blink::WebMediaPlayerClient::MediaKey ErrorCode errorCode, unsigned short systemCode) 266 void HTMLMediaElementEncryptedMedia::keyError(HTMLMediaElement& element, const S tring& keySystem, const String& sessionId, blink::WebMediaPlayerClient::MediaKey ErrorCode errorCode, unsigned short systemCode)
267 { 267 {
268 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyError: session ID=%s, errorCode=%d, systemCode=%d", sessionId.utf8().data(), errorCode, systemC ode); 268 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyError: session ID=%s, errorCode=%d, systemCode=%d", sessionId.utf8().data(), errorCode, systemC ode);
269 269
270 MediaKeyError::Code mediaKeyErrorCode = MediaKeyError::MEDIA_KEYERR_UNKNOWN; 270 MediaKeyError::Code mediaKeyErrorCode = MediaKeyError::MEDIA_KEYERR_UNKNOWN;
271 switch (errorCode) { 271 switch (errorCode) {
(...skipping 18 matching lines...) Expand all
290 } 290 }
291 291
292 MediaKeyEventInit initializer; 292 MediaKeyEventInit initializer;
293 initializer.keySystem = keySystem; 293 initializer.keySystem = keySystem;
294 initializer.sessionId = sessionId; 294 initializer.sessionId = sessionId;
295 initializer.errorCode = MediaKeyError::create(mediaKeyErrorCode); 295 initializer.errorCode = MediaKeyError::create(mediaKeyErrorCode);
296 initializer.systemCode = systemCode; 296 initializer.systemCode = systemCode;
297 initializer.bubbles = false; 297 initializer.bubbles = false;
298 initializer.cancelable = false; 298 initializer.cancelable = false;
299 299
300 RefPtr<Event> event = MediaKeyEvent::create(EventTypeNames::webkitkeyerror, initializer); 300 RefPtrWillBeRawPtr<Event> event = MediaKeyEvent::create(EventTypeNames::webk itkeyerror, initializer);
301 event->setTarget(&element); 301 event->setTarget(&element);
302 element.scheduleEvent(event.release()); 302 element.scheduleEvent(event.release());
303 } 303 }
304 304
305 void HTMLMediaElementEncryptedMedia::keyMessage(HTMLMediaElement& element, const String& keySystem, const String& sessionId, const unsigned char* message, unsig ned messageLength, const blink::WebURL& defaultURL) 305 void HTMLMediaElementEncryptedMedia::keyMessage(HTMLMediaElement& element, const String& keySystem, const String& sessionId, const unsigned char* message, unsig ned messageLength, const blink::WebURL& defaultURL)
306 { 306 {
307 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyMessage: sessi onID=%s", sessionId.utf8().data()); 307 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyMessage: sessi onID=%s", sessionId.utf8().data());
308 308
309 MediaKeyEventInit initializer; 309 MediaKeyEventInit initializer;
310 initializer.keySystem = keySystem; 310 initializer.keySystem = keySystem;
311 initializer.sessionId = sessionId; 311 initializer.sessionId = sessionId;
312 initializer.message = Uint8Array::create(message, messageLength); 312 initializer.message = Uint8Array::create(message, messageLength);
313 initializer.defaultURL = KURL(defaultURL); 313 initializer.defaultURL = KURL(defaultURL);
314 initializer.bubbles = false; 314 initializer.bubbles = false;
315 initializer.cancelable = false; 315 initializer.cancelable = false;
316 316
317 RefPtr<Event> event = MediaKeyEvent::create(EventTypeNames::webkitkeymessage , initializer); 317 RefPtrWillBeRawPtr<Event> event = MediaKeyEvent::create(EventTypeNames::webk itkeymessage, initializer);
318 event->setTarget(&element); 318 event->setTarget(&element);
319 element.scheduleEvent(event.release()); 319 element.scheduleEvent(event.release());
320 } 320 }
321 321
322 void HTMLMediaElementEncryptedMedia::keyNeeded(HTMLMediaElement& element, const String& contentType, const unsigned char* initData, unsigned initDataLength) 322 void HTMLMediaElementEncryptedMedia::keyNeeded(HTMLMediaElement& element, const String& contentType, const unsigned char* initData, unsigned initDataLength)
323 { 323 {
324 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyNeeded: conten tType=%s", contentType.utf8().data()); 324 WTF_LOG(Media, "HTMLMediaElementEncryptedMedia::mediaPlayerKeyNeeded: conten tType=%s", contentType.utf8().data());
325 325
326 if (RuntimeEnabledFeatures::encryptedMediaEnabled()) { 326 if (RuntimeEnabledFeatures::encryptedMediaEnabled()) {
327 // Send event for WD EME. 327 // Send event for WD EME.
328 RefPtr<Event> event = createNeedKeyEvent(contentType, initData, initData Length); 328 RefPtrWillBeRawPtr<Event> event = createNeedKeyEvent(contentType, initDa ta, initDataLength);
329 event->setTarget(&element); 329 event->setTarget(&element);
330 element.scheduleEvent(event.release()); 330 element.scheduleEvent(event.release());
331 } 331 }
332 332
333 if (RuntimeEnabledFeatures::prefixedEncryptedMediaEnabled()) { 333 if (RuntimeEnabledFeatures::prefixedEncryptedMediaEnabled()) {
334 // Send event for v0.1b EME. 334 // Send event for v0.1b EME.
335 RefPtr<Event> event = createWebkitNeedKeyEvent(contentType, initData, in itDataLength); 335 RefPtrWillBeRawPtr<Event> event = createWebkitNeedKeyEvent(contentType, initData, initDataLength);
336 event->setTarget(&element); 336 event->setTarget(&element);
337 element.scheduleEvent(event.release()); 337 element.scheduleEvent(event.release());
338 } 338 }
339 } 339 }
340 340
341 void HTMLMediaElementEncryptedMedia::playerDestroyed(HTMLMediaElement& element) 341 void HTMLMediaElementEncryptedMedia::playerDestroyed(HTMLMediaElement& element)
342 { 342 {
343 HTMLMediaElementEncryptedMedia& thisElement = HTMLMediaElementEncryptedMedia ::from(element); 343 HTMLMediaElementEncryptedMedia& thisElement = HTMLMediaElementEncryptedMedia ::from(element);
344 thisElement.setMediaKeysInternal(element, 0); 344 thisElement.setMediaKeysInternal(element, 0);
345 } 345 }
346 346
347 blink::WebContentDecryptionModule* HTMLMediaElementEncryptedMedia::contentDecryp tionModule(HTMLMediaElement& element) 347 blink::WebContentDecryptionModule* HTMLMediaElementEncryptedMedia::contentDecryp tionModule(HTMLMediaElement& element)
348 { 348 {
349 HTMLMediaElementEncryptedMedia& thisElement = HTMLMediaElementEncryptedMedia ::from(element); 349 HTMLMediaElementEncryptedMedia& thisElement = HTMLMediaElementEncryptedMedia ::from(element);
350 return thisElement.contentDecryptionModule(); 350 return thisElement.contentDecryptionModule();
351 } 351 }
352 352
353 } // namespace WebCore 353 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698