]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-10360: [freeswitch-core,verto.js] FireFox Screen Sharing
authorAnthony Minessale <anthm@freeswitch.org>
Fri, 2 Jun 2017 17:34:40 +0000 (12:34 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Fri, 2 Jun 2017 17:34:40 +0000 (12:34 -0500)
html5/verto/js/src/jquery.FSRTC.js
html5/verto/js/src/jquery.verto.js

index e9314abded4c8439bf6bf1c733f9f2da6c7887ab..0ebb1ef21a44eb8b441384e7420e21ef3e31a076 100644 (file)
        delete obj.options.videoParams.vertoBestFrameRate;
 
        if (obj.options.screenShare) {
-           // fix for chrome to work for now, will need to change once we figure out how to do this in a non-mandatory style constraint.
-           if (!!navigator.mozGetUserMedia) {
-               var dowin = window.confirm("Do you want to share an application window?  If not you will share a screen.");
+           if (!obj.options.useCamera && !!navigator.mozGetUserMedia) {
+               //This is an issue, only FireFox needs to ask this additional question if its screen or window we need a better way
+               var dowin = window.confirm("Do you want to share an application window?  If not you can share an entire screen.");
 
                video = {
                    width: {min: obj.options.videoParams.minWidth, max: obj.options.videoParams.maxWidth},
                }
            } else {
                var opt = [];
-               opt.push({sourceId: obj.options.useCamera});
+               if (obj.options.useCamera) {
+                   opt.push({sourceId: obj.options.useCamera});
+               }
                
                if (bestFrameRate) {
                    opt.push({minFrameRate: bestFrameRate});
            
            if (screen) {
                self.constraints.offerToReceiveVideo = false;
+               self.constraints.offerToReceiveAudio = false;
+               self.constraints.offerToSendAudio = false;
            }
            
             self.peer = FSRTCPeerConnection({
                onsuccess: onSuccess,
                onerror: onError
             });
+
        } else {
            onSuccess(null);
        }
index 6e48515a92cb65d7e7caa46cec8b7e772f9e2458..3e47dbfff0325d0a231a306529619cafccfb5b19 100644 (file)
             useVideo: verto.options.useVideo,
             useStereo: verto.options.useStereo,
            screenShare: false,
-           useCamera: verto.options.deviceParams.useCamera,
+           useCamera: false,
            useMic: verto.options.deviceParams.useMic,
            useSpeak: verto.options.deviceParams.useSpeak,
             tag: verto.options.tag,
            videoParams: verto.options.videoParams
         }, params);
        
+
+       if (!dialog.params.screenShare) {
+           dialog.params.useCamera = verto.options.deviceParams.useCamera;
+       }
+
         dialog.verto = verto;
         dialog.direction = direction;
         dialog.lastState = null;