mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-09 22:51:22 +00:00
GUAC-958: Simplify resize handling (use directive). Only install resize handler after object loads.
This commit is contained in:
@@ -339,7 +339,7 @@ angular.module('client').directive('guacClient', [function guacClient() {
|
||||
});
|
||||
|
||||
// If the element is resized, attempt to resize client
|
||||
resizeSensor.contentDocument.defaultView.addEventListener('resize', function mainElementResized() {
|
||||
$scope.mainElementResized = function mainElementResized() {
|
||||
|
||||
// Send new display size, if changed
|
||||
if (client && display) {
|
||||
@@ -355,7 +355,7 @@ angular.module('client').directive('guacClient', [function guacClient() {
|
||||
|
||||
$scope.$evalAsync(updateDisplayScale);
|
||||
|
||||
});
|
||||
};
|
||||
|
||||
// Watch for changes to mouse emulation mode
|
||||
// Send all received mouse events to the client
|
||||
|
@@ -89,18 +89,11 @@ angular.module('client').directive('guacThumbnail', [function guacThumbnail() {
|
||||
*/
|
||||
var main = $element[0];
|
||||
|
||||
/**
|
||||
* The element which functions as a detector for size changes.
|
||||
*
|
||||
* @type Element
|
||||
*/
|
||||
var resizeSensor = $element.find('.resize-sensor')[0];
|
||||
|
||||
/**
|
||||
* Updates the scale of the attached Guacamole.Client based on current window
|
||||
* size and "auto-fit" setting.
|
||||
*/
|
||||
var updateDisplayScale = function updateDisplayScale() {
|
||||
$scope.updateDisplayScale = function updateDisplayScale() {
|
||||
|
||||
if (!display) return;
|
||||
|
||||
@@ -159,15 +152,11 @@ angular.module('client').directive('guacThumbnail', [function guacThumbnail() {
|
||||
thumbnail.height = height;
|
||||
$scope.thumbnail = thumbnail.toDataURL("image/png");
|
||||
|
||||
$scope.$evalAsync(updateDisplayScale);
|
||||
// Init display scale
|
||||
$scope.$evalAsync($scope.updateDisplayScale);
|
||||
|
||||
});
|
||||
|
||||
// If the element is resized, attempt to resize client
|
||||
resizeSensor.contentDocument.defaultView.addEventListener('resize', function mainElementResized() {
|
||||
$scope.$apply(updateDisplayScale);
|
||||
});
|
||||
|
||||
}]
|
||||
};
|
||||
}]);
|
@@ -38,18 +38,6 @@ div.main {
|
||||
font-size: 0px;
|
||||
}
|
||||
|
||||
.resize-sensor {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
overflow: hidden;
|
||||
border: none;
|
||||
opacity: 0;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
div.displayOuter {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
|
@@ -1,22 +0,0 @@
|
||||
<!--
|
||||
Copyright (C) 2014 Glyptodon LLC
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
-->
|
||||
<html><body></body></html>
|
@@ -1,4 +1,4 @@
|
||||
<div class="main">
|
||||
<div class="main" guac-resize="mainElementResized">
|
||||
<!--
|
||||
Copyright (C) 2014 Glyptodon LLC
|
||||
|
||||
@@ -31,7 +31,4 @@
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Resize sensor -->
|
||||
<object type="text/html" class="resize-sensor" data="app/client/templates/blank.html"></object>
|
||||
|
||||
</div>
|
@@ -1,4 +1,4 @@
|
||||
<div class="thumbnail-main">
|
||||
<div class="thumbnail-main" guac-resize="updateDisplayScale">
|
||||
<!--
|
||||
Copyright (C) 2014 Glyptodon LLC
|
||||
|
||||
@@ -21,9 +21,6 @@
|
||||
THE SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- Resize sensor -->
|
||||
<object type="text/html" class="resize-sensor" data="app/client/templates/blank.html"></object>
|
||||
|
||||
<!-- Display -->
|
||||
<div class="display">
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user