vendor/assets/javascripts/webshims/shims/combos/23.js in webshims-rails-1.14.3 vs vendor/assets/javascripts/webshims/shims/combos/23.js in webshims-rails-1.14.4
- old
+ new
@@ -156,11 +156,11 @@
return true;
} :
webshims.$.noop
;
- if(!Modernizr.video){
+ if(!webshims.support.mediaelement){
loadEmbed();
} else {
webshims.ready('WINDOWLOAD', loadEmbed);
}
@@ -219,13 +219,14 @@
expressInstallCallback: wasRemoved
};
}();
webshims.isReady('swfmini', true);
-;(function(Modernizr, webshims){
+;(function(webshims){
"use strict";
- var hasNative = Modernizr.audio && Modernizr.video;
+ var support = webshims.support;
+ var hasNative = support.mediaelement;
var supportsLoop = false;
var bugs = webshims.bugs;
var swfType = 'mediaelement-jaris';
var loadSwf = function(){
webshims.ready(swfType, function(){
@@ -244,26 +245,26 @@
return;
}
if(hasNative){
var videoElem = document.createElement('video');
- Modernizr.videoBuffered = ('buffered' in videoElem);
- Modernizr.mediaDefaultMuted = ('defaultMuted' in videoElem);
+ support.videoBuffered = ('buffered' in videoElem);
+ support.mediaDefaultMuted = ('defaultMuted' in videoElem);
supportsLoop = ('loop' in videoElem);
- Modernizr.mediaLoop = supportsLoop;
+ support.mediaLoop = supportsLoop;
webshims.capturingEvents(['play', 'playing', 'waiting', 'paused', 'ended', 'durationchange', 'loadedmetadata', 'canplay', 'volumechange']);
- if( !Modernizr.videoBuffered || !supportsLoop || (!Modernizr.mediaDefaultMuted && isIE && 'ActiveXObject' in window) ){
+ if( !support.videoBuffered || !supportsLoop || (!support.mediaDefaultMuted && isIE && 'ActiveXObject' in window) ){
webshims.addPolyfill('mediaelement-native-fix', {
d: ['dom-support']
});
webshims.loader.loadList(['mediaelement-native-fix']);
}
}
- if(Modernizr.track && !bugs.track){
+ if(support.track && !bugs.track){
(function(){
if(!bugs.track){
if(window.VTTCue && !window.TextTrackCue){
window.TextTrackCue = window.VTTCue;
@@ -591,23 +592,11 @@
if(data && data.isActive == 'third') {
mediaelement.setActive(elem, 'html5', data);
}
}
};
- var allowedPreload = {'metadata': 1, 'auto': 1, '': 1};
- var fixPreload = function(elem){
- var preload, img;
- if(elem.getAttribute('preload') == 'none'){
- if(allowedPreload[(preload = $.attr(elem, 'data-preload'))]){
- $.attr(elem, 'preload', preload);
- } else if(hasNative && (preload = elem.getAttribute('poster'))){
- img = document.createElement('img');
- img.src = preload;
- }
- }
- };
- var stopParent = /^(?:embed|object|datalist)$/i;
+ var stopParent = /^(?:embed|object|datalist|picture)$/i;
var selectSource = function(elem, data){
var baseData = webshims.data(elem, 'mediaelementBase') || webshims.data(elem, 'mediaelementBase', {});
var _srces = mediaelement.srces(elem);
var parent = elem.parentNode;
@@ -618,11 +607,10 @@
if(!_srces.length || !parent || parent.nodeType != 1 || stopParent.test(parent.nodeName || '')){return;}
data = data || webshims.data(elem, 'mediaelement');
if(mediaelement.sortMedia){
_srces.sort(mediaelement.sortMedia);
}
- fixPreload(elem);
stepSources(elem, data, _srces);
};
mediaelement.selectSource = selectSource;
@@ -642,11 +630,11 @@
var initMediaElements = function(){
var testFixMedia = function(){
if(webshims.implement(this, 'mediaelement')){
selectSource(this);
- if(!Modernizr.mediaDefaultMuted && $.attr(this, 'muted') != null){
+ if(!support.mediaDefaultMuted && $.attr(this, 'muted') != null){
$.prop(this, 'muted', true);
}
}
};
@@ -667,11 +655,11 @@
selectSource(this, data);
if(hasNative && (!data || data.isActive == 'html5') && supLoad.prop._supvalue){
supLoad.prop._supvalue.apply(this, arguments);
}
- if(!loadTrackUi.loaded && $('track', this).length){
+ if(!loadTrackUi.loaded && this.querySelector('track')){
loadTrackUi();
}
$(this).triggerHandler('wsmediareload');
}
}
@@ -766,6 +754,6 @@
webshims.ready(swfType, initMediaElements);
}
webshims.ready('track', loadTrackUi);
});
-})(Modernizr, webshims);
+})(webshims);