mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1128060: Fix copying permanentKey to a detached tab in e10s mode. r=billm, f=ttaubert
This commit is contained in:
parent
356a63426a
commit
8ce2d409ce
@ -1498,7 +1498,7 @@
|
||||
aBrowser.setAttribute("remote", aShouldBeRemote ? "true" : "false");
|
||||
// Tearing down the browser gives a new permanentKey but we want to
|
||||
// keep the old one. Re-set it explicitly after unbinding from DOM.
|
||||
aBrowser.permanentKey = permanentKey;
|
||||
aBrowser._permanentKey = permanentKey;
|
||||
parent.appendChild(aBrowser);
|
||||
|
||||
// Restore the progress listener.
|
||||
|
@ -412,6 +412,7 @@ skip-if = buildapp == 'mulet' || e10s
|
||||
[browser_tabMatchesInAwesomebar.js]
|
||||
[browser_tabMatchesInAwesomebar_perwindowpb.js]
|
||||
skip-if = e10s || os == 'linux' # Bug 1093373, bug 1104755
|
||||
[browser_tab_detach_restore.js]
|
||||
[browser_tab_drag_drop_perwindow.js]
|
||||
skip-if = buildapp == 'mulet'
|
||||
[browser_tab_dragdrop.js]
|
||||
|
@ -0,0 +1,31 @@
|
||||
"use strict";
|
||||
|
||||
add_task(function*() {
|
||||
let uri = "http://example.com/browser/browser/base/content/test/general/dummy_page.html";
|
||||
|
||||
// Clear out the closed windows set to start
|
||||
while (SessionStore.getClosedWindowCount() > 0)
|
||||
SessionStore.forgetClosedWindow(0);
|
||||
|
||||
let tab = gBrowser.addTab();
|
||||
tab.linkedBrowser.loadURI(uri);
|
||||
yield BrowserTestUtils.browserLoaded(tab.linkedBrowser);
|
||||
|
||||
let key = tab.linkedBrowser.permanentKey;
|
||||
let win = gBrowser.replaceTabWithWindow(tab);
|
||||
yield new Promise(resolve => whenDelayedStartupFinished(win, resolve));
|
||||
|
||||
is(win.gBrowser.selectedBrowser.permanentKey, key, "Should have properly copied the permanentKey");
|
||||
yield promiseWindowClosed(win);
|
||||
|
||||
is(SessionStore.getClosedWindowCount(), 1, "Should have restore data for the closed window");
|
||||
|
||||
win = SessionStore.undoCloseWindow(0);
|
||||
yield BrowserTestUtils.waitForEvent(win, "load");
|
||||
yield BrowserTestUtils.waitForEvent(win.gBrowser.tabs[0], "SSTabRestored");
|
||||
|
||||
is(win.gBrowser.tabs.length, 1, "Should have restored one tab");
|
||||
is(win.gBrowser.selectedBrowser.currentURI.spec, uri, "Should have restored the right page");
|
||||
|
||||
yield promiseWindowClosed(win);
|
||||
});
|
@ -388,9 +388,8 @@
|
||||
|
||||
<field name="_permanentKey">({})</field>
|
||||
|
||||
<property name="permanentKey"
|
||||
onget="return this._permanentKey;"
|
||||
onset="this._permanentKey = val;"/>
|
||||
<property name="permanentKey" readonly="true"
|
||||
onget="return this._permanentKey;"/>
|
||||
|
||||
<property name="outerWindowID" readonly="true">
|
||||
<getter><![CDATA[
|
||||
|
Loading…
Reference in New Issue
Block a user