mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 580956: 'Undo Close Tab' should not be hidden when there are none to undo. r=dao
--HG-- extra : rebase_source : ae5bdfa5f4c169127f4b59e805a333ff148c3ca2
This commit is contained in:
parent
88a2e10a8a
commit
75a9921fa1
@ -7766,13 +7766,11 @@ var TabContextMenu = {
|
||||
menuItems[i].disabled = disabled;
|
||||
|
||||
// Session store
|
||||
// XXXzeniko should't we just disable this item as we disable
|
||||
// the tabbrowser-multiple items above - for consistency?
|
||||
document.getElementById("context_undoCloseTab").hidden =
|
||||
document.getElementById("context_undoCloseTab").disabled =
|
||||
Cc["@mozilla.org/browser/sessionstore;1"].
|
||||
getService(Ci.nsISessionStore).
|
||||
getClosedTabCount(window) == 0;
|
||||
|
||||
|
||||
// Only one of pin/unpin should be visible
|
||||
document.getElementById("context_pinTab").hidden = this.contextTab.pinned;
|
||||
document.getElementById("context_unpinTab").hidden = !this.contextTab.pinned;
|
||||
|
@ -140,7 +140,7 @@
|
||||
<menuitem id="context_undoCloseTab"
|
||||
label="&undoCloseTab.label;"
|
||||
accesskey="&undoCloseTab.accesskey;"
|
||||
command="History:UndoCloseTab"/>
|
||||
observes="History:UndoCloseTab"/>
|
||||
<menuitem id="context_closeTab" label="&closeTab.label;" accesskey="&closeTab.accesskey;"
|
||||
oncommand="gBrowser.removeTab(TabContextMenu.contextTab);"/>
|
||||
</menupopup>
|
||||
|
@ -137,6 +137,7 @@ _BROWSER_FILES = \
|
||||
browser_bug562649.js \
|
||||
browser_bug563588.js \
|
||||
browser_bug577121.js \
|
||||
browser_bug580956.js \
|
||||
browser_contextSearchTabPosition.js \
|
||||
browser_ctrlTab.js \
|
||||
browser_discovery.js \
|
||||
|
27
browser/base/content/test/browser_bug580956.js
Normal file
27
browser/base/content/test/browser_bug580956.js
Normal file
@ -0,0 +1,27 @@
|
||||
function numClosedTabs()
|
||||
Cc["@mozilla.org/browser/sessionstore;1"].
|
||||
getService(Ci.nsISessionStore).
|
||||
getClosedTabCount(window);
|
||||
|
||||
function isUndoCloseEnabled() {
|
||||
document.popupNode = gBrowser.tabs[0];
|
||||
TabContextMenu.updateContextMenu(document.getElementById("tabContextMenu"));
|
||||
return !document.getElementById("context_undoCloseTab").disabled;
|
||||
}
|
||||
|
||||
function test() {
|
||||
waitForExplicitFinish();
|
||||
|
||||
gPrefService.setIntPref("browser.sessionstore.max_tabs_undo", 0);
|
||||
gPrefService.clearUserPref("browser.sessionstore.max_tabs_undo");
|
||||
is(numClosedTabs(), 0, "There should be 0 closed tabs.");
|
||||
ok(!isUndoCloseEnabled(), "Undo Close Tab should be disabled.");
|
||||
|
||||
var tab = gBrowser.addTab("http://mochi.test:8888/");
|
||||
var browser = gBrowser.getBrowserForTab(tab);
|
||||
browser.addEventListener("load", function() {
|
||||
gBrowser.removeTab(tab);
|
||||
ok(isUndoCloseEnabled(), "Undo Close Tab should be enabled.");
|
||||
finish();
|
||||
}, true);
|
||||
}
|
Loading…
Reference in New Issue
Block a user