Skip navigation.

exploreopera

| Help

Sign up | Help

Innuendo and out the other

About Opera and stuff

Posts tagged with "opera"

STICKY POST

About this blog

, ,

This blog is mainly about the Opera browser, but every now and then, other posts not related to Opera might appear. As a developer for Opera Software ASA on the desktop version of Opera, I will be able to give insights into how certain features work and other information that might be useful for our loyal users.


Opera now at 100% on ACID 3

,

Just a quick note to let you know that Tim wrote on our Desktop Team blog just now about ACID 3. Our core technology manager just notified him that internal test builds are now at 100% on the ACID 3 test.

Customization additions in Opera 9.5 Alpha - part 1

, , , ...

Note: The things described here are for advanced customization users of Opera!

In our changelog for the Opera 9.5 Alpha release, we have a customization section. The first item is:

"Allow cascading dialog.ini files"

Opera has let you override the default dialog.ini file with the opera6.ini setting opera:config#UserPrefs|DialogConfiguration for some time now.

Previously, you needed to replace the whole dialog.ini with your own file containing all dialogs. This was changed for the Opera 9.5 Alpha release. You can now replace a single dialog by just overriding that particular dialog in your own custom dialog.ini file. This should make it much easier to customize Opera for your own (advanced) needs.

Second line in the changelog on customizations is:

"Added new delay action for setup files: delay, X where X is milliseconds. It will delay asynchronously the rest of the actions defined in the string until the specified time has expired"


Because actions in Opera can be asynchronous, it has previously been hard to make more advanced buttons containing multiple actions, where the second action might be reliant on the first action completing, before the second can run, etc.

This new delay action is an attempt to make it easier to make such buttons.

Here's an example button that will take you up and down this page a bit: button.
Drag this button to a toolbar in Opera and click on it. You should see this page scroll all the way to the bottom, wait for 2 seconds (2000 ms), then scroll all the way to the top again.

I will be back with more information about the other customization changes soon.

Opera 9.5 Alpha and BitTorrent

, , , ...

As many probably already know, we released Opera 9.5 Alpha today.

Opera's BitTorrent implementation is never meant to replace external clients for people that use BitTorrent a lot. Our goal has always been to have an easily accessable and workable client for casual users of BitTorrent, eg. for downloading linux distributions, game trailers, etc.

In this post, I will talk a little bit about the addition of Peer Exchange support in the BitTorrent client. The changelog says "Added support for the BitTorrent peer exchange protocol, which is compatible with libtorrent and µTorrent".

The implementation in Opera is encapsulated into a extension protocol for BitTorrent, namely the one described in the extension protocol specification. The extension supported is "ut_pex" which is the peer exchange message sent by µTorrent, all clients based on libtorrent, KTorrent and many other clients. Azureus is using a different and incompatible message for peer exchange, so Opera 9.5 Alpha will not exchange any peers with this client.

The extension protocol seems to be the only relatively well designed solution for extending the protocol, and several clients already support this protocol and some of the extensions encapsulated in it.

Further improvements to the BitTorrent support is planned for Opera 9.5 final.

Opera, memory usage and the working set

, ,

There's a commom misconception that the working set of an application, as seen in the task manager, is the amount of physical memory the application is using. This is not entirely correct.

The working set actually tells you how many virtual pages in the process are mapped into physical memory.

What the OS will do, when an application such as Opera is using external DLLs or even other parts of opera.dll, is to map that part of the dll into the virtual address space of Opera. The actual memory used will not increase, only the working set.

To use an example for the technical people out there:

  1. Open a file
  2. Call CreateFileMapping to create a mapping handle
  3. Call MapViewOfFile twice to create two different identical views on the same file
  4. Try looping through just one of the views and look at what that does to your process' working set
  5. Now try looping through both views and look at what that does to your process' working set


The result you will find is that the working set from #5 is double the working set from #4. However, the OS isn't using any more physical memory in #5 then in #4. So #5 will show as twice the memory used in the task manager, but in reality, there is very little difference in the physical memory used!

