From 62786238357c20e41a979916f14257948695f8fa Mon Sep 17 00:00:00 2001 From: Markus Stange Date: Tue, 13 Apr 2021 20:22:39 +0000 Subject: [PATCH] Bug 1704875 - For now, keep synthesizing events on menus if a mouse button is set. r=robwu This capability is used by browser_ext_menus_capture_secondary_click.js, which checks that the mouse button is correctly propagated when clicking menu items. Once bug 1704879 is fixed and activateItem supports specifying a mouse button, we can revert this patch again. Differential Revision: https://phabricator.services.mozilla.com/D111901 --- browser/components/extensions/test/browser/head.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/browser/components/extensions/test/browser/head.js b/browser/components/extensions/test/browser/head.js index b6e57a807f39..906b87fab274 100644 --- a/browser/components/extensions/test/browser/head.js +++ b/browser/components/extensions/test/browser/head.js @@ -509,7 +509,12 @@ async function closeExtensionContextMenu(itemToSelect, modifiers = {}) { "popuphidden" ); if (itemToSelect) { - itemToSelect.closest("menupopup").activateItem(itemToSelect, modifiers); + if ("button" in modifiers) { + // Bug 1704879: activateItem does not currently support button + EventUtils.synthesizeMouseAtCenter(itemToSelect, modifiers); + } else { + itemToSelect.closest("menupopup").activateItem(itemToSelect, modifiers); + } } else { contentAreaContextMenu.hidePopup(); }