Browse Source

Always make screen sharing availble when browser supports it.

pull/17/merge
Simon Eisenmann 12 years ago
parent
commit
362248cfa0
  1. 2
      html/main.html
  2. 17
      src/i18n/messages-de.po
  3. 9
      src/i18n/messages.pot
  4. 1
      static/js/controllers/mediastreamcontroller.js
  5. 9
      static/js/directives/screenshare.js
  6. 2
      static/js/mediastream/usermedia.js
  7. 12
      static/partials/settings.html
  8. 2
      static/translation/messages-de.json

2
html/main.html

@ -13,7 +13,7 @@
</div> </div>
<status-message></status-message> <status-message></status-message>
<div class="ng-cloak right"> <div class="ng-cloak right">
<button title="{{_('Share your screen')}}" class="btn aenablebtn" ng-show="master.settings.screensharingMedia && (status=='connected' || status=='conference' || enabledScreenshare)" ng-model="layout.screenshare" btn-checkbox><i class="fa fa-desktop"></i></button> <button title="{{_('Share your screen')}}" class="btn aenablebtn" ng-show="isChrome && webrtcDetectedVersion >= 32 && (status=='connected' || status=='conference' || layout.screenshare)" ng-model="layout.screenshare" btn-checkbox><i class="fa fa-desktop"></i></button>
<button title="{{_('Chat')}}" ng-show="roomstatus" class="btn" ng-class="{messagesunseen: chatMessagesUnseen>0}" ng-model="layout.chat" btn-checkbox btn-checkbox-true="true" btn-checkbox-false="false"><i class="fa fa-comments-o"></i><span class="badge" ng-show="chatMessagesUnseen">{{chatMessagesUnseen}}</span></button> <button title="{{_('Chat')}}" ng-show="roomstatus" class="btn" ng-class="{messagesunseen: chatMessagesUnseen>0}" ng-model="layout.chat" btn-checkbox btn-checkbox-true="true" btn-checkbox-false="false"><i class="fa fa-comments-o"></i><span class="badge" ng-show="chatMessagesUnseen">{{chatMessagesUnseen}}</span></button>
<button title="{{_('Mute microphone')}}" class="btn amutebtn" ng-model="microphoneMute" btn-checkbox btn-checkbox-true="true" btn-checkbox-false="false"><i class="fa fa-microphone-slash"></i></button> <button title="{{_('Mute microphone')}}" class="btn amutebtn" ng-model="microphoneMute" btn-checkbox btn-checkbox-true="true" btn-checkbox-false="false"><i class="fa fa-microphone-slash"></i></button>
<button title="{{_('Turn camera off')}}" class="btn amutebtn" ng-model="cameraMute" btn-checkbox btn-checkbox-true="true" btn-checkbox-false="false"><i class="fa fa-eye-slash"></i></button> <button title="{{_('Turn camera off')}}" class="btn amutebtn" ng-model="cameraMute" btn-checkbox btn-checkbox-true="true" btn-checkbox-false="false"><i class="fa fa-eye-slash"></i></button>

17
src/i18n/messages-de.po

@ -8,8 +8,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Spreed Speak Freely\n" "Project-Id-Version: Spreed Speak Freely\n"
"Report-Msgid-Bugs-To: simon@struktur.de\n" "Report-Msgid-Bugs-To: simon@struktur.de\n"
"POT-Creation-Date: 2014-03-25 12:57+0100\n" "POT-Creation-Date: 2014-03-25 16:27+0100\n"
"PO-Revision-Date: 2014-03-25 12:58+0100\n" "PO-Revision-Date: 2014-03-25 16:31+0100\n"
"Last-Translator: Simon Eisenmann <simon@struktur.de>\n" "Last-Translator: Simon Eisenmann <simon@struktur.de>\n"
"Language-Team: de <LL@li.org>\n" "Language-Team: de <LL@li.org>\n"
"Plural-Forms: nplurals=1; plural=0\n" "Plural-Forms: nplurals=1; plural=0\n"
@ -407,6 +407,19 @@ msgstr "Sie sind nun im Raum %s ..."
msgid "Your browser does not support file transfer." msgid "Your browser does not support file transfer."
msgstr "Mit Ihrem Browser können keine Dateien übertragen werden." msgstr "Mit Ihrem Browser können keine Dateien übertragen werden."
msgid ""
"Permission to start screen sharing was denied. Make sure to have enabled "
"screen sharing access for your browser. Copy chrome://flags/#enable-"
"usermedia-screen-capture and open it with your browser and enable the "
"flag on top. Then restart the browser and you are ready to go."
msgstr ""
"Die Berechtigung für die Bildschirmaufzeichnung wurde verweigert. Bitte "
"stellen Sie sicher die Unterstützung für Bildschimaufzeichnung in Ihrem "
"Browser aktiviert ist. Kopieren Sie dazu chrome://flags/#enable-"
"usermedia-screen-capture und öffnen Sie diese Adresse in Ihrem Browser. "
"Aktivieren Sie die oberste Einstellung und starten dann den Browser neu. "
"Anschließend können Sie die Bildschirmfreigabe benutzen."
msgid "Meet with me here:" msgid "Meet with me here:"
msgstr "Meeting:" msgstr "Meeting:"

