From f75affa7e098d026dfb62cef74ead37ce8694943 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/src/main/resources/guacamole.js b/src/main/resources/guacamole.js index a9fcbed..7f474ac 100644 --- a/src/main/resources/guacamole.js +++ b/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]); -- 1.7.10.4