7f1fa012784d2a54bfacd8b1e98045dedceb3c29 chmalee Fri Jun 14 16:18:33 2024 -0700 Make some of the less helpful tooltips have a shorter delay, refs #33540 diff --git src/hg/js/utils.js src/hg/js/utils.js index 9c7e6f4..10182bc 100644 --- src/hg/js/utils.js +++ src/hg/js/utils.js @@ -4018,31 +4018,31 @@ e = triggeringMouseMoveEv; if (mousedNewItem && !(mouseIsOverPopup(e, currTooltip, 0))) { mousemoveController.abort(); hideMouseoverText(currTooltip); showMouseoverText(triggeringMouseMoveEv); } } function mousemoveHelper(e) { /* Helper function for deciding whether to keep a tooltip visible upon a mousemove event */ if (mousemoveTimer) { clearTimeout(mousemoveTimer); } let isDelayedTooltip = lastMouseoverEle.getAttribute("tooltipDelay"); if (isDelayedTooltip !== null && isDelayedTooltip === "delayed") { - mousemoveTimer = setTimeout(mousemoveTimerHelper, 3000, e, this); + mousemoveTimer = setTimeout(mousemoveTimerHelper, 1500, e, this); mousedNewItem = true; mousemoveController.abort(); hideMouseoverText(this); } else { mousemoveTimer = setTimeout(mousemoveTimerHelper, 500, e, this); // we are moving the mouse away, hide the tooltip regardless how much time has passed if (!(mouseIsOverPopup(e, this) || mouseIsOverItem(e, this))) { mousemoveController.abort(); hideMouseoverText(this); return; } } } function showMouseoverText(ev) { @@ -4140,31 +4140,31 @@ if (mouseoverTimer) { // user is moving their mouse around, make sure where they stop is what we show clearTimeout(mouseoverTimer); } if (mousemoveTimer) { // user is moving their mouse around and has triggered a potentially triggered // a new pop up, clear the move timeout clearTimeout(mousemoveTimer); } // If there is no tooltip present, we want a small but noticeable delay // before showing a tooltip if (canShowNewMouseover) { // some tooltips are special and have a longer delay let isDelayedTooltip = ele1.getAttribute("tooltipDelay"); if (isDelayedTooltip !== null && isDelayedTooltip === "delayed") { - mouseoverTimer = setTimeout(showMouseoverText, 3000, e); + mouseoverTimer = setTimeout(showMouseoverText, 1500, e); } else { mouseoverTimer = setTimeout(showMouseoverText, 500, e); } } } function addMouseover(ele1, text = null, ele2 = null) { /* Adds wrapper elements to control various mouseover events */ if (!mouseoverContainer) { mouseoverContainer = document.createElement("div"); mouseoverContainer.className = "tooltip"; mouseoverContainer.style.position = "fixed"; mouseoverContainer.style.display = "inline-block"; mouseoverContainer.style.visibility = "hidden"; mouseoverContainer.style.opacity = "0";