diff options
Diffstat (limited to 'browser/base/content/test/general/browser_bug422590.js')
-rw-r--r-- | browser/base/content/test/general/browser_bug422590.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/browser/base/content/test/general/browser_bug422590.js b/browser/base/content/test/general/browser_bug422590.js new file mode 100644 index 000000000..f26919cc5 --- /dev/null +++ b/browser/base/content/test/general/browser_bug422590.js @@ -0,0 +1,50 @@ +function test() { + waitForExplicitFinish(); + // test the main (normal) browser window + testCustomize(window, testChromeless); +} + +function testChromeless() { + // test a chromeless window + var newWin = openDialog(getBrowserURL(), "_blank", + "chrome,dialog=no,location=yes,toolbar=no", "about:blank"); + ok(newWin, "got new window"); + + whenDelayedStartupFinished(newWin, function () { + // Check that the search bar is hidden + var searchBar = newWin.BrowserSearch.searchBar; + ok(searchBar, "got search bar"); + + var searchBarBO = searchBar.boxObject; + is(searchBarBO.width, 0, "search bar hidden"); + is(searchBarBO.height, 0, "search bar hidden"); + + testCustomize(newWin, function () { + newWin.close(); + finish(); + }); + }); +} + +function testCustomize(aWindow, aCallback) { + var fileMenu = aWindow.document.getElementById("file-menu"); + ok(fileMenu, "got file menu"); + is(fileMenu.disabled, false, "file menu initially enabled"); + + openToolbarCustomizationUI(function () { + // Can't use the property, since the binding may have since been removed + // if the element is hidden (see bug 422590) + is(fileMenu.getAttribute("disabled"), "true", + "file menu is disabled during toolbar customization"); + + closeToolbarCustomizationUI(onClose, aWindow); + }, aWindow); + + function onClose() { + is(fileMenu.getAttribute("disabled"), "false", + "file menu is enabled after toolbar customization"); + + if (aCallback) + aCallback(); + } +} |