diff --git a/services/web/frontend/js/shared/components/tooltip.tsx b/services/web/frontend/js/shared/components/tooltip.tsx
index 1bf2de1be4..971e3c0ecb 100644
--- a/services/web/frontend/js/shared/components/tooltip.tsx
+++ b/services/web/frontend/js/shared/components/tooltip.tsx
@@ -63,6 +63,12 @@ function Tooltip({
[show, setShow]
)
+ useEffect(() => {
+ if (hidden) {
+ setShow(false)
+ }
+ }, [hidden])
+
useEffect(() => {
document.addEventListener('keydown', handleKeyDown, true)
return () => document.removeEventListener('keydown', handleKeyDown, true)
@@ -97,8 +103,8 @@ function Tooltip({
{...overlayProps}
delay={{ show: delayShow, hide: delayHide }}
placement={overlayProps?.placement || 'top'}
- show={show}
- onToggle={setShow}
+ show={hidden ? false : show}
+ onToggle={hidden ? undefined : setShow}
>
{overlayProps?.trigger === 'click'
? children
diff --git a/services/web/test/frontend/components/shared/tooltip.spec.tsx b/services/web/test/frontend/components/shared/tooltip.spec.tsx
index 18e0e9669c..6e61b32190 100644
--- a/services/web/test/frontend/components/shared/tooltip.spec.tsx
+++ b/services/web/test/frontend/components/shared/tooltip.spec.tsx
@@ -1,3 +1,4 @@
+import { useState } from 'react'
import OLTooltip from '@/shared/components/ol/ol-tooltip'
describe('