summaryrefslogtreecommitdiffstats
path: root/browser/components/customizableui/test/browser_customizemode_contextmenu_menubuttonstate.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/customizableui/test/browser_customizemode_contextmenu_menubuttonstate.js')
-rw-r--r--browser/components/customizableui/test/browser_customizemode_contextmenu_menubuttonstate.js71
1 files changed, 71 insertions, 0 deletions
diff --git a/browser/components/customizableui/test/browser_customizemode_contextmenu_menubuttonstate.js b/browser/components/customizableui/test/browser_customizemode_contextmenu_menubuttonstate.js
new file mode 100644
index 0000000000..a268faa58a
--- /dev/null
+++ b/browser/components/customizableui/test/browser_customizemode_contextmenu_menubuttonstate.js
@@ -0,0 +1,71 @@
+"use strict";
+
+add_task(async function() {
+ ok(
+ !PanelUI.menuButton.hasAttribute("open"),
+ "Menu button should not be 'pressed' outside customize mode"
+ );
+ ok(
+ !PanelUI.menuButton.hasAttribute("disabled"),
+ "Menu button should not be disabled outside of customize mode"
+ );
+ await startCustomizing();
+
+ ok(
+ !PanelUI.menuButton.hasAttribute("open"),
+ "Menu button should still not be 'pressed' when in customize mode"
+ );
+ is(
+ PanelUI.menuButton.getAttribute("disabled"),
+ "true",
+ "Menu button should be disabled in customize mode"
+ );
+
+ let contextMenu = document.getElementById(
+ "customizationPaletteItemContextMenu"
+ );
+ let shownPromise = popupShown(contextMenu);
+ let newWindowButton = document.getElementById("wrapper-new-window-button");
+ EventUtils.synthesizeMouse(newWindowButton, 2, 2, {
+ type: "contextmenu",
+ button: 2,
+ });
+ await shownPromise;
+ ok(
+ !PanelUI.menuButton.hasAttribute("open"),
+ "Menu button should still not be 'pressed' when in customize mode after opening a context menu"
+ );
+ is(
+ PanelUI.menuButton.getAttribute("disabled"),
+ "true",
+ "Menu button should still be disabled in customize mode"
+ );
+ is(
+ PanelUI.menuButton.getAttribute("disabled"),
+ "true",
+ "Menu button should still be disabled in customize mode after opening context menu"
+ );
+
+ let hiddenContextPromise = popupHidden(contextMenu);
+ contextMenu.hidePopup();
+ await hiddenContextPromise;
+ ok(
+ !PanelUI.menuButton.hasAttribute("open"),
+ "Menu button should still not be 'pressed' when in customize mode after hiding a context menu"
+ );
+ is(
+ PanelUI.menuButton.getAttribute("disabled"),
+ "true",
+ "Menu button should still be disabled in customize mode after hiding context menu"
+ );
+ await endCustomizing();
+
+ ok(
+ !PanelUI.menuButton.hasAttribute("open"),
+ "Menu button should not be 'pressed' after ending customize mode"
+ );
+ ok(
+ !PanelUI.menuButton.hasAttribute("disabled"),
+ "Menu button should not be disabled after ending customize mode"
+ );
+});