firefox-polyfill.js (1049B)
1 (function(){ 2 if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){ 3 4 // Work around https://bugzilla.mozilla.org/show_bug.cgi?id=1282142 5 // Firefox does not correctly reject the Clear Key session types it does not support 6 var _requestMediaKeySystemAccess = navigator.requestMediaKeySystemAccess.bind( navigator ); 7 8 navigator.requestMediaKeySystemAccess = function( keysystem, configurations ) 9 { 10 if ( keysystem !== 'org.w3.clearkey' ) return _requestMediaKeySystemAccess( keysystem, configurations ); 11 12 var supported_configurations = configurations.filter( function( c ) { 13 14 return !c.sessionTypes || ( c.sessionTypes.length === 1 && c.sessionTypes[ 0 ] === 'temporary' ); 15 16 } ); 17 18 if ( supported_configurations.length === 0 ) return Promise.reject( new DOMException( 'None of the requested configurations were supported.' ) ); 19 20 return _requestMediaKeySystemAccess( keysystem, supported_configurations ); 21 } 22 } 23 }());