files/en-us/mozilla/add-ons/webextensions/api/menus/onhidden/index.md
Fired when the browser stops displaying a menu: for example because the user clicked outside it or selected an item.
It is only triggered for menus that can be manipulated using the {{WebExtAPIRef("menus")}} API itself: this includes the context menu, the browser's tools menu, and the bookmarks menu.
This is most likely to be used in combination with the {{WebExtAPIRef("menus.onShown")}} and {{WebExtAPIRef("menus.refresh()")}} APIs: an extension can update the menu when it is shown, then undo the changes when it is hidden.
Firefox makes this event available via the contextMenus namespace as well as the menus namespace.
browser.menus.onHidden.addListener(listener)
browser.menus.onHidden.removeListener(listener)
browser.menus.onHidden.hasListener(listener)
Events have three functions:
addListener(listener)
removeListener(listener)
listener argument is the listener to remove.hasListener(listener)
listener is registered for this event. Returns true if it is listening, false otherwise.listener
This example just logs a message whenever a menu is hidden:
function hidden() {
console.log("Menu was hidden");
}
browser.menus.onHidden.addListener(hidden);
{{WebExtExamples}}
{{Compat}}