diff --git a/html/main.html b/html/main.html
index c3c4b550..3240bec0 100644
--- a/html/main.html
+++ b/html/main.html
@@ -26,6 +26,7 @@
+
diff --git a/static/js/controllers/mediastreamcontroller.js b/static/js/controllers/mediastreamcontroller.js
index 38bd08a0..e9aa3995 100644
--- a/static/js/controllers/mediastreamcontroller.js
+++ b/static/js/controllers/mediastreamcontroller.js
@@ -20,7 +20,7 @@
*/
define(['underscore', 'bigscreen', 'moment', 'sjcl', 'modernizr', 'webrtc.adapter'], function(_, BigScreen, moment, sjcl, Modernizr) {
- return ["$scope", "$rootScope", "$element", "$window", "$timeout", "safeDisplayName", "safeApply", "mediaStream", "appData", "playSound", "desktopNotify", "alertify", "toastr", "translation", "fileDownload", "localStorage", "screensharing", "userSettingsData", "localStatus", function($scope, $rootScope, $element, $window, $timeout, safeDisplayName, safeApply, mediaStream, appData, playSound, desktopNotify, alertify, toastr, translation, fileDownload, localStorage, screensharing, userSettingsData, localStatus) {
+ return ["$scope", "$rootScope", "$element", "$window", "$timeout", "safeDisplayName", "safeApply", "mediaStream", "appData", "playSound", "desktopNotify", "alertify", "toastr", "translation", "fileDownload", "localStorage", "screensharing", "userSettingsData", "localStatus", "dialogs", function($scope, $rootScope, $element, $window, $timeout, safeDisplayName, safeApply, mediaStream, appData, playSound, desktopNotify, alertify, toastr, translation, fileDownload, localStorage, screensharing, userSettingsData, localStatus, dialogs) {
/*console.log("route", $route, $routeParams, $location);*/
@@ -345,6 +345,28 @@ define(['underscore', 'bigscreen', 'moment', 'sjcl', 'modernizr', 'webrtc.adapte
}
}());
+ $scope.openContactsManager = (function() {
+ var oldDialog = null;
+ return function() {
+ if (oldDialog) {
+ oldDialog.dismiss("open");
+ }
+ oldDialog = dialogs.create(
+ "/contactsmanager/main.html",
+ "ContactsmanagerController",
+ {
+ header: translation._("Contacts Manager")
+ }, {
+ wc: "contactsmanager"
+ }
+ );
+ oldDialog.result.finally(function() {
+ oldDialog = null;
+ });
+ return oldDialog
+ }
+ }());
+
$scope.$watch("cameraMute", function(cameraMute) {
mediaStream.webrtc.setVideoMute(cameraMute);
});
diff --git a/static/js/directives/settings.js b/static/js/directives/settings.js
index 5465bd50..b8dd5173 100644
--- a/static/js/directives/settings.js
+++ b/static/js/directives/settings.js
@@ -22,7 +22,7 @@ define(['jquery', 'underscore', 'text!partials/settings.html'], function($, _, t
return ["$compile", "mediaStream", function($compile, mediaStream) {
- var controller = ['$scope', 'desktopNotify', 'mediaSources', 'safeApply', 'availableLanguages', 'translation', 'localStorage', 'dialogs', 'userSettingsData', function($scope, desktopNotify, mediaSources, safeApply, availableLanguages, translation, localStorage, dialogs, userSettingsData) {
+ var controller = ['$scope', 'desktopNotify', 'mediaSources', 'safeApply', 'availableLanguages', 'translation', 'localStorage', 'userSettingsData', function($scope, desktopNotify, mediaSources, safeApply, availableLanguages, translation, localStorage, userSettingsData) {
$scope.layout.settings = false;
$scope.showAdvancedSettings = true;
@@ -84,18 +84,6 @@ define(['jquery', 'underscore', 'text!partials/settings.html'], function($, _, t
});
};
- $scope.openContactsManager = function() {
- return dialogs.create(
- "/contactsmanager/main.html",
- "ContactsmanagerController",
- {
- header: translation._("Contacts Manager")
- }, {
- wc: "contactsmanager"
- }
- );
- };
-
$scope.checkDefaultMediaSources = function() {
if ($scope.master.settings.microphoneId && !$scope.mediaSources.hasAudioId($scope.master.settings.microphoneId)) {
$scope.master.settings.microphoneId = null;