Now, if you minimize Opera, you will see that the memory used in task manager will decrease significantly. This is because the working set is freed by the OS.

Another thing worth noting is that plugins will add to the working set of Opera, some in a significant way.

I hope this clears up some points.

Desktop Team blog and weekly builds

, ,

As some might know, I'm part of the Desktop Team at Opera. We now have our own blog and the same blog will also announce semi-weekly builds available to the public.


Search engines in Opera 9 Technology Preview 2

, , , ...

With the release of Opera 9 Technology Preview 2, a few new features related to search engines have been added. First of all, there is now an editor for editing, adding new and deleting search engines.

One feature that has also been added is the possibility to create a search on any website if that website has a search field. Creating a search will automatically generate the query string. If this form has multiple options, it will include whatever has been typed into the form in the search.



In this particular example, I had selected "Tom's hardware" in the dropdown box, so when I select to create a search, a edit window comes up prefilled with all values necessary to use the search.



When you want to do a search with this recently added search engine, you just type into the addressbar using the shortcut you assigned to it.



The newly added search will also be available in the search field that is next to the address bar.



A search editor has been added to the preferences that allows you to edit existing search engines.



We hope this will make it much easier to use the search engines in Opera and make this powerful feature more accessible.

Thumbnails in Opera 9 Technology Preview 2

, , , ...

Opera 9 Technology Preview 2 adds thumbnails a couple of places. The thumbnail support is work-in-progress and will see improvements. However, we decided to give our users a sneak peak of things to come in future releases.

If you move the mouse cursor over a tab with a loaded page you will now see a thumbnail of that page. This feature is currently enabled by default, but can be disabled in opera:config.



When cycling tabs wth Ctrl+Tab you can also see a thumbnail of the page. This feature is currently disabled by default, but can be enabled in opera:config.



Only webpages will currently have thumbnails.



Content blocking in Opera 9 Technology Preview 2

, , ,

This post is a tutorial on how to use the content block feature introduced in Opera 9 Technical Preview 2. The feature is work-in-progress, but the Technical Preview will let you have a taste of how it works and make us gather feedback for future improvements.

Opera has had a feature that would let you block certain paths, protocols or servers for a long time. This feature has been configured using the "filter.ini" file and mostly used in kiosk mode or with third party tools. Documentation for this feature is part of the kiosk documentation found here.

The new content block feature in Opera 9 TP2 is based on the existing functionality that has been in Opera for a long time, but adds an easy-to-use user interface for maintaining this file.

To enable the feature, you need to set the page in "content block mode".

When you select the "Block content..." menu entry, the page will go into "content block mode". When the page is in this mode, all content that can be blocked (images and plugins) will appear normal, while text and other content will be greyed out.

You can now click on all the content you want to block and it will be added to the list of blocked content. Images and plugins will be drawn with a clear sign overlaid on the content when it is blocked.

A toolbar will be available when the page is in content block mode that will let you save, cancel or edit the filters that has been created so far.

If you press the "Details..." button, you will be able to edit the pattern Opera has created automatically to block content coming from the same path on the webserver.

As you can see, Opera has already created a pattern with a * wildcard to block all content that is loaded from the path starting at "http://portal.opera.com/img/". You may edit, delete or add new manual paths to be blocked in this dialog. * will match anything and ? will match a single character.

When you are done selecting the content to block, press "Done" in the toolbar.

If you would like to edit and delete all the paths to content that is currently being blocked by Opera, you may use the menu entry Tools->Advanced->Blocked content...


When you later load a webpage that contains blocked content, this content will not be loaded from the server and will be collapsed on the webpage.

Some changes have been made lowlevel compared to how the existing filter.ini filtering used to work:

- URLs are initially filtered in the layout engine and Opera will not attempt to load blocked content from the server. The layout engine will collapse the blocked content using the equivalent of the CSS "display: none".
- Lowlevel blocking of complete sites will still occur, so the existing functionality of filter.ini has not been changed. This could eg. be used to create rudimentary parental filters too.
- The default name for the configuration file is "urlfilter.ini" and if you have added content to block using the user interface, there is no need to configure a file or create a file.