From 9a84e25342d30efc79b1ce333bd4682c7b1b967f Mon Sep 17 00:00:00 2001 From: Xavier ALT Date: Tue, 14 Jan 2014 11:04:39 +0100 Subject: [PATCH 1/2] [FIX] web: list view: keep original fields.reference value instact, store it's display in fake field_name+'__display' column, so that editing value in editable tree mode works bzr revid: xal@openerp.com-20140114100439-hvdu9cxwyb3vvsum --- addons/web/static/src/js/view_list.js | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js index ad48a8af1ef..ea37775038a 100644 --- a/addons/web/static/src/js/view_list.js +++ b/addons/web/static/src/js/view_list.js @@ -1022,7 +1022,7 @@ instance.web.ListView.List = instance.web.Class.extend( /** @lends instance.web. id = parseInt(ref_match[2], 10); new instance.web.DataSet(this.view, model).name_get([id]).done(function(names) { if (!names.length) { return; } - record.set(column.id, names[0][1]); + record.set(column.id + '__display', names[0][1]); }); } } else if (column.type === 'many2one') { @@ -2095,6 +2095,7 @@ instance.web.list.columns = new instance.web.Registry({ 'field.handle': 'instance.web.list.Handle', 'button': 'instance.web.list.Button', 'field.many2onebutton': 'instance.web.list.Many2OneButton', + 'field.reference': 'instance.web.list.Reference', 'field.many2many': 'instance.web.list.Many2Many' }); instance.web.list.columns.for_ = function (id, field, node) { @@ -2307,5 +2308,19 @@ instance.web.list.Many2Many = instance.web.list.Column.extend({ return this._super(row_data, options); } }); +instance.web.list.Reference = instance.web.list.Column.extend({ + _format: function (row_data, options) { + if (!_.isEmpty(row_data[this.id].value)) { + // If value, use __display version for printing + //console.log('_format', row_data[this.id], row_data[this.id + '__display']); + if (!!row_data[this.id + '__display']) { + row_data[this.id] = row_data[this.id + '__display']; + } else { + row_data[this.id] = {'value': ''}; + } + } + return this._super(row_data, options); + } +}); }; // vim:et fdc=0 fdl=0 foldnestmax=3 fdm=syntax: From 7960f9fc59235fe37adbc346f81e9f605cc65d5b Mon Sep 17 00:00:00 2001 From: Xavier ALT Date: Tue, 14 Jan 2014 12:59:47 +0100 Subject: [PATCH 2/2] [FIX] web: list view: fix wrong css for fields.reference in editable tree view bzr revid: xal@openerp.com-20140114115947-gkh09tb2vxsjyksk --- addons/web/static/src/css/base.css | 3 +++ addons/web/static/src/css/base.sass | 2 ++ 2 files changed, 5 insertions(+) diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index fabb8503b34..f1c99512118 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -2850,6 +2850,9 @@ .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field.oe_form_field_datetime input.oe_datepicker_master, .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field.oe_form_field_date input.oe_datepicker_master { width: 100% !important; } +.openerp .oe_list.oe_list_editable.oe_editing .oe_form_field.oe_form_field_reference { + display: table; +} .openerp .oe_list_group_name { white-space: nowrap; } diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index c54cd2920c0..28947b3b467 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -2243,6 +2243,8 @@ $sheet-padding: 16px &.oe_form_field_datetime,&.oe_form_field_date input.oe_datepicker_master width: 100% !important + &.oe_form_field_reference + display: table .oe_list_group_name white-space: nowrap // }}}