From 8eb7fe8b0aa5ce2651e4ee8aa10ecbf3ec899847 Mon Sep 17 00:00:00 2001 From: Mathieu <126501525+Marchat9@users.noreply.github.com> Date: Thu, 5 Jun 2025 06:35:32 +0200 Subject: [PATCH] =?UTF-8?q?Adjust=20tooltip=20positioning=20in=20ha-sideba?= =?UTF-8?q?r=20for=20not=20first=20lis=E2=80=A6=20(#25696)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix(tooltip): fix tooltip positioning in ha-sidebar for not first listbox --- src/components/ha-sidebar.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/components/ha-sidebar.ts b/src/components/ha-sidebar.ts index ea303ab4c8..8ccaad0d95 100644 --- a/src/components/ha-sidebar.ts +++ b/src/components/ha-sidebar.ts @@ -626,12 +626,15 @@ class HaSidebar extends SubscribeMixin(LitElement) { this._tooltipHideTimeout = undefined; } const tooltip = this._tooltip; - const listbox = this.shadowRoot!.querySelector("ha-md-list")!; - let top = item.offsetTop + 11; - if (listbox.contains(item)) { - top += listbox.offsetTop; - top -= listbox.scrollTop; - } + const allListbox = this.shadowRoot!.querySelectorAll("ha-md-list")!; + const listbox = [...allListbox].find((lb) => lb.contains(item)); + + const top = + item.offsetTop + + 11 + + (listbox?.offsetTop ?? 0) - + (listbox?.scrollTop ?? 0); + tooltip.innerText = ( item.querySelector(".item-text") as HTMLElement ).innerText;