9
src/i18n/messages.pot

@ -9,7 +9,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Spreed Speak Freely 1.0\n" "Project-Id-Version: Spreed Speak Freely 1.0\n"
"Report-Msgid-Bugs-To: simon@struktur.de\n" "Report-Msgid-Bugs-To: simon@struktur.de\n"
"POT-Creation-Date: 2014-03-25 12:57+0100\n" "POT-Creation-Date: 2014-03-25 16:27+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -401,6 +401,13 @@ msgstr ""
msgid "Your browser does not support file transfer." msgid "Your browser does not support file transfer."
msgstr "" msgstr ""
msgid ""
"Permission to start screen sharing was denied. Make sure to have enabled "
"screen sharing access for your browser. Copy chrome://flags/#enable-"
"usermedia-screen-capture and open it with your browser and enable the "
"flag on top. Then restart the browser and you are ready to go."
msgstr ""
msgid "Meet with me here:" msgid "Meet with me here:"
msgstr "" msgstr ""

1
static/js/controllers/mediastreamcontroller.js

@ -149,7 +149,6 @@ define(['underscore', 'bigscreen', 'moment', 'webrtc.adapter'], function(_, BigS
videoQuality: "high", videoQuality: "high",
stereo: true, stereo: true,
maxFrameRate: 20, maxFrameRate: 20,
screensharingMedia: false,
defaultRoom: "" defaultRoom: ""
} }
}; };

9
static/js/directives/screenshare.js

@ -20,7 +20,7 @@
*/ */
define(['jquery', 'underscore', 'text!partials/screenshare.html', 'text!partials/screensharepeer.html', 'bigscreen'], function($, _, template, templatePeer, BigScreen) { define(['jquery', 'underscore', 'text!partials/screenshare.html', 'text!partials/screensharepeer.html', 'bigscreen'], function($, _, template, templatePeer, BigScreen) {
return ["$window", "mediaStream", "$compile", "safeApply", "videoWaiter", "$timeout", function($window, mediaStream, $compile, safeApply, videoWaiter, $timeout) { return ["$window", "mediaStream", "$compile", "safeApply", "videoWaiter", "$timeout", "alertify", "translation", function($window, mediaStream, $compile, safeApply, videoWaiter, $timeout, alertify, translation) {
var peerTemplate = $compile(templatePeer); var peerTemplate = $compile(templatePeer);
@ -222,10 +222,13 @@ define(['jquery', 'underscore', 'text!partials/screenshare.html', 'text!partials
}); });
}); });
usermedia.e.one("mediaerror", function() { usermedia.e.one("mediaerror", function(event, usermedia, error) {
$scope.$apply(function(scope) { $scope.$apply(function(scope) {
scope.usermedia = null; scope.stopScreenshare();
}); });
if (error && error.name === "PermissionDeniedError") {
alertify.dialog.alert(translation._("Permission to start screen sharing was denied. Make sure to have enabled screen sharing access for your browser. Copy chrome://flags/#enable-usermedia-screen-capture and open it with your browser and enable the flag on top. Then restart the browser and you are ready to go."));
}
}); });
}; };

2
static/js/mediastream/usermedia.js

@ -125,7 +125,7 @@ define(['jquery', 'underscore', 'audiocontext', 'webrtc.adapter'], function($, _
} }
// Let webrtc handle the rest. // Let webrtc handle the rest.
this.e.triggerHandler("mediaerror", [this]); this.e.triggerHandler("mediaerror", [this, error]);
}; };

12
static/partials/settings.html

@ -109,18 +109,6 @@
</div> </div>
</div> </div>
<div class="form-group" ng-show="isChrome && webrtcDetectedVersion >= 32">
<label class="col-xs-4 control-label">{{_('Media screen sharing')}}</label>
<div class="col-xs-8">
<div class="checkbox">
<label>
<input type="checkbox" ng-model="user.settings.screensharingMedia"/>
</label>
</div>
<span class="help-block">{{_('Chrome usermedia screen capture feature is required.')}} (chrome://flags/#enable-usermedia-screen-capture)</span>
</div>
</div>
</div> </div>
<!--<div ng-show="isChrome"> <!--<div ng-show="isChrome">

2
static/translation/messages-de.json

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save