From dd6a3c291aee91c9ee7dc57c4ad1beffeb399e1d Mon Sep 17 00:00:00 2001 From: Eva Marco Date: Tue, 24 Mar 2026 11:22:52 +0100 Subject: [PATCH] :bug: Fix tooltip shown on tab change (#8719) --- .../src/app/main/ui/ds/tooltip/tooltip.cljs | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/frontend/src/app/main/ui/ds/tooltip/tooltip.cljs b/frontend/src/app/main/ui/ds/tooltip/tooltip.cljs index 968361f865..4c35d37303 100644 --- a/frontend/src/app/main/ui/ds/tooltip/tooltip.cljs +++ b/frontend/src/app/main/ui/ds/tooltip/tooltip.cljs @@ -198,6 +198,14 @@ (reset! active-tooltip {:id tooltip-id :trigger trigger-el}) (reset! visible* true))))))) + on-show-focus + (mf/use-fn + (mf/deps on-show) + (fn [event] + (let [related (dom/get-related-target event)] + (when (some? related) + (on-show event))))) + on-hide (mf/use-fn (mf/deps tooltip-id) @@ -234,7 +242,7 @@ (mf/spread-props props {:on-mouse-enter on-show :on-mouse-leave on-hide - :on-focus on-show + :on-focus on-show-focus :on-blur on-hide :ref internal-trigger-ref :on-key-down handle-key-down @@ -244,17 +252,6 @@ content aria-label)})] - (mf/use-effect - (mf/deps tooltip-id) - (fn [] - (let [handle-visibility-change - (fn [] - (when (.-hidden js/document) - (on-hide)))] - (js/document.addEventListener "visibilitychange" handle-visibility-change) - ;; cleanup - #(js/document.removeEventListener "visibilitychange" handle-visibility-change)))) - (mf/use-effect (mf/deps visible placement offset) (fn []