mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 15:15:23 +00:00
64 lines
2.5 KiB
JavaScript
64 lines
2.5 KiB
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
function test() {
|
|
waitForExplicitFinish();
|
|
|
|
let addonbar = document.getElementById("addon-bar");
|
|
ok(addonbar.collapsed, "addon bar is collapsed by default");
|
|
|
|
let topMenu, toolbarMenu;
|
|
|
|
function onTopMenuShown(event) {
|
|
ok(1, "top menu popupshown listener called");
|
|
event.currentTarget.removeEventListener("popupshown", arguments.callee, false);
|
|
// open the customize or toolbars menu
|
|
toolbarMenu = document.getElementById("appmenu_customizeMenu") ||
|
|
document.getElementById("viewToolbarsMenu").firstElementChild;
|
|
toolbarMenu.addEventListener("popupshown", onToolbarMenuShown, false);
|
|
toolbarMenu.addEventListener("popuphidden", onToolbarMenuHidden, false);
|
|
toolbarMenu.openPopup();
|
|
}
|
|
|
|
function onTopMenuHidden(event) {
|
|
ok(1, "top menu popuphidden listener called");
|
|
event.currentTarget.removeEventListener("popuphidden", arguments.callee, false);
|
|
finish();
|
|
}
|
|
|
|
function onToolbarMenuShown(event) {
|
|
ok(1, "sub menu popupshown listener called");
|
|
event.currentTarget.removeEventListener("popupshown", arguments.callee, false);
|
|
|
|
// test the menu item's default state
|
|
let menuitem = document.getElementById("toggle_addon-bar");
|
|
ok(menuitem, "found the menu item");
|
|
is(menuitem.getAttribute("checked"), "false", "menuitem is not checked by default");
|
|
|
|
// click on the menu item
|
|
// TODO: there's got to be a way to check+command in one shot
|
|
menuitem.setAttribute("checked", "true");
|
|
menuitem.click();
|
|
|
|
// now the addon bar should be visible and the menu checked
|
|
is(addonbar.getAttribute("collapsed"), "false", "addon bar is visible after executing the command");
|
|
is(menuitem.getAttribute("checked"), "true", "menuitem is checked after executing the command");
|
|
|
|
toolbarMenu.hidePopup();
|
|
}
|
|
|
|
function onToolbarMenuHidden(event) {
|
|
ok(1, "toolbar menu popuphidden listener called");
|
|
event.currentTarget.removeEventListener("popuphidden", arguments.callee, false);
|
|
topMenu.hidePopup();
|
|
}
|
|
|
|
// open the appmenu or view menu
|
|
topMenu = document.getElementById("appmenu-popup") ||
|
|
document.getElementById("menu_viewPopup");
|
|
topMenu.addEventListener("popupshown", onTopMenuShown, false);
|
|
topMenu.addEventListener("popuphidden", onTopMenuHidden, false);
|
|
topMenu.openPopup();
|
|
}
|