Browse Source

Updates app.bundle.js

j8
paweldomas 10 years ago
parent
commit
e79d476d89
2 changed files with 46 additions and 13 deletions
  1. 1
    1
      index.html
  2. 45
    12
      libs/app.bundle.js

+ 1
- 1
index.html View File

@@ -20,7 +20,7 @@
20 20
     <script src="libs/popover.js?v=1"></script><!-- bootstrap tooltip lib -->
21 21
     <script src="libs/toastr.js?v=1"></script><!-- notifications lib -->
22 22
     <script src="interface_config.js?v=5"></script>
23
-    <script src="libs/app.bundle.js?v=128"></script>
23
+    <script src="libs/app.bundle.js?v=129"></script>
24 24
     <script src="analytics.js?v=1"></script><!-- google analytics plugin -->
25 25
     <link rel="stylesheet" href="css/font.css?v=7"/>
26 26
     <link rel="stylesheet" href="css/toastr.css?v=1">

+ 45
- 12
libs/app.bundle.js View File

@@ -2067,7 +2067,7 @@ RTCUtils.prototype.createStream = function(stream, isVideo) {
2067 2067
 module.exports = RTCUtils;
2068 2068
 
2069 2069
 },{"../../service/RTC/Resolutions":166,"../xmpp/SDPUtil":60,"./RTCBrowserType":10,"./adapter.screenshare":12}],12:[function(require,module,exports){
2070
-/*! adapterjs - custom version from - 2015-08-18 */
2070
+/*! adapterjs - custom version from - 2015-08-19 */
2071 2071
 
2072 2072
 // Adapter's interface.
2073 2073
 var AdapterJS = AdapterJS || {};
@@ -2423,13 +2423,12 @@ AdapterJS.renderNotificationBar = function (text, buttonText, buttonLink, openNe
2423 2423
         AdapterJS.WebRTCPlugin.isPluginInstalled(
2424 2424
           AdapterJS.WebRTCPlugin.pluginInfo.prefix,
2425 2425
           AdapterJS.WebRTCPlugin.pluginInfo.plugName,
2426
-          AdapterJS.WebRTCPlugin.defineWebRTCInterface,
2427
-          function() {
2426
+          function() { // plugin now installed
2428 2427
             clearInterval(pluginInstallInterval);
2429 2428
             AdapterJS.WebRTCPlugin.defineWebRTCInterface();
2430 2429
           },
2431
-          function() {
2432
-            //Does nothing because not used here
2430
+          function() { 
2431
+            // still no plugin detected, nothing to do
2433 2432
           });
2434 2433
       } , 500);
2435 2434
     });   
@@ -2802,6 +2801,28 @@ if (navigator.mozGetUserMedia) {
2802 2801
     return to;
2803 2802
   };
2804 2803
 
2804
+  AdapterJS.maybeThroughWebRTCReady();
2805
+} else if (navigator.mediaDevices && navigator.userAgent.match(
2806
+    /Edge\/(\d+).(\d+)$/)) {
2807
+  webrtcDetectedBrowser = 'edge';
2808
+
2809
+  webrtcDetectedVersion =
2810
+    parseInt(navigator.userAgent.match(/Edge\/(\d+).(\d+)$/)[2], 10);
2811
+
2812
+  // the minimum version still supported by adapter.
2813
+  webrtcMinimumVersion = 12;
2814
+
2815
+  getUserMedia = navigator.getUserMedia;
2816
+
2817
+  attachMediaStream = function(element, stream) {
2818
+    element.srcObject = stream;
2819
+    return element;
2820
+  };
2821
+  reattachMediaStream = function(to, from) {
2822
+    to.srcObject = from.srcObject;
2823
+    return to;
2824
+  };
2825
+
2805 2826
   AdapterJS.maybeThroughWebRTCReady();
2806 2827
 } else { // TRY TO USE PLUGIN
2807 2828
   // IE 9 is not offering an implementation of console.log until you open a console
@@ -2954,9 +2975,10 @@ if (navigator.mozGetUserMedia) {
2954 2975
   AdapterJS.WebRTCPlugin.defineWebRTCInterface = function () {
2955 2976
     if (AdapterJS.WebRTCPlugin.pluginState ===
2956 2977
         AdapterJS.WebRTCPlugin.PLUGIN_STATES.READY) {
2957
-      console.error("WebRTC interface has been defined already");
2978
+      console.error("AdapterJS - WebRTC interface has already been defined");
2958 2979
       return;
2959 2980
     }
2981
+
2960 2982
     AdapterJS.WebRTCPlugin.pluginState = AdapterJS.WebRTCPlugin.PLUGIN_STATES.INITIALIZING;
2961 2983
 
2962 2984
     AdapterJS.isDefined = function (variable) {
@@ -3053,9 +3075,10 @@ if (navigator.mozGetUserMedia) {
3053 3075
       }
3054 3076
 
3055 3077
       var elementId = element.id.length === 0 ? Math.random().toString(36).slice(2) : element.id;
3056
-      if (!element.isWebRTCPlugin || !element.isWebRTCPlugin()) {
3078
+      var nodeName = element.nodeName.toLowerCase();
3079
+      if (nodeName !== 'object') { // not a plugin <object> tag yet
3057 3080
         var tag;
3058
-        switch(element.nodeName.toLowerCase()) {
3081
+        switch(nodeName) {
3059 3082
           case 'audio':
3060 3083
             tag = AdapterJS.WebRTCPlugin.TAGS.AUDIO;
3061 3084
             break;
@@ -3106,7 +3129,7 @@ if (navigator.mozGetUserMedia) {
3106 3129
         frag.width = width;
3107 3130
         frag.height = height;
3108 3131
         element.parentNode.removeChild(element);
3109
-      } else {
3132
+      } else { // already an <object> tag, just change the stream id
3110 3133
         var children = element.children;
3111 3134
         for (var i = 0; i !== children.length; ++i) {
3112 3135
           if (children[i].name === 'streamId') {
@@ -3118,9 +3141,9 @@ if (navigator.mozGetUserMedia) {
3118 3141
       }
3119 3142
       var newElement = document.getElementById(elementId);
3120 3143
       newElement.onplaying = (element.onplaying) ? element.onplaying : function (arg) {};
3144
+      newElement.onclick   = (element.onclick)   ? element.onclick   : function (arg) {};
3121 3145
       if (isIE) { // on IE the event needs to be plugged manually
3122 3146
         newElement.attachEvent('onplaying', newElement.onplaying);
3123
-        newElement.onclick = (element.onclick) ? element.onclick : function (arg) {};
3124 3147
         newElement._TemOnClick = function (id) {
3125 3148
           var arg = {
3126 3149
             srcElement : document.getElementById(id)
@@ -8694,7 +8717,7 @@ function changeVideo(isVisible) {
8694 8717
     if (isVisible) {
8695 8718
         LargeVideo.VideoLayout.largeVideoUpdated(currentSmallVideo);
8696 8719
 
8697
-        $('#largeVideoWrapper').fadeIn(300);
8720
+        $('#largeVideoWrapper').fadeTo(300, 1);
8698 8721
     }
8699 8722
 }
8700 8723
 
@@ -8829,7 +8852,7 @@ var LargeVideo = {
8829 8852
             // If for any reason large video was hidden before calling fadeOut
8830 8853
             // changeVideo will never be called, so we call show() in chain just
8831 8854
             // to be sure
8832
-            $('#largeVideoWrapper').show().fadeOut(300,
8855
+            $('#largeVideoWrapper').show().fadeTo(300, 0,
8833 8856
                 changeVideo.bind($('#largeVideo'), this.isLargeVideoVisible()));
8834 8857
         } else {
8835 8858
             if (currentSmallVideo) {
@@ -10213,6 +10236,16 @@ var VideoLayout = (function (my) {
10213 10236
             localAudio.autoplay = true;
10214 10237
             localAudio.volume = 0;
10215 10238
         }
10239
+        // Now when Temasys plugin is converting also <audio> elements to
10240
+        // plugin's <object>s, in current layout it will capture click events
10241
+        // before it reaches the local video object. We hide it here in order
10242
+        // to prevent that.
10243
+        if (RTCBrowserType.isIExplorer()) {
10244
+            // The issue is not present on Safari. Also if we hide it in Safari
10245
+            // then the local audio track will have 'enabled' flag set to false
10246
+            // which will result in audio mute issues
10247
+            $('#localAudio').hide();
10248
+        }
10216 10249
     };
10217 10250
 
10218 10251
     my.changeLocalVideo = function(stream, isMuted) {

Loading…
Cancel
Save