diff --git a/addons/web/static/src/webclient/navbar/navbar.js b/addons/web/static/src/webclient/navbar/navbar.js index 7c4c7dbf259..c869b476641 100644 --- a/addons/web/static/src/webclient/navbar/navbar.js +++ b/addons/web/static/src/webclient/navbar/navbar.js @@ -7,11 +7,25 @@ import { registry } from "@web/core/registry"; import { debounce } from "@web/core/utils/timing"; import { ErrorHandler } from "@web/core/utils/components"; -import { Component, onWillDestroy, onWillUnmount, useExternalListener, useEffect, useRef } from "@odoo/owl"; +import { + Component, + onWillDestroy, + onWillUnmount, + useExternalListener, + useEffect, + useRef, +} from "@odoo/owl"; const systrayRegistry = registry.category("systray"); const getBoundingClientRect = Element.prototype.getBoundingClientRect; +class NavBarDropdownItem extends DropdownItem {} +NavBarDropdownItem.template = "web.NavBar.DropdownItem"; +NavBarDropdownItem.props = { + ...DropdownItem.props, + style: { type: String, optional: true }, +}; + export class MenuDropdown extends Dropdown { setup() { super.setup(); @@ -201,5 +215,5 @@ export class NavBar extends Component { } } NavBar.template = "web.NavBar"; -NavBar.components = { Dropdown, DropdownItem, MenuDropdown, ErrorHandler }; +NavBar.components = { Dropdown, DropdownItem: NavBarDropdownItem, MenuDropdown, ErrorHandler }; NavBar.props = {}; diff --git a/addons/web/static/src/webclient/navbar/navbar.scss b/addons/web/static/src/webclient/navbar/navbar.scss index 638a6c3e3b3..f2b373c8e43 100644 --- a/addons/web/static/src/webclient/navbar/navbar.scss +++ b/addons/web/static/src/webclient/navbar/navbar.scss @@ -58,6 +58,14 @@ border-radius: $o-navbar-dropdown-menu-border-radius; } + .dropdown-header.dropdown-menu_group { + margin-top: 0; + } + + .dropdown-item + .dropdown-header:not(.o_more_dropdown_section_group) { + margin-top: .3em; + } + .o_dropdown_menu_group_entry.dropdown-item { padding-left: $o-dropdown-hpadding * 1.5; diff --git a/addons/web/static/src/webclient/navbar/navbar.xml b/addons/web/static/src/webclient/navbar/navbar.xml index cd2be93347f..fa73c6da87a 100644 --- a/addons/web/static/src/webclient/navbar/navbar.xml +++ b/addons/web/static/src/webclient/navbar/navbar.xml @@ -95,6 +95,7 @@ + @@ -110,29 +111,34 @@ + + + props.style + + + + -