details:   https://code.tryton.org/tryton/commit/25afe74dbf51
branch:    default
user:      Cédric Krier <[email protected]>
date:      Thu May 07 13:28:19 2026 +0200
description:
        Use record name as fallback for filename of Binary field
diffstat:

 sao/CHANGELOG                                              |   1 +
 sao/src/view/form.js                                       |  12 ++++++++++--
 tryton/CHANGELOG                                           |   1 +
 tryton/tryton/gui/window/view_form/view/form_gtk/binary.py |   4 +++-
 4 files changed, 15 insertions(+), 3 deletions(-)

diffs (59 lines):

diff -r 234f0a089153 -r 25afe74dbf51 sao/CHANGELOG
--- a/sao/CHANGELOG     Tue May 12 15:40:54 2026 +0200
+++ b/sao/CHANGELOG     Thu May 07 13:28:19 2026 +0200
@@ -1,3 +1,4 @@
+* Use record name as fallback for filename of Binary field
 * Support filters attribute for binary and image widgets
 * Use search window to delete/remove records from xxx2Many widgets
 
diff -r 234f0a089153 -r 25afe74dbf51 sao/src/view/form.js
--- a/sao/src/view/form.js      Tue May 12 15:40:54 2026 +0200
+++ b/sao/src/view/form.js      Thu May 07 13:28:19 2026 +0200
@@ -4641,13 +4641,21 @@
             } else {
                 prm = jQuery.when(field.get(record));
             }
-            prm.done(data => {
+            prm.then(data => {
                 var name;
                 var field = this.filename_field;
                 if (field) {
                     name = field.get(this.record);
                 }
-                Sao.common.download_file(data, name);
+                let prm;
+                if (!name) {
+                    prm = this.record.rec_name();
+                } else {
+                    prm = jQuery.when(name);
+                }
+                return prm.then(name => {
+                    Sao.common.download_file(data, name);
+                });
             });
         },
         clear: function() {
diff -r 234f0a089153 -r 25afe74dbf51 tryton/CHANGELOG
--- a/tryton/CHANGELOG  Tue May 12 15:40:54 2026 +0200
+++ b/tryton/CHANGELOG  Thu May 07 13:28:19 2026 +0200
@@ -1,3 +1,4 @@
+* Use record name as fallback for filename of Binary field
 * Support filters attribute for binary and image widgets
 * Use search window to delete/remove records from xxx2Many widgets
 
diff -r 234f0a089153 -r 25afe74dbf51 
tryton/tryton/gui/window/view_form/view/form_gtk/binary.py
--- a/tryton/tryton/gui/window/view_form/view/form_gtk/binary.py        Tue May 
12 15:40:54 2026 +0200
+++ b/tryton/tryton/gui/window/view_form/view/form_gtk/binary.py        Thu May 
07 13:28:19 2026 +0200
@@ -139,9 +139,11 @@
         file_open(file_path, type_)
 
     def save_as(self, widget=None):
-        filename = ''
+        filename = None
         if self.filename_field:
             filename = self.filename_field.get(self.record)
+        if not filename:
+            filename = self.record.rec_name()
         filename = file_selection(_('Save As...'), filename=filename,
             action=Gtk.FileChooserAction.SAVE)
         if filename:

Reply via email to