From 48118a7afe17c45aa331511db6f0152ca7d7c0e1 Mon Sep 17 00:00:00 2001 From: "vta vta@openerp.com" <> Date: Fri, 12 Oct 2012 15:02:54 +0200 Subject: [PATCH] [IMP] Improved on close code. bzr revid: vta@openerp.com-20121012130254-kthondab91jph64x --- addons/web/static/src/js/chrome.js | 9 +++------ addons/web/static/src/js/views.js | 5 +++-- addons/web_view_editor/static/src/js/view_editor.js | 1 - 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js index a3fc3b80ea0..99e1a67f51b 100644 --- a/addons/web/static/src/js/chrome.js +++ b/addons/web/static/src/js/chrome.js @@ -70,7 +70,7 @@ instance.web.Dialog = instance.web.Widget.extend({ autoOpen: false, position: [false, 40], buttons: {}, - beforeClose: function () { self.on_close(); }, + beforeClose: function () { self.close(); }, resizeStop: this.on_resized }; for (var f in this) { @@ -150,17 +150,14 @@ instance.web.Dialog = instance.web.Widget.extend({ var res = this.start(); return res; }, - close: function() { - this.$el.dialog('close'); - }, - on_close: function() { - this.trigger("dialog_close"); + close: function() { if (this.__tmp_dialog_destroying) return; if (this.dialog_options.destroy_on_close) { this.__tmp_dialog_closing = true; this.destroy(); this.__tmp_dialog_closing = undefined; + this.trigger("dialog_close"); } }, on_resized: function() { diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index a59e19f1609..c7f7049bd5e 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -286,8 +286,9 @@ instance.web.ActionManager = instance.web.Widget.extend({ buttons: { "Close": function() { $(this).dialog("close"); }}, dialogClass: executor.klass }); - if(on_close) - this.dialog.on("dialog_close",this,on_close); + if (on_close) { + this.dialog.on("dialog_close", this, on_close); + } } else { this.dialog_widget.destroy(); } diff --git a/addons/web_view_editor/static/src/js/view_editor.js b/addons/web_view_editor/static/src/js/view_editor.js index 236e48c2c4c..c8956a745c3 100644 --- a/addons/web_view_editor/static/src/js/view_editor.js +++ b/addons/web_view_editor/static/src/js/view_editor.js @@ -67,7 +67,6 @@ instance.web_view_editor.ViewEditor = instance.web.Widget.extend({ {text: _t("Close"), click: function() { self.view_edit_dialog.close(); window.location.reload(); }} ] }).open(); - this.view_edit_dialog.on("dialog_close", self, function(){window.location.reload();}); this.main_view_id = this.parent.fields_view.view_id; this.action_manager = new instance.web.ActionManager(this); this.action_manager.appendTo(this.view_edit_dialog.$el);