summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js
diff options
context:
space:
mode:
authorFabien Meghazi <fme@openerp.com>2013-02-20 09:44:37 +0100
committerFabien Meghazi <fme@openerp.com>2013-02-20 09:44:37 +0100
commit364ea001f9e22bfc9c112359a76ff1d8aaa724e3 (patch)
tree9ba60de1066e1e56e61f8ed7ae7fa162fead899b /addons/web/static/src/js
parentf559b97ce91a4faaca92904bd66f3efd0726f5ea (diff)
[FIX] stringify states (patch from chs)
bzr revid: fme@openerp.com-20130220084437-cyb0pi8nw71bl5mx
Diffstat (limited to 'addons/web/static/src/js')
-rw-r--r--addons/web/static/src/js/chrome.js9
-rw-r--r--addons/web/static/src/js/views.js2
2 files changed, 6 insertions, 5 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);
},
diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js
index 1f809550e64..47986f1da47 100644
--- a/addons/web/static/src/js/views.js
+++ b/addons/web/static/src/js/views.js
@@ -195,7 +195,7 @@ instance.web.ActionManager = instance.web.Widget.extend({
state["active_id"] = this.inner_action.context.active_id;
}
if (this.inner_action.context.active_ids) {
- //state["active_ids"] = this.inner_action.context.active_ids.join(',');
+ state["active_ids"] = this.inner_action.context.active_ids.join(',');
}
}
}