diff options
| author | Fabien Meghazi <fme@openerp.com> | 2013-02-20 09:44:37 +0100 |
|---|---|---|
| committer | Fabien Meghazi <fme@openerp.com> | 2013-02-20 09:44:37 +0100 |
| commit | 364ea001f9e22bfc9c112359a76ff1d8aaa724e3 (patch) | |
| tree | 9ba60de1066e1e56e61f8ed7ae7fa162fead899b /addons/web/static/src/js/chrome.js | |
| parent | f559b97ce91a4faaca92904bd66f3efd0726f5ea (diff) | |
[FIX] stringify states (patch from chs)
bzr revid: fme@openerp.com-20130220084437-cyb0pi8nw71bl5mx
Diffstat (limited to 'addons/web/static/src/js/chrome.js')
| -rw-r--r-- | addons/web/static/src/js/chrome.js | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js index 7b64358f005..05ca224eb14 100644 --- a/addons/web/static/src/js/chrome.js +++ b/addons/web/static/src/js/chrome.js @@ -1323,8 +1323,9 @@ instance.web.WebClient = instance.web.Client.extend({ }, on_hashchange: function(event) { var self = this; - var state = event.getState(true); - if (!_.isEqual(this._current_state, state)) { + var stringstate = event.getState(false); + if (!_.isEqual(this._current_state, stringstate)) { + var state = event.getState(true); if(!state.action && state.menu_id) { self.menu.has_been_loaded.done(function() { self.menu.do_reload().done(function() { @@ -1336,13 +1337,13 @@ instance.web.WebClient = instance.web.Client.extend({ this.action_manager.do_load_state(state, !!this._current_state); } } - this._current_state = state; + this._current_state = stringstate; }, do_push_state: function(state) { this.set_title(state.title); delete state.title; var url = '#' + $.param(state); - this._current_state = _.clone(state); + this._current_state = $.deparam($.param(state), false); // stringify all values $.bbq.pushState(url); this.trigger('state_pushed', state); }, |
