mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-08 14:11:21 +00:00
Merge pull request #47 from glyptodon/disconnect-on-unload
GUAC-977: Automatically disconnect all connections when window/tab is closed.
This commit is contained in:
@@ -23,8 +23,14 @@
|
|||||||
/**
|
/**
|
||||||
* A service for managing several active Guacamole clients.
|
* A service for managing several active Guacamole clients.
|
||||||
*/
|
*/
|
||||||
angular.module('client').factory('guacClientManager', ['ManagedClient',
|
angular.module('client').factory('guacClientManager', ['$injector',
|
||||||
function guacClientManager(ManagedClient) {
|
function guacClientManager($injector) {
|
||||||
|
|
||||||
|
// Required types
|
||||||
|
var ManagedClient = $injector.get('ManagedClient');
|
||||||
|
|
||||||
|
// Required services
|
||||||
|
var $window = $injector.get('$window');
|
||||||
|
|
||||||
var service = {};
|
var service = {};
|
||||||
|
|
||||||
@@ -121,6 +127,15 @@ angular.module('client').factory('guacClientManager', ['ManagedClient',
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Disconnect all clients when window is unloaded
|
||||||
|
$window.addEventListener('unload', function disconnectAllClients() {
|
||||||
|
|
||||||
|
// Disconnect each managed client
|
||||||
|
for (var id in service.managedClients)
|
||||||
|
service.managedClients[id].client.disconnect();
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
return service;
|
return service;
|
||||||
|
|
||||||
}]);
|
}]);
|
||||||
|
Reference in New Issue
Block a user