diff --git a/guacamole/src/main/webapp/app/client/controllers/clientController.js b/guacamole/src/main/webapp/app/client/controllers/clientController.js index e1b5c991b..2e7fe0de4 100644 --- a/guacamole/src/main/webapp/app/client/controllers/clientController.js +++ b/guacamole/src/main/webapp/app/client/controllers/clientController.js @@ -379,11 +379,6 @@ angular.module('client').controller('clientController', ['$scope', '$routeParams }); - // Update remote clipboard if local clipboard changes - $scope.$on('guacClipboard', function onClipboard(event, mimetype, data) { - $scope.client.clipboardData = data; - }); - $scope.$on('guacKeydown', function keydownListener(event, keysym, keyboard) { keysCurrentlyPressed[keysym] = true; diff --git a/guacamole/src/main/webapp/app/client/directives/guacClient.js b/guacamole/src/main/webapp/app/client/directives/guacClient.js index 31f17fd03..e23eb7913 100644 --- a/guacamole/src/main/webapp/app/client/directives/guacClient.js +++ b/guacamole/src/main/webapp/app/client/directives/guacClient.js @@ -413,9 +413,11 @@ angular.module('client').directive('guacClient', [function guacClient() { }; // Update remote clipboard if local clipboard changes - $scope.$watch('client.clipboardData', function clipboardChanged(data) { - if (client) + $scope.$on('guacClipboard', function onClipboard(event, mimetype, data) { + if (client) { client.setClipboard(data); + $scope.client.clipboardData = data; + } }); // Translate local keydown events to remote keydown events if keyboard is enabled