6d4317bf9b64c4aebc8aae6563287a455e4054cb chmalee Thu Jul 31 15:50:29 2025 -0700 Fixup new gear and x icons to use proper tooltips, refs #36152 diff --git src/hg/js/utils.js src/hg/js/utils.js index f4620ae5890..5c7d1213d94 100644 --- src/hg/js/utils.js +++ src/hg/js/utils.js @@ -3848,60 +3848,62 @@ imageV2.lastTrack = rightClick.makeMapItem(id); // currentMapItem gets set by mapItemMapOver. This is just backup } if (typeof greyBarIcons !== 'undefined' && greyBarIcons === true) { // add a gear icon over the grey bar to bring up the context menu let tdBtn = document.getElementById("td_btn_" + id); if (tdBtn) { if (!document.getElementById("gear_btn_" + id)) { let span = document.createElement("span"); span.id = "gear_btn_" + id; span.classList.add("hgTracksGearIcon", "ui-icon", "ui-icon-gear"); span.title = "Configure track"; tdBtn.appendChild(span); tdBtn.style.position = "relative"; + addMouseover(span, span.title); span.addEventListener("click", (e) => { // create a contextmenu event that the imgTbl will pick up e.preventDefault(); e.stopPropagation(); e.stopImmediatePropagation(); const rightClickEvent = new MouseEvent("contextmenu", { bubbles: true, cancelable: true, view: window, clientX: tdBtn.getBoundingClientRect().left + 15, clientY: tdBtn.getBoundingClientRect().top, button: 2, }); tdBtn.dispatchEvent(rightClickEvent); }); } } // add an 'x' icon in the label area to hide the track let tdSide = document.getElementById("td_side_" + id); if (tdSide) { // mouseover event fires if you stop moving the mouse while still // hovering the element and then move it again, don't make // duplicate btns in that case if (!document.getElementById("close_btn_" + id)) { let btn = document.createElement("span"); btn.id = "close_btn_" + id; btn.classList.add("hgTracksCloseIcon", "ui-icon", "ui-icon-close"); btn.title = "Hide track"; tdSide.appendChild(btn); + addMouseover(btn, btn.title); tdSide.style.position = "relative"; if (hgTracks && hgTracks.revCmplDisp) { // set up 'x' icon to the right btn.classList.add("hgTracksCloseIconRight"); } else { // set up 'x' icon to the left btn.classList.add("hgTracksCloseIconLeft"); } btn.addEventListener("click", (e) => { rightClick.hideTracks([id]); }); } } } }