tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 1432c0f4decb87666b8610cf2c78190d3a87f9ff
parent 28b770dc0348f7db9eb58e52e69a11635721a864
Author: Lorenz A <me@lorenzackermann.xyz>
Date:   Mon, 15 Dec 2025 14:11:43 +0000

Bug 2004253 - [devtools] Turn devtools/client/shared/widgets/tooltip/TooltipToggle.js into an ES class. r=devtools-reviewers,nchevobbe

Differential Revision: https://phabricator.services.mozilla.com/D276396

Diffstat:
Mdevtools/client/shared/widgets/tooltip/TooltipToggle.js | 41++++++++++++++++++++---------------------
1 file changed, 20 insertions(+), 21 deletions(-)

diff --git a/devtools/client/shared/widgets/tooltip/TooltipToggle.js b/devtools/client/shared/widgets/tooltip/TooltipToggle.js @@ -15,20 +15,17 @@ const DEFAULT_TOGGLE_DELAY = 50; * provided to the start() method to know whether or not the node being * hovered over should indeed receive the tooltip. */ -function TooltipToggle(tooltip) { - this.tooltip = tooltip; - this.win = tooltip.doc.defaultView; +class TooltipToggle { + constructor(tooltip) { + this.tooltip = tooltip; + this.win = tooltip.doc.defaultView; - this._onMouseMove = this._onMouseMove.bind(this); - this._onMouseOut = this._onMouseOut.bind(this); + this._onMouseMove = this._onMouseMove.bind(this); + this._onMouseOut = this._onMouseOut.bind(this); - this._onTooltipMouseOver = this._onTooltipMouseOver.bind(this); - this._onTooltipMouseOut = this._onTooltipMouseOut.bind(this); -} - -module.exports.TooltipToggle = TooltipToggle; - -TooltipToggle.prototype = { + this._onTooltipMouseOver = this._onTooltipMouseOver.bind(this); + this._onTooltipMouseOut = this._onTooltipMouseOut.bind(this); + } /** * Start tracking mouse movements on the provided baseNode to show the * tooltip. @@ -92,7 +89,7 @@ TooltipToggle.prototype = { } else { target.classList.add("non-interactive-toggle"); } - }, + } /** * If the start() function has been used previously, and you want to get rid @@ -120,7 +117,7 @@ TooltipToggle.prototype = { this._baseNode = null; this._targetNodeCb = null; this._lastHovered = null; - }, + } _onMouseMove(event) { if (event.target !== this._lastHovered) { @@ -146,7 +143,7 @@ TooltipToggle.prototype = { ); }, this._toggleDelay); } - }, + } /** * Is the given target DOMNode a valid node for toggling the tooltip on hover. @@ -162,7 +159,7 @@ TooltipToggle.prototype = { } return null; - }, + } _onMouseOut(event) { // Only hide the tooltip if the mouse leaves baseNode. @@ -179,20 +176,22 @@ TooltipToggle.prototype = { this.toggleTimer = this.win.setTimeout(() => { this.tooltip.hide(); }, this._toggleDelay); - }, + } _onTooltipMouseOver() { this.win.clearTimeout(this.toggleTimer); - }, + } _onTooltipMouseOut() { this.win.clearTimeout(this.toggleTimer); this.toggleTimer = this.win.setTimeout(() => { this.tooltip.hide(); }, this._toggleDelay); - }, + } destroy() { this.stop(); - }, -}; + } +} + +module.exports.TooltipToggle = TooltipToggle;