Browse Source

Show message if screen sharing start failed for arbitrary reason.

Fall back to legacy screen sharing when possible and inline install failed.
pull/84/head
Simon Eisenmann 11 years ago
parent
commit
42e7fc84f6
  1. 1
      static/js/directives/screenshare.js
  2. 13
      static/js/services/screensharing.js

1
static/js/directives/screenshare.js

@ -177,6 +177,7 @@ define(['jquery', 'underscore', 'text!partials/screenshare.html', 'text!partials @@ -177,6 +177,7 @@ define(['jquery', 'underscore', 'text!partials/screenshare.html', 'text!partials
}
}, function(err) {
console.log("Screen sharing request returned error", err);
alertify.dialog.alert(translation._("Failed to start screen sharing (%s).", err));
$scope.stopScreenshare();
});

13
static/js/services/screensharing.js

@ -130,6 +130,7 @@ define(['underscore', 'webrtc.adapter'], function(_) { @@ -130,6 +130,7 @@ define(['underscore', 'webrtc.adapter'], function(_) {
this.supported = this.autoinstall = true;
var that = this;
var waiting = false;
var prepareAlternative = this.prepare;
this.prepare = function(options) {
var d = $q.defer();
var install = chromeExtension.autoinstall.install();
@ -167,7 +168,17 @@ define(['underscore', 'webrtc.adapter'], function(_) { @@ -167,7 +168,17 @@ define(['underscore', 'webrtc.adapter'], function(_) {
d.reject("Timeout while waiting for extension getting installed");
}, 30000);
}, function(err) {
d.reject(err);
console.log("Auto install of extension failed.", err);
if (prepareAlternative) {
var alternative = prepareAlternative(options);
alternative.then(function(id) {
d.resolve(id);
}, function() {
d.reject(err);
});
} else {
d.reject(err);
}
});
return d.promise;
};

Loading…
Cancel
Save