From 6262e3479b409a18b8ea1e59a80297b74f17ba6d Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Mon, 20 Apr 2015 16:12:53 +0200 Subject: [PATCH] [FIX] web: onchange on field binary When setting a value to a field binary, a char field can be set as 'filename' that needs to be recomputed to specify the new file name. Before new api, the _internal_set_value method would trigger a onchange but it's no longer the case now (so onchange on filename field was no longer executed). Instead, manually set the value using set_value method which do trigger the onchange. Fixes #2427, opw 617109 --- addons/web/static/src/js/view_form.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 97fc997d861..4f4dd2a787d 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -5670,9 +5670,11 @@ instance.web.form.FieldBinary = instance.web.form.AbstractField.extend(instance. set_filename: function(value) { var filename = this.node.attrs.filename; if (filename) { - var tmp = {}; - tmp[filename] = value; - this.field_manager.set_values(tmp); + var field = this.field_manager.fields[filename]; + if (field) { + field.set_value(value); + field._dirty_flag = true; + } } }, on_clear: function() {