[FIX] #menu_id loading, move client_actions registry
bzr revid: al@openerp.com-20120515153423-bj6vgiuwq26cyq5o
This commit is contained in:
parent
6a198b9099
commit
33f28d3d6b
|
@ -966,7 +966,9 @@ instance.web.WebClient = instance.web.Widget.extend({
|
||||||
if (!_.isEqual(this._current_state, state)) {
|
if (!_.isEqual(this._current_state, state)) {
|
||||||
if(state.action_id === undefined && state.menu_id) {
|
if(state.action_id === undefined && state.menu_id) {
|
||||||
self.menu.has_been_loaded.then(function() {
|
self.menu.has_been_loaded.then(function() {
|
||||||
self.menu.menu_click(state.menu_id);
|
self.menu.do_reload().then(function() {
|
||||||
|
self.menu.menu_click(state.menu_id)
|
||||||
|
});
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.action_manager.do_load_state(state, !!this._current_state);
|
this.action_manager.do_load_state(state, !!this._current_state);
|
||||||
|
|
|
@ -579,6 +579,33 @@ $.async_when = function() {
|
||||||
return old_async_when.apply(this, arguments);
|
return old_async_when.apply(this, arguments);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Registry for all the client actions key: tag value: widget
|
||||||
|
*/
|
||||||
|
instance.web.client_actions = new instance.web.Registry();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Client action to reload the whole interface.
|
||||||
|
* If params has an entry 'menu_id', it opens the given menu entry.
|
||||||
|
*/
|
||||||
|
instance.web.client_actions.add("reload", "instance.web.Reload");
|
||||||
|
|
||||||
|
instance.web.Reload = instance.web.Widget.extend({
|
||||||
|
init: function(parent, params) {
|
||||||
|
this._super(parent);
|
||||||
|
this.menu_id = (params && params.menu_id) || false;
|
||||||
|
},
|
||||||
|
start: function() {
|
||||||
|
if (this.menu_id) {
|
||||||
|
// open the given menu id
|
||||||
|
var url_without_fragment = window.location.toString().split("#", 1)[0];
|
||||||
|
window.location = url_without_fragment + "#menu_id=" + this.menu_id;
|
||||||
|
} else {
|
||||||
|
window.location.reload();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// vim:et fdc=0 fdl=0 foldnestmax=3 fdm=syntax:
|
// vim:et fdc=0 fdl=0 foldnestmax=3 fdm=syntax:
|
||||||
|
|
|
@ -1261,33 +1261,6 @@ instance.web.str_to_xml = function(s) {
|
||||||
return xDoc;
|
return xDoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Registry for all the client actions key: tag value: widget
|
|
||||||
*/
|
|
||||||
instance.web.client_actions = new instance.web.Registry();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Client action to reload the whole interface.
|
|
||||||
* If params has an entry 'menu_id', it opens the given menu entry.
|
|
||||||
*/
|
|
||||||
instance.web.client_actions.add("reload", "instance.web.Reload");
|
|
||||||
|
|
||||||
instance.web.Reload = instance.web.Widget.extend({
|
|
||||||
init: function(parent, params) {
|
|
||||||
this._super(parent);
|
|
||||||
this.menu_id = (params && params.menu_id) || false;
|
|
||||||
},
|
|
||||||
start: function() {
|
|
||||||
if (this.menu_id) {
|
|
||||||
// open the given menu id
|
|
||||||
var url_without_fragment = window.location.toString().split("#", 1)[0];
|
|
||||||
window.location = url_without_fragment + "#menu_id=" + this.menu_id;
|
|
||||||
} else {
|
|
||||||
window.location.reload();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Registry for all the main views
|
* Registry for all the main views
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue