diff --git a/addons/web/static/src/js/fields/basic_fields.js b/addons/web/static/src/js/fields/basic_fields.js index 83b6d885898..11da78c89e0 100644 --- a/addons/web/static/src/js/fields/basic_fields.js +++ b/addons/web/static/src/js/fields/basic_fields.js @@ -3036,6 +3036,7 @@ var FieldDomain = AbstractField.extend({ new view_dialogs.SelectCreateDialog(this, { title: _t("Selected records"), res_model: this._domainModel, + context: this.record.getContext({fieldName: this.name, viewType: this.viewType}), domain: this.value || "[]", no_create: true, readonly: true, diff --git a/addons/web/static/tests/fields/basic_fields_tests.js b/addons/web/static/tests/fields/basic_fields_tests.js index 8d5dde14bfe..d537698432f 100644 --- a/addons/web/static/tests/fields/basic_fields_tests.js +++ b/addons/web/static/tests/fields/basic_fields_tests.js @@ -5743,6 +5743,36 @@ QUnit.module('basic_fields', { form.destroy(); }); + QUnit.test('field context is propagated when opening selection', async function (assert) { + assert.expect(1); + + this.data.partner.records[0].foo = "[]"; + + var form = await createView({ + View: FormView, + model: 'partner', + data: this.data, + arch: ` +
+ `, + archs: { + 'partner_type,false,list': '