tor-browser

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

commit e3bf3f8589cbee795930a4fcaed0a590dddc4f15
parent ed27593a9e9a2f5a29d091dfb016ca1204075c6f
Author: Jonathan Sudiaman <jsudiaman@mozilla.com>
Date:   Wed,  1 Oct 2025 17:59:45 +0000

Bug 1991535 - Wait until tabs are closed to remove MozTabSplitViewWrapper. r=tabbrowser-reviewers,dao

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

Diffstat:
Mbrowser/components/tabbrowser/test/browser/tabs/browser_tab_splitview.js | 36++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+), 0 deletions(-)

diff --git a/browser/components/tabbrowser/test/browser/tabs/browser_tab_splitview.js b/browser/components/tabbrowser/test/browser/tabs/browser_tab_splitview.js @@ -141,3 +141,39 @@ add_task(async function test_split_view_panels() { BrowserTestUtils.removeTab(tab1); BrowserTestUtils.removeTab(tab2); }); + +add_task(async function test_split_view_preserves_multiple_pairings() { + info("Create four tabs for two split view pairings."); + const tab1 = await addTabAndLoadBrowser(); + const tab2 = await addTabAndLoadBrowser(); + const tab3 = await addTabAndLoadBrowser(); + const tab4 = await addTabAndLoadBrowser(); + + info("Create two split views (Tab 1 + Tab 2) & (Tab 3 + Tab 4)."); + const splitView1 = gBrowser.addTabSplitView([tab1, tab2]); + const splitView2 = gBrowser.addTabSplitView([tab3, tab4]); + + info("Switch to Tab 1 to activate the first split view."); + await BrowserTestUtils.switchTab(gBrowser, tab1); + await checkSplitViewPanelVisible(tab1, true); + await checkSplitViewPanelVisible(tab2, true); + await checkSplitViewPanelVisible(tab3, false); + await checkSplitViewPanelVisible(tab4, false); + + info("Switch to Tab 3 to activate the second split view."); + await BrowserTestUtils.switchTab(gBrowser, tab3); + await checkSplitViewPanelVisible(tab1, false); + await checkSplitViewPanelVisible(tab2, false); + await checkSplitViewPanelVisible(tab3, true); + await checkSplitViewPanelVisible(tab4, true); + + info("Switch back to the first split view."); + await BrowserTestUtils.switchTab(gBrowser, tab1); + await checkSplitViewPanelVisible(tab1, true); + await checkSplitViewPanelVisible(tab2, true); + await checkSplitViewPanelVisible(tab3, false); + await checkSplitViewPanelVisible(tab4, false); + + splitView1.close(); + splitView2.close(); +});