diff options
author | FranklinDM <mrmineshafter17@gmail.com> | 2019-02-02 14:39:23 +0800 |
---|---|---|
committer | FranklinDM <mrmineshafter17@gmail.com> | 2019-02-02 14:39:23 +0800 |
commit | 74e88de9e9e6b10328c69f20b699be6eaf28655a (patch) | |
tree | e14a8a62516ed42b7f8d53f7415706a723953519 /application | |
parent | 192715be578758ad2dc0cc85f2fba78a9ab747cb (diff) | |
download | UXP-74e88de9e9e6b10328c69f20b699be6eaf28655a.tar UXP-74e88de9e9e6b10328c69f20b699be6eaf28655a.tar.gz UXP-74e88de9e9e6b10328c69f20b699be6eaf28655a.tar.lz UXP-74e88de9e9e6b10328c69f20b699be6eaf28655a.tar.xz UXP-74e88de9e9e6b10328c69f20b699be6eaf28655a.zip |
[Basilisk] Use mousemove events instead of MousePosTracker for hiding the navigation bar in fullscreen
* Tag #336
Diffstat (limited to 'application')
-rw-r--r-- | application/basilisk/base/content/browser-fullScreenAndPointerLock.js | 35 |
1 files changed, 10 insertions, 25 deletions
diff --git a/application/basilisk/base/content/browser-fullScreenAndPointerLock.js b/application/basilisk/base/content/browser-fullScreenAndPointerLock.js index ebe55377f..b26a31f78 100644 --- a/application/basilisk/base/content/browser-fullScreenAndPointerLock.js +++ b/application/basilisk/base/content/browser-fullScreenAndPointerLock.js @@ -322,15 +322,9 @@ var FullScreen = { document.addEventListener("popuphidden", this._setPopupOpen, false); // If it is not safe to collapse, add the mouse position tracker or // else it won't be possible to hide the navigation toolbox again - if (!this._safeToCollapse()) { - let rect = gBrowser.mPanelContainer.getBoundingClientRect(); - this._mouseTargetRect = { - top: rect.top + 50, - bottom: rect.bottom, - left: rect.left, - right: rect.right - }; - MousePosTracker.addListener(this); + if (gPrefService.getBoolPref("browser.fullscreen.autohide")) { + gBrowser.mPanelContainer.addEventListener("mousemove", + this._collapseCallback, false); } // In DOM fullscreen mode, we hide toolbars with CSS if (!document.fullscreenElement) @@ -468,7 +462,8 @@ var FullScreen = { cleanup: function () { if (!window.fullScreen) { - MousePosTracker.removeListener(this); + gBrowser.mPanelContainer.removeEventListener("mousemove", + this._collapseCallback, false); document.removeEventListener("keypress", this._keyToggleCallback, false); document.removeEventListener("popupshown", this._setPopupOpen, false); document.removeEventListener("popuphidden", this._setPopupOpen, false); @@ -497,17 +492,12 @@ var FullScreen = { .getInterface(Ci.nsIDOMWindowUtils); }, - getMouseTargetRect: function() - { - return this._mouseTargetRect; - }, - // Event callbacks _expandCallback: function() { FullScreen.showNavToolbox(); }, - onMouseEnter: function() + _collapseCallback: function() { FullScreen.hideNavToolbox(); }, @@ -588,14 +578,8 @@ var FullScreen = { // Track whether mouse is near the toolbox if (trackMouse && !this.useLionFullScreen) { - let rect = gBrowser.mPanelContainer.getBoundingClientRect(); - this._mouseTargetRect = { - top: rect.top + 50, - bottom: rect.bottom, - left: rect.left, - right: rect.right - }; - MousePosTracker.addListener(this); + gBrowser.mPanelContainer.addEventListener("mousemove", + this._collapseCallback, false); } this._isChromeCollapsed = false; @@ -622,7 +606,8 @@ var FullScreen = { gNavToolbox.style.marginTop = -gNavToolbox.getBoundingClientRect().height + "px"; this._isChromeCollapsed = true; - MousePosTracker.removeListener(this); + gBrowser.mPanelContainer.removeEventListener("mousemove", + this._collapseCallback, false); }, _updateToolbars: function (aEnterFS) { |