diff --git a/app/assets/javascripts/discourse/lib/tooltip.js.es6 b/app/assets/javascripts/discourse/lib/tooltip.js.es6 index 227e0f6c3cd..ecf93d8c0ca 100644 --- a/app/assets/javascripts/discourse/lib/tooltip.js.es6 +++ b/app/assets/javascripts/discourse/lib/tooltip.js.es6 @@ -3,8 +3,9 @@ import { escapeExpression } from "discourse/lib/utilities"; const fadeSpeed = 300; const tooltipID = "#discourse-tooltip"; -export function showTooltip($this) { - const $parent = $this.offsetParent(); +export function showTooltip(e) { + const $this = $(e.currentTarget), + $parent = $this.offsetParent(); // html tooltip are risky try your best to sanitize anything // displayed as html to avoid XSS attacks const content = $this.attr("data-tooltip") @@ -77,9 +78,7 @@ export function hideTooltip() { export function registerTooltip(jqueryContext) { if (jqueryContext.length) { - jqueryContext - .off("click") - .on("click", event => showTooltip($(event.currentTarget))); + jqueryContext.off("click").on("click", event => showTooltip(event)); } } diff --git a/test/javascripts/lib/tooltip-test.js.es6 b/test/javascripts/lib/tooltip-test.js.es6 index ece7b0939ec..df59cfd7f3a 100644 --- a/test/javascripts/lib/tooltip-test.js.es6 +++ b/test/javascripts/lib/tooltip-test.js.es6 @@ -1,4 +1,4 @@ -import { registerTooltip } from "discourse/lib/tooltip"; +import { registerTooltip, registerHoverTooltip } from "discourse/lib/tooltip"; // prettier-ignore QUnit.module("lib:tooltip", { @@ -37,7 +37,7 @@ QUnit.test("text support", async assert => { QUnit.test("html support", async assert => { const $testHtmlLink = fixture(".test-html-link"); - registerTooltip($testHtmlLink); + registerHoverTooltip($testHtmlLink); await $testHtmlLink.click();