webshims-rails 1.14.6 → 1.15.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/webshims-rails/version.rb +2 -2
- data/vendor/assets/javascripts/webshims/polyfiller.js +145 -139
- data/vendor/assets/javascripts/webshims/shims/canvas-blob.js +97 -0
- data/vendor/assets/javascripts/webshims/shims/combos/1.js +13 -15
- data/vendor/assets/javascripts/webshims/shims/combos/10.js +29 -28
- data/vendor/assets/javascripts/webshims/shims/combos/11.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/combos/12.js +22 -10
- data/vendor/assets/javascripts/webshims/shims/combos/13.js +22 -10
- data/vendor/assets/javascripts/webshims/shims/combos/15.js +28 -43
- data/vendor/assets/javascripts/webshims/shims/combos/16.js +41 -44
- data/vendor/assets/javascripts/webshims/shims/combos/17.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/combos/2.js +40 -42
- data/vendor/assets/javascripts/webshims/shims/combos/21.js +98 -71
- data/vendor/assets/javascripts/webshims/shims/combos/22.js +9 -9
- data/vendor/assets/javascripts/webshims/shims/combos/23.js +13 -1
- data/vendor/assets/javascripts/webshims/shims/combos/25.js +141 -51
- data/vendor/assets/javascripts/webshims/shims/combos/27.js +66 -12
- data/vendor/assets/javascripts/webshims/shims/combos/28.js +1 -2
- data/vendor/assets/javascripts/webshims/shims/combos/3.js +27 -41
- data/vendor/assets/javascripts/webshims/shims/combos/30.js +27 -41
- data/vendor/assets/javascripts/webshims/shims/combos/31.js +27 -41
- data/vendor/assets/javascripts/webshims/shims/combos/34.js +36 -36
- data/vendor/assets/javascripts/webshims/shims/combos/4.js +27 -27
- data/vendor/assets/javascripts/webshims/shims/combos/5.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/combos/6.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/combos/7.js +40 -42
- data/vendor/assets/javascripts/webshims/shims/combos/8.js +40 -42
- data/vendor/assets/javascripts/webshims/shims/combos/9.js +29 -28
- data/vendor/assets/javascripts/webshims/shims/combos/98.js +4 -2
- data/vendor/assets/javascripts/webshims/shims/combos/99.js +4 -2
- data/vendor/assets/javascripts/webshims/shims/dom-extend.js +27 -27
- data/vendor/assets/javascripts/webshims/shims/es6.js +23 -29
- data/vendor/assets/javascripts/webshims/shims/{filereader.js → filereader-xhr.js} +66 -12
- data/vendor/assets/javascripts/webshims/shims/form-core.js +0 -14
- data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend.js +1 -2
- data/vendor/assets/javascripts/webshims/shims/form-validation.js +18 -5
- data/vendor/assets/javascripts/webshims/shims/form-validators.js +15 -14
- data/vendor/assets/javascripts/webshims/shims/geolocation.js +41 -50
- data/vendor/assets/javascripts/webshims/shims/jme/controls.css +4 -4
- data/vendor/assets/javascripts/webshims/shims/jme/controls.scss +2 -1
- data/vendor/assets/javascripts/webshims/shims/jme/mediacontrols.js +4 -2
- data/vendor/assets/javascripts/webshims/shims/mediacapture-picker.js +42 -0
- data/vendor/assets/javascripts/webshims/shims/mediacapture.js +159 -0
- data/vendor/assets/javascripts/webshims/shims/mediaelement-core.js +13 -1
- data/vendor/assets/javascripts/webshims/shims/mediaelement-jaris.js +48 -12
- data/vendor/assets/javascripts/webshims/shims/mediaelement-yt.js +20 -8
- data/vendor/assets/javascripts/webshims/shims/{combos/26.js → moxie/js/moxie-html4.js} +2121 -1257
- data/vendor/assets/javascripts/webshims/shims/moxie/js/{moxie.js → moxie-swf.js} +1125 -1741
- data/vendor/assets/javascripts/webshims/shims/sticky.js +585 -0
- data/vendor/assets/javascripts/webshims/shims/styles/forms-picker.css +20 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-picker.scss +23 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim.scss +74 -34
- data/vendor/assets/javascripts/webshims/shims/styles/shim-ext.css +78 -31
- data/vendor/assets/javascripts/webshims/shims/styles/shim.css +78 -31
- data/vendor/assets/javascripts/webshims/shims/swf/JarisFLVPlayer.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/track-ui.js +214 -111
- data/vendor/assets/javascripts/webshims/shims/track.js +9 -9
- data/vendor/assets/javascripts/webshims/shims/usermedia-core.js +27 -0
- data/vendor/assets/javascripts/webshims/shims/usermedia-shim.js +34 -37
- metadata +9 -8
- data/vendor/assets/javascripts/webshims/shims/jajax.js +0 -1262
- data/vendor/assets/javascripts/webshims/shims/moxie/silverlight/Moxie.cdn.xap +0 -0
- data/vendor/assets/javascripts/webshims/shims/moxie/silverlight/Moxie.min.xap +0 -0
@@ -0,0 +1,97 @@
|
|
1
|
+
/*
|
2
|
+
* JavaScript Canvas to Blob 2.0.5
|
3
|
+
* https://github.com/blueimp/JavaScript-Canvas-to-Blob
|
4
|
+
*
|
5
|
+
* Copyright 2012, Sebastian Tschan
|
6
|
+
* https://blueimp.net
|
7
|
+
*
|
8
|
+
* Licensed under the MIT license:
|
9
|
+
* http://www.opensource.org/licenses/MIT
|
10
|
+
*
|
11
|
+
* Based on stackoverflow user Stoive's code snippet:
|
12
|
+
* http://stackoverflow.com/q/4998908
|
13
|
+
*/
|
14
|
+
|
15
|
+
/*jslint nomen: true, regexp: true */
|
16
|
+
/*global window, atob, Blob, ArrayBuffer, Uint8Array, define */
|
17
|
+
|
18
|
+
(function (window) {
|
19
|
+
'use strict';
|
20
|
+
var CanvasPrototype = window.HTMLCanvasElement &&
|
21
|
+
window.HTMLCanvasElement.prototype,
|
22
|
+
hasBlobConstructor = window.Blob && (function () {
|
23
|
+
try {
|
24
|
+
return Boolean(new Blob());
|
25
|
+
} catch (e) {
|
26
|
+
return false;
|
27
|
+
}
|
28
|
+
}()),
|
29
|
+
hasArrayBufferViewSupport = hasBlobConstructor && window.Uint8Array &&
|
30
|
+
(function () {
|
31
|
+
try {
|
32
|
+
return new Blob([new Uint8Array(100)]).size === 100;
|
33
|
+
} catch (e) {
|
34
|
+
return false;
|
35
|
+
}
|
36
|
+
}()),
|
37
|
+
BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder ||
|
38
|
+
window.MozBlobBuilder || window.MSBlobBuilder,
|
39
|
+
dataURLtoBlob = (hasBlobConstructor || BlobBuilder) && window.atob &&
|
40
|
+
window.ArrayBuffer && window.Uint8Array && function (dataURI) {
|
41
|
+
var byteString,
|
42
|
+
arrayBuffer,
|
43
|
+
intArray,
|
44
|
+
i,
|
45
|
+
mimeString,
|
46
|
+
bb;
|
47
|
+
if (dataURI.split(',')[0].indexOf('base64') >= 0) {
|
48
|
+
// Convert base64 to raw binary data held in a string:
|
49
|
+
byteString = atob(dataURI.split(',')[1]);
|
50
|
+
} else {
|
51
|
+
// Convert base64/URLEncoded data component to raw binary data:
|
52
|
+
byteString = decodeURIComponent(dataURI.split(',')[1]);
|
53
|
+
}
|
54
|
+
// Write the bytes of the string to an ArrayBuffer:
|
55
|
+
arrayBuffer = new ArrayBuffer(byteString.length);
|
56
|
+
intArray = new Uint8Array(arrayBuffer);
|
57
|
+
for (i = 0; i < byteString.length; i += 1) {
|
58
|
+
intArray[i] = byteString.charCodeAt(i);
|
59
|
+
}
|
60
|
+
// Separate out the mime component:
|
61
|
+
mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
|
62
|
+
// Write the ArrayBuffer (or ArrayBufferView) to a blob:
|
63
|
+
if (hasBlobConstructor) {
|
64
|
+
return new Blob(
|
65
|
+
[hasArrayBufferViewSupport ? intArray : arrayBuffer],
|
66
|
+
{type: mimeString}
|
67
|
+
);
|
68
|
+
}
|
69
|
+
bb = new BlobBuilder();
|
70
|
+
bb.append(arrayBuffer);
|
71
|
+
return bb.getBlob(mimeString);
|
72
|
+
};
|
73
|
+
if (window.HTMLCanvasElement && !CanvasPrototype.toBlob) {
|
74
|
+
if (CanvasPrototype.mozGetAsFile) {
|
75
|
+
CanvasPrototype.toBlob = function (callback, type, quality) {
|
76
|
+
if (quality && CanvasPrototype.toDataURL && dataURLtoBlob) {
|
77
|
+
callback(dataURLtoBlob(this.toDataURL(type, quality)));
|
78
|
+
} else {
|
79
|
+
callback(this.mozGetAsFile('blob', type));
|
80
|
+
}
|
81
|
+
};
|
82
|
+
} else if (CanvasPrototype.toDataURL && dataURLtoBlob) {
|
83
|
+
CanvasPrototype.toBlob = function (callback, type, quality) {
|
84
|
+
callback(dataURLtoBlob(this.toDataURL(type, quality)));
|
85
|
+
};
|
86
|
+
}
|
87
|
+
}
|
88
|
+
if (typeof define === 'function' && define.amd) {
|
89
|
+
define(function () {
|
90
|
+
return dataURLtoBlob;
|
91
|
+
});
|
92
|
+
} else {
|
93
|
+
window.dataURLtoBlob = dataURLtoBlob;
|
94
|
+
}
|
95
|
+
}(this));
|
96
|
+
|
97
|
+
webshim.isReady('canvas-blob', true);
|
@@ -524,20 +524,6 @@ webshims.isReady('swfmini', true);
|
|
524
524
|
}
|
525
525
|
});
|
526
526
|
|
527
|
-
$(function(){
|
528
|
-
var fileReaderReady = ('FileReader' in window && 'FormData' in window);
|
529
|
-
if(!fileReaderReady){
|
530
|
-
webshims.addReady(function(context){
|
531
|
-
if(!fileReaderReady && !modules.filereader.loaded && !modules.moxie.loaded){
|
532
|
-
if(context.querySelector('input.ws-filereader')){
|
533
|
-
webshims.reTest(['filereader', 'moxie']);
|
534
|
-
fileReaderReady = true;
|
535
|
-
}
|
536
|
-
}
|
537
|
-
});
|
538
|
-
}
|
539
|
-
});
|
540
|
-
|
541
527
|
if(options.addValidators && options.fastValidators){
|
542
528
|
webshims.reTest(['form-validators', 'form-validation']);
|
543
529
|
}
|
@@ -606,9 +592,16 @@ webshims.isReady('swfmini', true);
|
|
606
592
|
})();
|
607
593
|
}
|
608
594
|
|
595
|
+
if(window.CanvasRenderingContext2D && CanvasRenderingContext2D.prototype){
|
596
|
+
CanvasRenderingContext2D.prototype.wsImageComplete = function(cb){
|
597
|
+
cb.call(this, this);
|
598
|
+
};
|
599
|
+
}
|
600
|
+
|
609
601
|
webshims.register('mediaelement-core', function($, webshims, window, document, undefined, options){
|
610
602
|
var hasSwf = swfmini.hasFlashPlayerVersion('11.3');
|
611
603
|
var mediaelement = webshims.mediaelement;
|
604
|
+
var allowYtLoading = false;
|
612
605
|
|
613
606
|
mediaelement.parseRtmp = function(data){
|
614
607
|
var src = data.src.split('://');
|
@@ -704,7 +697,9 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
704
697
|
return function(){
|
705
698
|
if(loaded || !hasYt){return;}
|
706
699
|
loaded = true;
|
707
|
-
|
700
|
+
if(allowYtLoading){
|
701
|
+
webshims.loader.loadScript("https://www.youtube.com/player_api");
|
702
|
+
}
|
708
703
|
$(function(){
|
709
704
|
webshims._polyfill(["mediaelement-yt"]);
|
710
705
|
});
|
@@ -890,6 +885,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
890
885
|
}
|
891
886
|
});
|
892
887
|
if(!requested && hasYt && !mediaelement.createSWF){
|
888
|
+
allowYtLoading = true;
|
893
889
|
loadYt();
|
894
890
|
}
|
895
891
|
};
|
@@ -1054,6 +1050,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
1054
1050
|
.add(insertedElement.filter('video, audio'))
|
1055
1051
|
.each(function(){
|
1056
1052
|
if(!mediaelement.canNativePlaySrces(this)){
|
1053
|
+
allowYtLoading = true;
|
1057
1054
|
loadThird();
|
1058
1055
|
handleMedia = true;
|
1059
1056
|
return false;
|
@@ -1076,6 +1073,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
1076
1073
|
mediaelement.loadDebugger();
|
1077
1074
|
});
|
1078
1075
|
}
|
1076
|
+
|
1079
1077
|
//set native implementation ready, before swf api is retested
|
1080
1078
|
if(hasNative){
|
1081
1079
|
webshims.isReady('mediaelement-core', true);
|
@@ -64,11 +64,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
64
64
|
webshims.assumeARIA = true;
|
65
65
|
|
66
66
|
if($('<input type="email" />').attr('type') == 'text' || $('<form />').attr('novalidate') === "" || ('required' in $('<input />')[0].attributes)){
|
67
|
-
webshims.error("IE browser modes are busted in IE10+. Please test your HTML/CSS/JS with a real IE version or at least IETester or
|
68
|
-
}
|
69
|
-
|
70
|
-
if('debug' in webshims){
|
71
|
-
webshims.error('Use webshims.setOptions("debug", true||false||"noCombo"); to debug flag');
|
67
|
+
webshims.error("IE browser modes are busted in IE10+. Make sure to run IE in edge mode (X-UA-Compatible). Please test your HTML/CSS/JS with a real IE version or at least IETester or similar tools. ");
|
72
68
|
}
|
73
69
|
|
74
70
|
if (!webshims.cfg.no$Switch) {
|
@@ -681,33 +677,37 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
681
677
|
}
|
682
678
|
},
|
683
679
|
handler: (function(){
|
680
|
+
var evt;
|
684
681
|
var trigger = function(){
|
685
|
-
$(document).triggerHandler('updateshadowdom');
|
682
|
+
$(document).triggerHandler('updateshadowdom', [evt]);
|
686
683
|
};
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
var width = $window.width();
|
692
|
-
var height = $window.width();
|
684
|
+
var timed = function(){
|
685
|
+
if(evt && evt.type == 'resize'){
|
686
|
+
var width = $window.width();
|
687
|
+
var height = $window.width();
|
693
688
|
|
694
|
-
|
695
|
-
|
696
|
-
}
|
697
|
-
lastHeight = height;
|
698
|
-
lastWidth = width;
|
699
|
-
|
700
|
-
docObserve.height = docObserve.getHeight();
|
701
|
-
docObserve.width = docObserve.getWidth();
|
689
|
+
if(height == lastHeight && width == lastWidth){
|
690
|
+
return;
|
702
691
|
}
|
692
|
+
lastHeight = height;
|
693
|
+
lastWidth = width;
|
694
|
+
}
|
703
695
|
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
696
|
+
if(evt && evt.type != 'docresize'){
|
697
|
+
docObserve.height = docObserve.getHeight();
|
698
|
+
docObserve.width = docObserve.getWidth();
|
699
|
+
}
|
700
|
+
|
701
|
+
if(window.requestAnimationFrame){
|
702
|
+
requestAnimationFrame(trigger);
|
703
|
+
} else {
|
704
|
+
setTimeout(trigger, 0);
|
705
|
+
}
|
706
|
+
};
|
707
|
+
return function(e){
|
708
|
+
clearTimeout(resizeTimer);
|
709
|
+
evt = e;
|
710
|
+
resizeTimer = setTimeout(timed, (e.type == 'resize' && !window.requestAnimationFrame) ? 50 : 9);
|
711
711
|
};
|
712
712
|
})(),
|
713
713
|
_create: function(){
|
@@ -3045,7 +3045,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3045
3045
|
|
3046
3046
|
(function(){
|
3047
3047
|
var picker = {};
|
3048
|
-
var
|
3048
|
+
var modern = window.Modernizr;
|
3049
|
+
var assumeVirtualKeyBoard = (modern && (modern.touchevents || modern.touch)) || (/android|iphone|ipad|ipod|blackberry|iemobile/i.test(navigator.userAgent.toLowerCase()));
|
3049
3050
|
webshims.inlinePopover = {
|
3050
3051
|
_create: function(){
|
3051
3052
|
this.element = $('<div class="ws-inline-picker"><div class="ws-po-box" /></div>').data('wspopover', this);
|
@@ -1814,7 +1814,8 @@
|
|
1814
1814
|
|
1815
1815
|
(function(){
|
1816
1816
|
var picker = {};
|
1817
|
-
var
|
1817
|
+
var modern = window.Modernizr;
|
1818
|
+
var assumeVirtualKeyBoard = (modern && (modern.touchevents || modern.touch)) || (/android|iphone|ipad|ipod|blackberry|iemobile/i.test(navigator.userAgent.toLowerCase()));
|
1818
1819
|
webshims.inlinePopover = {
|
1819
1820
|
_create: function(){
|
1820
1821
|
this.element = $('<div class="ws-inline-picker"><div class="ws-po-box" /></div>').data('wspopover', this);
|
@@ -281,9 +281,16 @@ webshims.isReady('swfmini', true);
|
|
281
281
|
})();
|
282
282
|
}
|
283
283
|
|
284
|
+
if(window.CanvasRenderingContext2D && CanvasRenderingContext2D.prototype){
|
285
|
+
CanvasRenderingContext2D.prototype.wsImageComplete = function(cb){
|
286
|
+
cb.call(this, this);
|
287
|
+
};
|
288
|
+
}
|
289
|
+
|
284
290
|
webshims.register('mediaelement-core', function($, webshims, window, document, undefined, options){
|
285
291
|
var hasSwf = swfmini.hasFlashPlayerVersion('11.3');
|
286
292
|
var mediaelement = webshims.mediaelement;
|
293
|
+
var allowYtLoading = false;
|
287
294
|
|
288
295
|
mediaelement.parseRtmp = function(data){
|
289
296
|
var src = data.src.split('://');
|
@@ -379,7 +386,9 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
379
386
|
return function(){
|
380
387
|
if(loaded || !hasYt){return;}
|
381
388
|
loaded = true;
|
382
|
-
|
389
|
+
if(allowYtLoading){
|
390
|
+
webshims.loader.loadScript("https://www.youtube.com/player_api");
|
391
|
+
}
|
383
392
|
$(function(){
|
384
393
|
webshims._polyfill(["mediaelement-yt"]);
|
385
394
|
});
|
@@ -565,6 +574,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
565
574
|
}
|
566
575
|
});
|
567
576
|
if(!requested && hasYt && !mediaelement.createSWF){
|
577
|
+
allowYtLoading = true;
|
568
578
|
loadYt();
|
569
579
|
}
|
570
580
|
};
|
@@ -729,6 +739,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
729
739
|
.add(insertedElement.filter('video, audio'))
|
730
740
|
.each(function(){
|
731
741
|
if(!mediaelement.canNativePlaySrces(this)){
|
742
|
+
allowYtLoading = true;
|
732
743
|
loadThird();
|
733
744
|
handleMedia = true;
|
734
745
|
return false;
|
@@ -751,6 +762,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
751
762
|
mediaelement.loadDebugger();
|
752
763
|
});
|
753
764
|
}
|
765
|
+
|
754
766
|
//set native implementation ready, before swf api is retested
|
755
767
|
if(hasNative){
|
756
768
|
webshims.isReady('mediaelement-core', true);
|
@@ -835,8 +847,12 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
835
847
|
var lastCue = this.cues[this.cues.length-1];
|
836
848
|
if(lastCue && lastCue.startTime > cue.startTime){
|
837
849
|
webshims.error("cue startTime higher than previous cue's startTime");
|
850
|
+
return;
|
838
851
|
}
|
839
852
|
}
|
853
|
+
if(cue.startTime >= cue.endTime ){
|
854
|
+
webshim.error('startTime >= endTime of cue: '+ cue.text);
|
855
|
+
}
|
840
856
|
if(cue.track && cue.track.removeCue){
|
841
857
|
cue.track.removeCue(cue);
|
842
858
|
}
|
@@ -928,6 +944,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
928
944
|
for(i = 0, len = added.length; i < len; i++){
|
929
945
|
$([trackList]).triggerHandler($.Event({type: 'addtrack', track: added[i]}));
|
930
946
|
}
|
947
|
+
//todo: remove
|
931
948
|
if(baseData.scriptedTextTracks || removed.length){
|
932
949
|
$(this).triggerHandler('updatetrackdisplay');
|
933
950
|
}
|
@@ -944,7 +961,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
944
961
|
setTimeout(function(){
|
945
962
|
$(track).closest('audio, video').triggerHandler('updatetrackdisplay');
|
946
963
|
trackData.isTriggering = false;
|
947
|
-
},
|
964
|
+
}, 9);
|
948
965
|
}
|
949
966
|
};
|
950
967
|
var isDefaultTrack = (function(){
|
@@ -1137,15 +1154,10 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
1137
1154
|
error: error
|
1138
1155
|
});
|
1139
1156
|
};
|
1140
|
-
if(
|
1141
|
-
|
1142
|
-
setTimeout(createAjax, loadingTracks * 2);
|
1143
|
-
} else {
|
1144
|
-
createAjax();
|
1145
|
-
}
|
1157
|
+
if(isDisabled){
|
1158
|
+
setTimeout(createAjax, loadingTracks * 2);
|
1146
1159
|
} else {
|
1147
|
-
|
1148
|
-
webshims.loader.loadList(['jajax']);
|
1160
|
+
createAjax();
|
1149
1161
|
}
|
1150
1162
|
} catch(er){
|
1151
1163
|
error();
|
@@ -58,9 +58,16 @@
|
|
58
58
|
})();
|
59
59
|
}
|
60
60
|
|
61
|
+
if(window.CanvasRenderingContext2D && CanvasRenderingContext2D.prototype){
|
62
|
+
CanvasRenderingContext2D.prototype.wsImageComplete = function(cb){
|
63
|
+
cb.call(this, this);
|
64
|
+
};
|
65
|
+
}
|
66
|
+
|
61
67
|
webshims.register('mediaelement-core', function($, webshims, window, document, undefined, options){
|
62
68
|
var hasSwf = swfmini.hasFlashPlayerVersion('11.3');
|
63
69
|
var mediaelement = webshims.mediaelement;
|
70
|
+
var allowYtLoading = false;
|
64
71
|
|
65
72
|
mediaelement.parseRtmp = function(data){
|
66
73
|
var src = data.src.split('://');
|
@@ -156,7 +163,9 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
156
163
|
return function(){
|
157
164
|
if(loaded || !hasYt){return;}
|
158
165
|
loaded = true;
|
159
|
-
|
166
|
+
if(allowYtLoading){
|
167
|
+
webshims.loader.loadScript("https://www.youtube.com/player_api");
|
168
|
+
}
|
160
169
|
$(function(){
|
161
170
|
webshims._polyfill(["mediaelement-yt"]);
|
162
171
|
});
|
@@ -342,6 +351,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
342
351
|
}
|
343
352
|
});
|
344
353
|
if(!requested && hasYt && !mediaelement.createSWF){
|
354
|
+
allowYtLoading = true;
|
345
355
|
loadYt();
|
346
356
|
}
|
347
357
|
};
|
@@ -506,6 +516,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
506
516
|
.add(insertedElement.filter('video, audio'))
|
507
517
|
.each(function(){
|
508
518
|
if(!mediaelement.canNativePlaySrces(this)){
|
519
|
+
allowYtLoading = true;
|
509
520
|
loadThird();
|
510
521
|
handleMedia = true;
|
511
522
|
return false;
|
@@ -528,6 +539,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
528
539
|
mediaelement.loadDebugger();
|
529
540
|
});
|
530
541
|
}
|
542
|
+
|
531
543
|
//set native implementation ready, before swf api is retested
|
532
544
|
if(hasNative){
|
533
545
|
webshims.isReady('mediaelement-core', true);
|
@@ -612,8 +624,12 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
612
624
|
var lastCue = this.cues[this.cues.length-1];
|
613
625
|
if(lastCue && lastCue.startTime > cue.startTime){
|
614
626
|
webshims.error("cue startTime higher than previous cue's startTime");
|
627
|
+
return;
|
615
628
|
}
|
616
629
|
}
|
630
|
+
if(cue.startTime >= cue.endTime ){
|
631
|
+
webshim.error('startTime >= endTime of cue: '+ cue.text);
|
632
|
+
}
|
617
633
|
if(cue.track && cue.track.removeCue){
|
618
634
|
cue.track.removeCue(cue);
|
619
635
|
}
|
@@ -705,6 +721,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
705
721
|
for(i = 0, len = added.length; i < len; i++){
|
706
722
|
$([trackList]).triggerHandler($.Event({type: 'addtrack', track: added[i]}));
|
707
723
|
}
|
724
|
+
//todo: remove
|
708
725
|
if(baseData.scriptedTextTracks || removed.length){
|
709
726
|
$(this).triggerHandler('updatetrackdisplay');
|
710
727
|
}
|
@@ -721,7 +738,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
721
738
|
setTimeout(function(){
|
722
739
|
$(track).closest('audio, video').triggerHandler('updatetrackdisplay');
|
723
740
|
trackData.isTriggering = false;
|
724
|
-
},
|
741
|
+
}, 9);
|
725
742
|
}
|
726
743
|
};
|
727
744
|
var isDefaultTrack = (function(){
|
@@ -914,15 +931,10 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
914
931
|
error: error
|
915
932
|
});
|
916
933
|
};
|
917
|
-
if(
|
918
|
-
|
919
|
-
setTimeout(createAjax, loadingTracks * 2);
|
920
|
-
} else {
|
921
|
-
createAjax();
|
922
|
-
}
|
934
|
+
if(isDisabled){
|
935
|
+
setTimeout(createAjax, loadingTracks * 2);
|
923
936
|
} else {
|
924
|
-
|
925
|
-
webshims.loader.loadList(['jajax']);
|
937
|
+
createAjax();
|
926
938
|
}
|
927
939
|
} catch(er){
|
928
940
|
error();
|