From 6552ec5f02d6cafebe6bb6eba1c4af971de6c452 Mon Sep 17 00:00:00 2001 From: "Mr. M" Date: Tue, 13 May 2025 12:00:39 +0200 Subject: [PATCH] test: Added tests for closing glance, b=(no-bug), c=glance, tests --- src/zen/glance/ZenGlanceManager.mjs | 9 +++++-- src/zen/tests/glance/browser.toml | 1 + src/zen/tests/glance/browser_glance_close.js | 25 ++++++++++++++++++++ 3 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 src/zen/tests/glance/browser_glance_close.js diff --git a/src/zen/glance/ZenGlanceManager.mjs b/src/zen/glance/ZenGlanceManager.mjs index 5ee1a460e..5245e2dbf 100644 --- a/src/zen/glance/ZenGlanceManager.mjs +++ b/src/zen/glance/ZenGlanceManager.mjs @@ -127,7 +127,7 @@ if (gZenVerticalTabsManager._prefsRightSide) { this.sidebarButtons.setAttribute('right', true); } else { - this.sidebarButtons.removeAttribute('right'); + this.sidebarButtons.setAttribute('right', false); } for (const button of this.sidebarButtons.querySelectorAll('toolbarbutton')) { button.style.opacity = 0; @@ -256,7 +256,12 @@ hasFocused = false, skipPermitUnload = false, } = {}) { - if (this._animating || !this.#currentBrowser || this.animatingOpen || this._duringOpening) { + if ( + (this._animating && !onTabClose) || + !this.#currentBrowser || + (this.animatingOpen && !onTabClose) || + this._duringOpening + ) { return; } diff --git a/src/zen/tests/glance/browser.toml b/src/zen/tests/glance/browser.toml index d4863a9bd..b03b2368a 100644 --- a/src/zen/tests/glance/browser.toml +++ b/src/zen/tests/glance/browser.toml @@ -5,3 +5,4 @@ support-files = [ ["browser_glance_basic.js"] ["browser_glance_expand.js"] +["browser_glance_close.js"] diff --git a/src/zen/tests/glance/browser_glance_close.js b/src/zen/tests/glance/browser_glance_close.js new file mode 100644 index 000000000..4dfe41d62 --- /dev/null +++ b/src/zen/tests/glance/browser_glance_close.js @@ -0,0 +1,25 @@ +/* Any copyright is dedicated to the Public Domain. + https://creativecommons.org/publicdomain/zero/1.0/ */ + +'use strict'; + +add_task(async function test_Glance_Basic_Close() { + const currentTab = gBrowser.selectedTab; + await openGlanceOnTab(async (glanceTab) => { + ok( + currentTab.hasAttribute('glance-id'), + 'The glance tab should have the zen-glance-tab attribute' + ); + await BrowserTestUtils.removeTab(glanceTab); + await new Promise((resolve) => { + setTimeout(() => { + resolve(); + }, 500); + }); + ok( + !currentTab.hasAttribute('glance-id'), + 'The glance tab should not have the zen-glance-tab attribute' + ); + await BrowserTestUtils.removeTab(glanceTab); + }, false); +});