Closed
Bug 642998
Opened 14 years ago
Closed 14 years ago
Support tabbrowser API removeTab extension
Categories
(SeaMonkey :: Tabbed Browser, defect)
SeaMonkey
Tabbed Browser
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: neil, Assigned: neil)
References
Details
Attachments
(1 file, 1 obsolete file)
|
8.57 KB,
patch
|
misak.bugzilla
:
review+
|
Details | Diff | Splinter Review |
Firefox's tabbed browser extends removeTab by supporting a parameter object. Currently SeaMonkey uses a boolean flag to disable its undo. We should switch this to a parameter object which will also help us support the animate flag.
| Assignee | ||
Comment 1•14 years ago
|
||
I noticed that we don't pass the don't undo flag to session store. This means that we can undo close tab after print preview when we shouldn't be able to.
I wasn't sure what the test was trying to do though, so that might be wrong.
Comment 2•14 years ago
|
||
Comment on attachment 520333 [details] [diff] [review]
Proposed patch
The test is wrong, because on the moment of writing after hours of debugging a was stupid enough to not see that i'm clearing browser.tabs.max_tabs_undo pref on the wrong place, so i added don't undo param to be sure that sessionstore will restore tab, not our tabbrowser. So we don't need disableUndo here. I don't know the right procedure how to deal with this situation, so r+ if you review (and r+) and add this diff ;)
diff --git a/suite/common/tests/browser/browser_615394-SSWindowState_events.js b/suite/common/tests/browser/browser_615394-SSWindowState_events.js
--- a/suite/common/tests/browser/browser_615394-SSWindowState_events.js
+++ b/suite/common/tests/browser/browser_615394-SSWindowState_events.js
@@ -77,17 +77,16 @@ function getOuterWindowID(aWindow) {
function test() {
/** Test for Bug 615394 - Session Restore should notify when it is beginning and ending a restore **/
waitForExplicitFinish();
// Preemptively extend the timeout to prevent [orange]
requestLongerTimeout(2);
Services.prefs.setIntPref("browser.tabs.max_tabs_undo", 0);
runNextTest();
- Services.prefs.clearUserPref("browser.tabs.max_tabs_undo");
}
let tests = [
test_setTabState,
test_duplicateTab,
test_undoCloseTab,
test_setWindowState,
@@ -107,16 +106,17 @@ function runNextTest() {
}
}
let currentTest = tests.shift();
info("prepping for " + currentTest.name);
waitForBrowserState(testState, currentTest);
}
else {
+ Services.prefs.clearUserPref("browser.tabs.max_tabs_undo");
ss.setBrowserState(stateBackup);
finish();
}
}
/** ACTUAL TESTS **/
function test_setTabState() {
@@ -202,24 +202,22 @@ function test_undoCloseTab() {
busyEventCount = 0,
readyEventCount = 0,
reopenedTab;
ss.setTabValue(tab, "foo", "bar");
function onSSWindowStateBusy(aEvent) {
busyEventCount++;
- dump("onSSWindowStateBusy\n")
}
// undoCloseTab is "synchronous" in tab creation. Since restoreHistory is called
// via setTimeout, reopenedTab will be assigned before the SSWindowStateReady event
function onSSWindowStateReady(aEvent) {
readyEventCount++;
- dump("onSSWindowStateReady");
is(ss.getTabValue(reopenedTab, "foo"), "bar");
ss.setTabValue(reopenedTab, "baz", "qux");
}
function onSSTabRestored(aEvent) {
is(busyEventCount, 1);
is(readyEventCount, 1);
is(ss.getTabValue(reopenedTab, "baz"), "qux");
@@ -231,17 +229,17 @@ function test_undoCloseTab() {
runNextTest();
}
window.addEventListener("SSWindowStateBusy", onSSWindowStateBusy, false);
window.addEventListener("SSWindowStateReady", onSSWindowStateReady, false);
getBrowser().tabContainer.addEventListener("SSTabRestored", onSSTabRestored, false);
- getBrowser().removeTab(tab, true);
+ getBrowser().removeTab(tab);
reopenedTab = ss.undoCloseTab(window, 0);
}
function test_setWindowState() {
let testState = {
windows: [{
tabs: [
Attachment #520333 -
Flags: review?(misak.bugzilla) → review+
| Assignee | ||
Comment 3•14 years ago
|
||
* Used the fixed test (test passes locally)
* Fixed two tests for blank tabs
(one to stop them going into undo cache, one is for when you close the last
tab using the close button; this replaces the tab with a blank tab, and
undoing that should delete the blank tab.)
Attachment #520333 -
Attachment is obsolete: true
Attachment #520476 -
Flags: review?(misak.bugzilla)
Updated•14 years ago
|
Attachment #520476 -
Flags: review?(misak.bugzilla) → review+
Comment 4•14 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•