From ac5866a059c345480e246b558eeae1e94aead822 Mon Sep 17 00:00:00 2001 From: Brieuc-brd Date: Fri, 31 Mar 2023 13:52:52 +0200 Subject: [PATCH] [IMP] website: review/add extra toggleable elements for headers This commit fixes the structures of some existing elements (language selector, etc) and introduces new ones which will be possible to toggle in each new header templates in following commits. Note: the fixes may need to be backported in the future somehow. Note 2: after this commit, some of those elements can appear broken. This is because they are meant to be used in the new headers templates in following commits. task-3060986 Part-of: odoo/odoo#119650 Co-authored-by: Robin Lejeune (role) --- addons/website/static/src/js/content/menu.js | 13 +- addons/website/views/website_templates.xml | 173 +++++++++++++++++-- 2 files changed, 175 insertions(+), 11 deletions(-) diff --git a/addons/website/static/src/js/content/menu.js b/addons/website/static/src/js/content/menu.js index b4c3b9495f0..d90fe27025b 100644 --- a/addons/website/static/src/js/content/menu.js +++ b/addons/website/static/src/js/content/menu.js @@ -626,12 +626,13 @@ publicWidget.registry.hoverableDropdown = animations.Animation.extend({ }, }); -publicWidget.registry.HeaderMainCollapse = publicWidget.Widget.extend({ +publicWidget.registry.HeaderGeneral = publicWidget.Widget.extend({ selector: 'header#top', disabledInEditableMode: false, events: { 'show.bs.collapse #top_menu_collapse': '_onCollapseShow', 'hidden.bs.collapse #top_menu_collapse': '_onCollapseHidden', + "shown.bs.modal #o_search_modal": "_onSearchModalShown", }, //-------------------------------------------------------------------------- @@ -650,6 +651,16 @@ publicWidget.registry.HeaderMainCollapse = publicWidget.Widget.extend({ _onCollapseHidden() { this.el.classList.remove('o_top_menu_collapse_shown'); }, + /** + * @private + */ + _onSearchModalShown(ev) { + const searchModalEl = this.el.querySelector("#o_search_modal"); + const searchInputEl = this.el.querySelector(".search-query"); + if (searchModalEl) { + searchInputEl.focus(); + } + }, }); publicWidget.registry.navbarDropdown = animations.Animation.extend({ diff --git a/addons/website/views/website_templates.xml b/addons/website/views/website_templates.xml index fa01ada2ee1..506cafa44bf 100644 --- a/addons/website/views/website_templates.xml +++ b/addons/website/views/website_templates.xml @@ -2119,9 +2119,11 @@ @@ -2164,13 +2166,42 @@ + +