diff --git a/scripts/dom-utils.js b/scripts/dom-utils.js
index 558c3a5..c0a6631 100644
--- a/scripts/dom-utils.js
+++ b/scripts/dom-utils.js
@@ -32,10 +32,10 @@ export function setText(dataValue, text, props = {}) {
export function debounce(fn, milliseconds = 200) {
let timeout = null;
- return (e) => {
+ return (...e) => {
if (timeout) {
clearTimeout(timeout);
}
- timeout = setTimeout(() => fn(e), milliseconds);
+ timeout = setTimeout(() => fn(...e), milliseconds);
}
}
diff --git a/scripts/tooltip.js b/scripts/tooltip.js
index fd2c112..ac97fb9 100644
--- a/scripts/tooltip.js
+++ b/scripts/tooltip.js
@@ -8,6 +8,14 @@ let suppressTooltips = false;
let activeTooltipTarget = null;
export function initializeTooltips() {
+ document.querySelectorAll("[data-retain-tooltip-hover]").forEach(elem =>
+ elem.addEventListener("mousemove", e => {
+ if (lastCoordinates !== null) {
+ e.stopPropagation();
+ lastCoordinates = { x: e.pageX, y: e.pageY };
+ emitEvent("tooltips:show");
+ }
+ }));
window.addEventListener("mousemove", () => {
if (lastCoordinates !== null) {
emitEvent("tooltips:hide");