This documentation relates to Opera's now deprecated .oex Extension API framework for Opera versions <= 12.15 and also provided by our OEX2NEX shim library.
For the latest Opera Extensions API documentation for Opera versions > 12.15 please consult the latest Opera Extensions API documentation online.
The contexts
attribute is used to define the list of contexts that this context menu item will appear in. The list of valid context values for this attribute include all
, page
, frame
, selection
, link
, editable
, image
, video
and audio
. The default value is an array with a single entry of page
.
DOMString[] contexts
The following example creates an item in the context menu to open links in private tabs. In other words, the "Open link in private tab" item will appear only when a link is right-/Ctrl-clicked.
<!--
The configuration file ('config.xml').
-->
<?xml version='1.0' encoding='utf-8'?>
<widget xmlns="http://www.w3.org/ns/widgets">
...
<feature name="opera:contextmenus"/>
...
</widget>
//
// The background process (e.g. index.html)
//
if (opera.contexts.menu) {
var menu = opera.contexts.menu;
// Create a menu item properties object
var itemProps = {
title: 'Open link in private tab',
contexts: ['link'],
onclick: function(event) {
// Create a tab properties object
var tabProps = {
url: event.linkURL,
private: true
};
// Create a tab with the specified properties
var tab = opera.extension.tabs.create(tabProps);
}
}
// Create a menu item with the specified properties
var item = menu.createItem(itemProps);
// Add the menu item to the context menu
menu.addItem(item);
}