From fd807495ea4fecadf76224fc5c829d8eee4f2908 Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Tue, 21 Nov 2023 13:55:35 +0100 Subject: [PATCH] Fix navbar event listener --- gradle/changelog/navbar_events.yaml | 2 ++ scm-ui/ui-webapp/src/containers/NavigationBar.tsx | 11 ++++++++--- scm-ui/ui-webapp/src/containers/OmniSearch.tsx | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 gradle/changelog/navbar_events.yaml diff --git a/gradle/changelog/navbar_events.yaml b/gradle/changelog/navbar_events.yaml new file mode 100644 index 0000000000..8884a56a99 --- /dev/null +++ b/gradle/changelog/navbar_events.yaml @@ -0,0 +1,2 @@ +- type: fixed + description: Window event listener on navbar diff --git a/scm-ui/ui-webapp/src/containers/NavigationBar.tsx b/scm-ui/ui-webapp/src/containers/NavigationBar.tsx index 24891004d2..90779fc001 100644 --- a/scm-ui/ui-webapp/src/containers/NavigationBar.tsx +++ b/scm-ui/ui-webapp/src/containers/NavigationBar.tsx @@ -22,7 +22,7 @@ * SOFTWARE. */ -import React, {FC, useEffect, useRef, useState} from "react"; +import React, { FC, useEffect, useRef, useState } from "react"; import { Links } from "@scm-manager/ui-types"; import classNames from "classnames"; import styled from "styled-components"; @@ -107,8 +107,13 @@ const NavigationBar: FC = ({ links }) => { const [t] = useTranslation("commons"); const notificationsRef = useRef(null); useEffect(() => { - const close = () => { - if (burgerActive) { + const close = (event: MouseEvent) => { + const classList = event.target.classList.value; + if ( + !classList.includes("navbar-burger") && + !classList.includes("navbar-brand") && + !classList.includes("search-box") + ) { setBurgerActive(false); } }; diff --git a/scm-ui/ui-webapp/src/containers/OmniSearch.tsx b/scm-ui/ui-webapp/src/containers/OmniSearch.tsx index 38293541bd..3cc2414725 100644 --- a/scm-ui/ui-webapp/src/containers/OmniSearch.tsx +++ b/scm-ui/ui-webapp/src/containers/OmniSearch.tsx @@ -205,7 +205,7 @@ const OmniSearch: FC = ({ shouldClear }) => { })} > - + {entries}