summaryrefslogtreecommitdiff
path: root/browser/base/content/test/browser_bug422590.js
blob: 2ecb4c0b94a92efeabda9eb3d44668f71e230895 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
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,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();
  }
}