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.
viewmodes
attributefeature
elementparam
elementfeature
element's parameter that specifies its URL.The Speed Dial page is the "start page" that is displayed every time you open a new tab in Opera.
In order to have the content of an Opera extension be displayed in a Speed Dial cell, a developer declares in the configuration
document (config.xml
) of an extension what content they would like to have displayed. As shown in the example below, this is done by using a combination of a feature request, called opera:speeddial
, and by declaring support for the minimized
view mode. In addition, a valid URI must be specified in the widget
element's id
attribute. While this should be provided for all extensions, it is a requirement for Speed Dial extensions.
For compatibility with Opera Link's synchronization of Speed Dial, and to not break the Speed Dial user experience, a developer
is required to provide an URL as part of the Speed Dial feature request (via a param
element, as shown).
Valid Speed Dial extensions can use the SpeedDialContext
API which is available as an opera.contexts.speeddial
object in the background process (but not in other documents inside the extension). The SpeedDialContext
API
enables developers to read and change the title and URL of a Speed Dial cell. Developers should, however, make provisions in their scripts to make sure the extension still functions without the availability of the SpeedDialExtensionContext
API by checking for the presence of the API and dealing with it if it's not available. An example of how to
use the SpeedDialContext
API is given below.
Sample config.xml
file for a Speed Dial extension.
<!-- config.xml -->
<widget
xmlns="http://www.w3.org/ns/widgets"
id="http://example.com/myextension"
defaultlocale="en"
viewmodes="minimized">
<content src="weather.html"/>
<name short="Weather">
The Weather In Oslo
</name>
<description>
Speed Dial extension showing the current weather in Oslo.
</description>
<feature name="opera:speeddial" required="false">
<!-- Link to open when the Speed Dial is clicked -->
<param name="url" value="http://opera.com"/>
</feature>
</widget>
The background process JavaScript for the above sample extension, using the SpeedDialContext
API.
//
// The background process ('/background.js').
//
document.onload = function getWeather() {
var xhr = new XMLHttpRequest();
//... load weather info...
}
//Displays weather information in Speed Dial
//and update UI Item
function updateWeather(weatherInfo) {
if (opera.contexts.speeddial) {
var sd = opera.contexts.speeddial;
var location = weatherInfo.location;
// Change the Speed Dial's title
sd.title = location + " " + weatherInfo.forecast;
// Change the Speed Dial's URL
sd.url = "http://weather.com/" + location;
}
}