New, fancy connection UI.

This commit is contained in:
Michael Jumper
2012-11-03 18:38:14 -07:00
parent 4ac8a4b57c
commit a9c2f5ab8d
3 changed files with 190 additions and 48 deletions

View File

@@ -777,8 +777,49 @@ GuacamoleUI.attach = function(guac) {
// Connected
case 3:
GuacamoleUI.hideStatus();
title_prefix = null;
window.setTimeout(function() {
// Get screenshot
var canvas = guac.flatten();
// Calculate scale of thumbnail (max 320x240, max zoom 100%)
var scale = Math.min(
320 / canvas.width,
240 / canvas.height,
1
);
// Create thumbnail canvas
var thumbnail = document.createElement("canvas");
thumbnail.width = canvas.width*scale;
thumbnail.height = canvas.height*scale;
// Scale screenshot to thumbnail
var context = thumbnail.getContext("2d");
context.drawImage(canvas,
0, 0, canvas.width, canvas.height,
0, 0, thumbnail.width, thumbnail.height
);
// Get thumbnail set from local storage
var thumbnails = {};
try {
thumbnails = JSON.parse(localStorage.getItem("GUAC_THUMBNAILS"));
}
catch (e) {
}
// Save thumbnail to local storage
var id = decodeURIComponent(window.location.search.substring(4));
thumbnails[id] = thumbnail.toDataURL();
localStorage.setItem("GUAC_THUMBNAILS", JSON.stringify(thumbnails));
}, 5000);
break;
// Disconnecting