From 5c92d65234962f76b2071de5dd391faec19f47e7 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Mon, 20 Feb 2012 12:48:26 -0800 Subject: [PATCH] Implement dispose instruction. --- .../src/main/resources/guacamole.js | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/guacamole-common-js/src/main/resources/guacamole.js b/guacamole-common-js/src/main/resources/guacamole.js index a9fcbed40..7f474ac83 100644 --- a/guacamole-common-js/src/main/resources/guacamole.js +++ b/guacamole-common-js/src/main/resources/guacamole.js @@ -308,6 +308,32 @@ Guacamole.Client = function(tunnel) { }, + "dispose": function(parameters) { + + var layer_index = parseInt(parameters[0]); + + // If visible layer, remove from parent + if (layer_index > 0) { + + // Get container element + var layer_container = getLayerContainer(layer_index).getElement(); + + // Remove from parent + layer_container.parentNode.removeChild(layer_container); + + // Delete reference + delete layers[layer_index]; + + } + + // If buffer, just delete reference + else if (layer_index < 0) + delete buffers[-1 - layer_index]; + + // Attempting to dispose the root layer currently has no effect. + + }, + "png": function(parameters) { var channelMask = parseInt(parameters[0]);