diff options
| author | Christophe Simonis <chs@openerp.com> | 2011-12-20 18:37:42 +0100 |
|---|---|---|
| committer | Christophe Simonis <chs@openerp.com> | 2011-12-20 18:37:42 +0100 |
| commit | 5168ac754c907272024974fb2d56ff1d06f44816 (patch) | |
| tree | f68208fd53adf47ee0651247b4ff834a83c51b5e /addons | |
| parent | 303d1f6d11d60f8de690a4d7981b35347e566756 (diff) | |
[FIX] show/hide views when there are loaded
bzr revid: chs@openerp.com-20111220173742-cel6khizmlrv9qom
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/web/static/src/js/views.js | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index 5800939ec36..a0819379795 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -313,17 +313,18 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View .filter('[data-view-type="' + view_type + '"]') .attr('disabled', true); - for (var view_name in this.views) { - if (!this.views.hasOwnProperty(view_name)) { continue; } - if (this.views[view_name].controller) { - if (view_name === view_type) { - $.when(view_promise).then(this.views[view_name].controller.do_show); - } else { - this.views[view_name].controller.do_hide(); - } - } - } $.when(view_promise).then(function () { + _.each(_.keys(self.views), function(view_name) { + var controller = self.views[view_name].controller; + if (controller) { + if (view_name === view_type) { + controller.do_show(); + } else { + controller.do_hide(); + } + } + }); + self.$element.find('.oe_view_title_text:first').text( self.display_title()); }); @@ -604,7 +605,11 @@ session.web.ViewManagerAction = session.web.ViewManager.extend(/** @lends oepner var self = this, defs = []; if (state.view_type && state.view_type !== this.active_view) { - defs.push(this.on_mode_switch(state.view_type, true)); + defs.push( + this.views[this.active_view].deferred.pipe(function() { + return self.on_mode_switch(state.view_type, true); + }) + ); } $.when(defs).then(function() { |
