From c4e056214434bd76cc4aca89628a7af053f3bac8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Wed, 6 Apr 2016 12:26:26 +0200 Subject: [PATCH] [FIX] web: editable list view waits for record to be loaded The editable list view method 'edit' is supposed to wait for the record to be completely loaded. But when loading the defaults values, it ignored the actual loading and completed too early. This commit chains the deferred with the form record. --- addons/web/static/src/js/views/list_view_editable.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/web/static/src/js/views/list_view_editable.js b/addons/web/static/src/js/views/list_view_editable.js index 097c554e7db..00da5704784 100644 --- a/addons/web/static/src/js/views/list_view_editable.js +++ b/addons/web/static/src/js/views/list_view_editable.js @@ -83,16 +83,18 @@ var Editor = Widget.extend({ return (this.is_editing() && !this.record.id); }, edit: function (record, configureField) { + var self = this; // TODO: specify sequence of edit calls var loaded; if(record) { this.form.trigger('load_record', _.extend({}, record)); loaded = this.form.record_loaded; } else { - loaded = this.form.load_defaults(); + loaded = this.form.load_defaults().then(function() { + return self.form.record_loaded; + }); } - var self = this; return loaded.then(function () { return self.do_show({reload: false}); }).then(function () {