details:   https://code.tryton.org/tryton/commit/dbad6143d6d0
branch:    default
user:      Cédric Krier <[email protected]>
date:      Wed Jul 08 15:03:35 2026 +0200
description:
        Do not dumps/loads context domain in URL

        The context domain must be evaluated only by the screen when doing a 
domain
        search.

        Closes #14921
diffstat:

 sao/src/sao.js                                      |  3 +--
 sao/src/screen.js                                   |  2 +-
 tryton/tryton/gui/main.py                           |  3 +--
 tryton/tryton/gui/window/view_form/screen/screen.py |  4 +---
 4 files changed, 4 insertions(+), 8 deletions(-)

diffs (52 lines):

diff -r 33147d02d9fb -r dbad6143d6d0 sao/src/sao.js
--- a/sao/src/sao.js    Wed Jul 08 23:01:08 2026 +0200
+++ b/sao/src/sao.js    Wed Jul 08 15:03:35 2026 +0200
@@ -533,8 +533,7 @@
                 }
                 attributes.search_value = loads(params.search_value || '[]');
                 attributes.domain = loads(params.domain || '[]');
-                attributes.context_domain = loads(
-                    params.context_domain || '[]');
+                attributes.context_domain = params.context_domain;
                 attributes.context = loads(params.context || '{}');
                 attributes.context_model = params.context_model;
                 attributes.tab_domain = loads(params.tab_domain || '[]');
diff -r 33147d02d9fb -r dbad6143d6d0 sao/src/screen.js
--- a/sao/src/screen.js Wed Jul 08 23:01:08 2026 +0200
+++ b/sao/src/screen.js Wed Jul 08 15:03:35 2026 +0200
@@ -2172,7 +2172,7 @@
             }
             if (!jQuery.isEmptyObject(this.context_domain)) {
                 query_string.push(
-                    ['context_domain', dumps(this.context_domain)]);
+                    ['context_domain', this.context_domain]);
             }
             var context = this.local_context;  // Avoid rpc context
             if (!jQuery.isEmptyObject(context)) {
diff -r 33147d02d9fb -r dbad6143d6d0 tryton/tryton/gui/main.py
--- a/tryton/tryton/gui/main.py Wed Jul 08 23:01:08 2026 +0200
+++ b/tryton/tryton/gui/main.py Wed Jul 08 15:03:35 2026 +0200
@@ -1019,8 +1019,7 @@
                 attributes['search_value'] = loads(
                     params.get('search_value', '[]'))
                 attributes['domain'] = loads(params.get('domain', '[]'))
-                attributes['context_domain'] = loads(
-                    params.get('context_domain', '[]'))
+                attributes['context_domain'] = params.get('context_domain')
                 attributes['context'] = loads(params.get('context', '{}'))
                 attributes['context_model'] = params.get('context_model')
                 attributes['tab_domain'] = loads(
diff -r 33147d02d9fb -r dbad6143d6d0 
tryton/tryton/gui/window/view_form/screen/screen.py
--- a/tryton/tryton/gui/window/view_form/screen/screen.py       Wed Jul 08 
23:01:08 2026 +0200
+++ b/tryton/tryton/gui/window/view_form/screen/screen.py       Wed Jul 08 
15:03:35 2026 +0200
@@ -1365,9 +1365,7 @@
             query_string.append(('domain', json.dumps(
                         self.domain, cls=JSONEncoder, separators=(',', ':'))))
         if self.context_domain:
-            query_string.append(('context_domain', json.dumps(
-                        self.context_domain, cls=JSONEncoder,
-                        separators=(',', ':'))))
+            query_string.append(('context_domain', self.context_domain))
         context = self.local_context  # Avoid rpc context
         if context:
             query_string.append(('context', json.dumps(

Reply via email to