From 5712a8cb2022fbc6f0a4f7e555b7cecd62d9aa7f Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Thu, 7 Sep 2023 14:14:07 -0400 Subject: [PATCH] add delay to desc/tag in en mouse events --- javascript/extraNetworks.js | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/javascript/extraNetworks.js b/javascript/extraNetworks.js index 4d833d8f9..9f9d6af88 100644 --- a/javascript/extraNetworks.js +++ b/javascript/extraNetworks.js @@ -162,15 +162,21 @@ function setupExtraNetworksForTab(tabname) { }); }); + let hoverTimer = null; gradioApp().getElementById(`${tabname}_extra_tabs`).onmouseover = (e) => { - const el = e?.target?.parentElement; - if (!el?.classList?.contains('card')) return; - if (el.title === previousCard) return; - readCardDescription(el.dataset.filename, el.dataset.description); - readCardTags(el, el.dataset.tags); - e.stopPropagation(); - e.preventDefault(); - previousCard = el.title; + const el = e.target.closest('.card'); // bubble-up to card + if (!el || (el.title === previousCard)) return; + if (!hoverTimer) { + hoverTimer = setTimeout(() => { + readCardDescription(el.dataset.filename, el.dataset.description); + readCardTags(el, el.dataset.tags); + previousCard = el.title; + }, 300); + } + el.onmouseout = () => { + clearTimeout(hoverTimer); + hoverTimer = null; + }; }; const intersectionObserver = new IntersectionObserver((entries) => {