details: https://code.tryton.org/tryton/commit/804f49879043
branch: default
user: Cédric Krier <[email protected]>
date: Wed Feb 04 15:26:34 2026 +0100
description:
Set revision context before clearing the screen
This prevents the clear method (which set the current record to null)
to update
the URL with the old revision and thus opens a new tab.
Closes #14577
diffstat:
sao/src/tab.js | 4 +++-
tryton/tryton/gui/window/form.py | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
diffs (31 lines):
diff -r 07a0ab59f30e -r 804f49879043 sao/src/tab.js
--- a/sao/src/tab.js Fri Jan 23 23:49:58 2026 +0100
+++ b/sao/src/tab.js Wed Feb 04 15:26:34 2026 +0100
@@ -1053,10 +1053,12 @@
revision = revisions[revisions.length - 1][0];
}
if (revision != this.screen.context._datetime) {
- this.screen.clear();
// Update group context that will be propagated by
// recreating new group
this.screen.group._context._datetime = revision;
+ // clear after updating the datetime such that the tab
+ // compute already the right URL
+ this.screen.clear();
if (this.screen.current_view.view_type != 'form') {
this.screen.search_filter(
this.screen.screen_container
diff -r 07a0ab59f30e -r 804f49879043 tryton/tryton/gui/window/form.py
--- a/tryton/tryton/gui/window/form.py Fri Jan 23 23:49:58 2026 +0100
+++ b/tryton/tryton/gui/window/form.py Wed Feb 04 15:26:34 2026 +0100
@@ -354,9 +354,9 @@
and revision < revisions[-1][0]):
revision = revisions[-1][0]
if revision != self.screen.context.get('_datetime'):
- self.screen.clear()
# Update root group context that will be propagated
self.screen.group._context['_datetime'] = revision
+ self.screen.clear()
if self.screen.current_view.view_type != 'form':
self.screen.search_filter(
self.screen.screen_container.get_text())