diff --git a/src/screen.js b/src/screen.js index a4dca5f2d6..68d431b2e9 100644 --- a/src/screen.js +++ b/src/screen.js @@ -992,9 +992,10 @@ this.context_screen.display(true); return jQuery.when(); } + var screen_context = this.context_screen.get_on_change_value(); + delete screen_context.id; this.new_group(jQuery.extend( - this.local_context, - this.context_screen.get_on_change_value())); + this.local_context, screen_context)); } var domain = this.search_domain(search_string, true); diff --git a/src/tab.js b/src/tab.js index de2ef7449f..0a52b70c3b 100644 --- a/src/tab.js +++ b/src/tab.js @@ -695,14 +695,15 @@ (this.attributes.res_id === attributes.res_id) && (compare( this.attributes.domain || [], attributes.domain || [])) && - (compare( - this.attributes.mode || [], attributes.mode || [])) && (compare( this.attributes.view_ids || [], attributes.view_ids || [])) && - (JSON.stringify(this.attributes.context) === + (attributes.view_ids || + (compare( + this.attributes.mode || ['tree', 'form'], + attributes.mode || ['tree', 'form']))) && + (JSON.stringify(this.screen.local_context) === JSON.stringify(attributes.context)) && - (this.attributes.limit == attributes.limit) && (compare( this.attributes.search_value || [], attributes.search_value || []))