diff --git a/addons/web/static/src/views/fields/statusbar/statusbar_field.js b/addons/web/static/src/views/fields/statusbar/statusbar_field.js index bfc21757444..f689c8515f5 100644 --- a/addons/web/static/src/views/fields/statusbar/statusbar_field.js +++ b/addons/web/static/src/views/fields/statusbar/statusbar_field.js @@ -45,8 +45,8 @@ export class StatusBarField extends Component { get currentName() { switch (this.props.record.fields[this.props.name].type) { case "many2one": { - const item = this.options.find((item) => item.isSelected); - return item ? item.name : ""; + const item = this.options.find((item) => this.props.value && item.id === this.props.value[0]); + return item ? item.display_name : ""; } case "selection": { const item = this.options.find((item) => item[0] === this.props.value); diff --git a/addons/web/static/tests/mobile/views/fields/statusbar_field_tests.js b/addons/web/static/tests/mobile/views/fields/statusbar_field_tests.js index 39c16ae173d..9fba23e21dd 100644 --- a/addons/web/static/tests/mobile/views/fields/statusbar_field_tests.js +++ b/addons/web/static/tests/mobile/views/fields/statusbar_field_tests.js @@ -60,6 +60,11 @@ QUnit.module("Mobile Fields", ({ beforeEach }) => { ".o_statusbar_status .dropdown-menu", "dropdown should be hidden" ); + assert.strictEqual( + fixture.querySelector(".o_statusbar_status button.dropdown-toggle").textContent.trim(), + "aaa", + "statusbar button should display current field value" + ); // open the dropdown await click(fixture, ".o_statusbar_status > button"); @@ -115,8 +120,8 @@ QUnit.module("Mobile Fields", ({ beforeEach }) => { assert.strictEqual( fixture.querySelector(".o_statusbar_status button.dropdown-toggle").textContent.trim(), "", - "statusbar button has no text" - ); // Behavior as of saas-15, might be improved + "statusbar button shouldn't have text for null field value" + ); await click(fixture, ".o_statusbar_status button.dropdown-toggle"); assert.containsOnce(