diff options
Diffstat (limited to 'widget/nsIStandaloneNativeMenu.idl')
-rw-r--r-- | widget/nsIStandaloneNativeMenu.idl | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/widget/nsIStandaloneNativeMenu.idl b/widget/nsIStandaloneNativeMenu.idl new file mode 100644 index 0000000000..b995f1f8b9 --- /dev/null +++ b/widget/nsIStandaloneNativeMenu.idl @@ -0,0 +1,55 @@ +/* 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/. */ + +#include "nsISupports.idl" + +webidl Element; + +/** + * Platform-independent interface to platform native menu objects. + */ + +[scriptable, uuid(7F7201EB-510C-4CEF-BDF0-04A15A7A4A8C)] +interface nsIStandaloneNativeMenu : nsISupports +{ + /** + * Initialize the native menu using given XUL DOM element. + * + * @param aDOMElement A XUL DOM element of tag type |menu| or |menupopup|. + */ + void init(in Element aElement); + + /** + * This method must be called before the menu is opened and displayed to the + * user. It allows the platform code to update the menu and also determine + * whether the menu should even be shown. + * + * @return true if the menu can be shown, false if it should not be shown + */ + boolean menuWillOpen(); + + /** + * Activate the native menu item specified by |anIndexString|. This method + * is intended to be used by the test suite. + * + * @param anIndexString string containing a list of indices separated by + * pipe ('|') characters + */ + void activateNativeMenuItemAt(in AString anIndexString); + + /** + * Force an update of the native menu item specified by |anIndexString|. This + * method is intended to be used by the test suite. + * + * @param anIndexString string containing a list of indices separated by + * pipe ('|') characters + */ + void forceUpdateNativeMenuAt(in AString anIndexString); + + /** + * Print information about the menu structure to stdout. Only used for + * debugging. + */ + void dump(); +}; |