Dialog: When animating dialog close, wait until after the animation completes before triggering the close event. Fixes #4207 - Dialog close event occurs too early with hide effect.

This commit is contained in:
Scott González 2009-02-21 17:02:52 +00:00
parent 3342fb841a
commit d94afbee78

View File

@ -154,19 +154,24 @@ $.widget("ui.dialog", {
},
close: function(event) {
if (false === this._trigger('beforeclose', event)) {
var self = this;
if (false === self._trigger('beforeclose', event)) {
return;
}
(this.overlay && this.overlay.destroy());
this.uiDialog
.hide(this.options.hide)
.unbind('keypress.ui-dialog');
(self.overlay && self.overlay.destroy());
self.uiDialog.unbind('keypress.ui-dialog');
(self.options.hide
? self.uiDialog.hide(self.options.hide, function() {
self._trigger('close', event);
})
: self._trigger('close', event));
this._trigger('close', event);
$.ui.dialog.overlay.resize();
this._isOpen = false;
self._isOpen = false;
},
isOpen: function() {