From 99e6cc57efac0742248b99358cad7681b2e5a9ca Mon Sep 17 00:00:00 2001 From: fkloft Date: Wed, 14 Oct 2015 21:08:59 +0200 Subject: [PATCH] sometimes a dialog's size was stuck after moving it around --- code/dialog.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/code/dialog.js b/code/dialog.js index 15664a9e..168bd992 100644 --- a/code/dialog.js +++ b/code/dialog.js @@ -93,6 +93,15 @@ window.dialog = function(options) { } } + // there seems to be a bug where width/height are set to a fixed value after moving a dialog + function sizeFix() { + if(dialog.data('collapsed')) return; + + var options = dialog.dialog('option'); + dialog.dialog('option', 'height', options.height); + dialog.dialog('option', 'width', options.width); + } + // Create the window, appending a div to the body $('body').append('
'); var dialog = $(jqID).dialog($.extend(true, { @@ -140,7 +149,8 @@ window.dialog = function(options) { var button = dialog.find('.ui-dialog-titlebar-button-collapse'); // Slide toggle - $(selector).slideToggle({duration: window.DIALOG_SLIDE_DURATION}); + $(this).css('height', ''); + $(selector).slideToggle({duration: window.DIALOG_SLIDE_DURATION, complete: sizeFix}); if(collapsed) { $(button).removeClass('ui-dialog-titlebar-button-collapse-collapsed'); @@ -214,6 +224,8 @@ window.dialog = function(options) { } }, options)); + dialog.on('dialogdragstop dialogresizestop', sizeFix); + // Set HTML and IDs dialog.html(html); dialog.data('id', id);