Opera archive

Autosizer 2, UserJS and cross-domain storage

2008-06-17 12:41

Back in 2005, I wrote a UserJS named Autosizer that enhances Opera’s behavior when you view a single image. The script from back then has one inherent problem, though; when you set a resize mode, it would be remembered on a per-site basis, instead of as a global option. Which, frankly, sucks, as I usually prefer a preference to be that, just a preference that sticks, whether I am viewing infinite lolcats or ray tracing examples

Enter Autosizer 2, which fixes this, through a hack, which either is really clever, completely insane, or both. First off, download and install the user script. The script is a complete rewrite of the old script, and has been on a severe diet: There are now only two modes: View in original size, or Fit to screen.

The hack: Iframes, error pages, invalid domains and cross-document messaging

The way this works is roughly:

  1. When an image is loaded, such as the two example images above, the script creates and injects an iframe pointing to http://0.0.0.0/img — an invalid URL
  2. Next, the other half of the script activates only on the URL mentioned above, and sets up a few listeners for cross-document messages. It recognizes three settings, one for setting Fit to screen, one for no fit, and one for just retrieving the current setting
  3. Every 300ms, the iframe will post a message to its parent window, with the current value of the setting.
  4. The event listeners in the parent window (the image) will, upon getting a message from the iframe set the correct sizing mode.
  5. The net effect of this is that we now have a cross-domain preference storage for UserJS.

What about security? Well, this is the catch, there is absolutely no security here, so a user script author should never store anything here that is remotely private, nor should an author assume that data stored in this way are not corrupted: A web page can send and retrieve messages in just the same way a user script can.

So, how much data can you store? Well, you have an entire /8 to store cookies on, which is 16 777 216 domains, you can have 30 cookies per domain, of max 4096 bytes each. That is 1.87 terabytes. Just don’t try. Or if you do, write a virtual filesystem implementation or something that gives you infinite geek points.

Should you want to mess around with the autosizer script, it’s licensed under the New BSD License. Enjoy.

Opera 9.5

2008-06-12 12:00

Ok, I’m crazy busy these days, but I still have to write a few words, now that Opera 9.5 is out. During the last couple of years, Opera has grown several shadows of awesome:

Dragonfly

For developers, one of the most signifcant new features is Dragonfly - the open source developer tool for Opera 9.5. Currently, Dragonfly is officially in alpha, and its release schedule is somewhat independent from the rest of the browser. If you want to know what is happening to it, and to get access to the weeklies of it, head over to the Dragonfly blog

Standards support

The list here is too long to go through, it would be worthy of multiple blog posts on its own (I might make some on some aspects of standards, though). Suffice it to say that the internal core release tied the race for Acid 3 with Webkit. Note that some of the improvements that went in by passing Acid3 are not available in the desktop release at this stage, so Opera 9.5 for desktop is currently at 83/100.

The awesomest of all awesome bars

The address bar in Opera 9.5 is the true awesomebar, not that other one you’ve heard of. When you visit a page in Opera 9.5, Opera creates a full-text index of the web page. When you’ve browsed, and forgotten where or what the web page title was, the quick-find feature searches this full-text index, giving you a complete set of results.. Should you prefer to view the results in a different way than as a drop-down, there is opera:historysearch which you can use more or less like a normal search engine.

Opera Link

It’s strange how much I have come to depend on this feature. So much, in fact, that I had to look up whether it actually was new to 9.5 or not. It is, it synchronizes your bookmarks and your speed dial, and makes sure you always have your bookmarks everywhere. For me as a heavy user of Opera Mini this is a killer feature.

Widgets

Ah. Widgets. Unfortunately, the File I/O stuff is not yet to be seen in the regular builds, but there are other improvements in:

  • Showing/hiding of widgets using widget.show() and widget.hide()
  • Widgets can now request attention using widget.getAttention()
  • Another means of requesting (more intrusive) attention, is through widget.showNotification() which will display a message, and can take a callback for when the notification is acknowledged.

Needless to say, these are all going in to the Widget API specification — I just need to be a bit less crazy busy, so I can push towards a public working draft.

Changelogs

Download

That’s it for today, now go Download!

File I/O in widgets and the browser

2008-05-07 20:28

Ok, so I had a somewhat mystically titled presentation at XTech, titled Going full circle: Giving Web Applications and Widgets access to device and user data. The slides are here (Should work reasonably well in Firefox, WebKit and Opera — does not work in IE. Navigate with PageUp/PageDown or the mouse wheel)

What the presentation was actually about was File I/O in the context of the browser, or more specifically, in widgets. We produced an input paper to be picked up for standardization.

Further, we will release builds on labs.opera.com shortly, so you can get to play with it shortly, and hopefully also with some example code, so you can get your heads wrapped around this.

Edit: There are now public builds for you to play with here — have fun

OpenOpera

2008-04-01 12:11

I, and the rest of my cow-orkers are currently in a state of shock. When we came in to the office at eight, an extraordinary meeting was called, where managment made the following annoucment:

Seeing as Microsoft are working hard to obsolete themselves with Windows Vista, we do not see how their platform can survive for the next two to three years. Instead of betting all their horses on a deceased platform, consumers are going to be requiring a stable and friendly user experience that will last beyond the era of Microsoft. The increasing focus on Free platforms, such as Linux have wants to put Opera Software in a position to be the dominant browser, included with the most widely spread platform. Thus, we are announcing the following change:

Starting from now, we will free the Opera platform, and we will be launching the Open Opera Platform with a public repository of Opera for all platforms. We will also be announcing an Opera Developer Program, hosting projects based on the Open Opera Platform.

Read the full press release here.

Edit: If the rick roll wasn’t enough, look at the publication date of this entry

ACID3: Now with a public build

2008-03-28 15:51

For those that says that a public build of Opera getting 100/100 on ACID3. There now is one — both for Linux and Windows:

As you will notice, this is not a regular Opera desktop build, but a version of WinGogi desktop. This is the Windows version of the reference builds that we use internally for testing Opera’s platform-independent Core. “Desktop” means it is compiled with the same feature set as our regular desktop browser. Still, we do not recommend using this build for regular Web surfing as it lacks some of the security-related features found in our regular desktop versions.

You can catch some more discussion about it over on the Desktop team blog — or you could see what pops up over on reddit.

ACID3: Strike ninety-eight. Make that 100

2008-03-26 21:20 – Six comments

Opera with a 100/100 result on Acid3

5 things you'll love about Opera

2008-01-02 22:24 – Three comments

Computerworld recently posted a link about five improvements in Firefox 3. I recognize them all from another browser.

What was the name of the first opera?

2007-10-29 23:33 – Three comments

Two answers to the question "What was the name of the first opera?", depending on in which context you ask.

A User Javascript for improving Reddit

2007-10-16 15:37 – Three comments

A user Javascript to make some improvements to reddit

A CSS backgammon board

2007-09-11 19:10 – One comment

A backgammon board rendered only using only an ordered list and CSS.

Opera 9.5 alpha, Kestrel, released

2007-09-04 14:44 – Leave a comment

The first alpha of Opera 9.5, codenamed Kestrel, is released. The changelog is so long that I can't possibly get through it this decade, but here's a few highlights of improvements, both to the user experience and standards support.

Tagged: Top 5 things I want in Opera

2007-07-28 22:06 – Six comments

A list of some of the features and changes I'd like to see in Opera.

Three and a half years ago, I was as wrong as it's humanly possible to be

2007-06-05 23:15 – Six comments

Roughly three and a half years ago, I wrote a blog entry titled "Why Linux has failed, and why Linux will fail again". Roughly two years ago, I switched -- to the operating system I claimed had failed, and would fail again. Linux. Ubuntu to be precise. How has my views changed?

Opera news: 9.20 and Wii released

2007-04-12 10:45 – One comment

Two bits of news today: Opera 9.20 for desktop has been released, and the much-anticipated final version of Opera for Wii is out. Go get both!

Opera 9.20 beta 1

2007-03-28 15:49 – One comment

Opera 9.20 beta 1 is out the door. Go get it (or come here for a quick tip about one of the new features, speed dial)

Komodo Edit add-ons

2007-03-20 16:26 – Three comments

Since switching to Komodo, I've started to build a set of snippets and macros to make editing of markup easier, and I'm now making these available, together with a few dummy objects to give JavaScript autocompletion for Opera-specific properties and methods.

Chat with Hĺkon Wium Lie

2007-02-06 09:59 – Leave a comment

Join an IRC chat session with Hĺkon Wium Lie

dojo.query: A CSS Query Engine For Dojo

2007-02-05 08:19 – Leave a comment

Opera on a Chip

2007-01-17 08:03 – Leave a comment

Opera for Wii beta out on Dec. 22

2006-12-19 15:14 – Leave a comment

A trial version of Opera for the Wii will be out on December 22nd.

The species license

2006-12-08 10:39 – Leave a comment

Ok, this one's a bit over a year old, but did you know that the Daleks have an Opera species license

Mobile Opera Bits

2006-11-28 15:34 – Leave a comment

Opera Mini 3.0 is out. Get it while it's hot. Also: A demo video of 'The Ajax Phone', running Opera.

Being compatible with the dark matter of the web

2006-11-17 10:29 – Leave a comment

Chat with me (and Anne) about the Widgets 1.0 Working Draft

2006-11-15 20:24 – Leave a comment

Anne van Kesteren and I will be participating in an Opera-hosted IRC chat session about the Widgets 1.0 specification.

Top 150 Popular Firefox Extensions and Opera

2006-11-15 14:45 – Leave a comment

Rijk van Geijtenbeek has made a great survey of 150 Firefox extensions and whether they have Opera equivalents or not (which they mostly do, I'm happy to report)

Opera Graph Library

2006-11-06 15:17 – Leave a comment

Opera Developer Community site launches

2006-11-01 13:29 – One comment

Opera launches a beta of the new Opera Developer Community site, named Dev.Opera. Here's a quick walkthrough

HOWTO: Painless markup validation with Opera and Ubuntu

2006-10-03 15:18 – 11 comments

How to install the markup validator locally in Ubuntu Linux and configuring Opera to use the locally installed validator in place of the w3c hosted one.

Event Streaming in Web Browsers

2006-09-01 17:29 – Eight comments

One cool feature we added to Opera 9 is Server-Sent Events from the WHATWG Web Applications 1.0 specification. Using SSE you can push DOM events continously from your web server to the visitor's browser. This creates a lot of exciting opportunities for web application authors.

SimAquarium - Tranquility in a widget

2006-08-23 20:45 – Three comments

SimAquarium: Virtual fishbowl for your office.

Widget autodiscovery

2006-07-17 20:15 – Six comments

Did you know that you can expose your Opera Widgets to your website visitors the same way you expose feeds, using autodiscovery?

Dapper Skin for Opera 9

2006-06-25 01:33 – Leave a comment

Opera 9

2006-06-20 10:26 – Seven comments

Opera 9 is out. Go get it: Widgets, BitTorrent, improved standards support

Opera 9 beta

2006-04-20 14:40 – Three comments

Today, Opera Software released the first Opera 9 beta. After two technical previews and numerous weekly releases, we are allowing

Create a widget, win a PC

2006-04-11 14:35 – Leave a comment

In conjunction with The Gathering, Opera is running a widget competition, with a rather extreme gaming PC (worth NOK 36000) as a price. Competition ends April 15, so hurry.

There's gotta be more to canvas ...

2006-03-29 18:15 – Leave a comment

... and indeed, it is. The Opera Web Applications Team Blog is now open for business, with documentation for the 'opera-2dgame' canvas extension.

Debitel chooses Opera to drive Mobile Web in Europe

2006-03-14 13:40 – Leave a comment

Opera passes Acid2

2006-03-12 20:06 – Five comments

Opera 9 now passes the Acid2 test, as the second browser to do so, behind Safari.

Opera 9, weekly builds

2006-02-14 18:28 – Leave a comment

Opera Mini and Acid 2

2006-02-10 21:19 – Leave a comment

CEO Interview: Jon S. von Tetzchner of Opera Software

2006-02-08 21:49 – One comment

Opera 9.0 Technology Preview 2

2006-02-07 09:00 – 22 comments

Opera 9, Technology Preview 2 has just been released. With changes. Read on and get the meat of the story: Widgets, thumbnails, BitTorrent and more.

Opera Mini goes Worldwide

2006-01-24 12:07 – Seven comments

Opera Mini is now available worldwide. Download it. Use it. Love it.

A Day at the Office (Part 2: The Office)

2006-01-18 13:58 – Leave a comment

Opera Mobile Web Browser Now Available in Beta for Windows Mobile Pocket PC

2006-01-18 10:37 – Leave a comment

Conspiracy theorists, unite

2006-01-16 14:29 – Six comments

A bit about the Opera splash page discovered by Asa.

Where are the Opera headquarters?

2006-01-11 20:03 – Leave a comment

Slashdot: Ask Opera CEO Jon von Tetzchner

2005-12-29 18:40 – Leave a comment

Image manipulation in <canvas>

2005-12-29 16:50 – Nine comments

What I did over christmas: Play with the <canvas> element in Opera 9. A few demos of image manipulation in canvas.

/moose/::

2005-12-16 10:37 – Two comments

Cross-document messaging in Opera

2005-12-01 14:49 – Eight comments

One of the more unknown features of Opera is that it has an implementation of the DocumentMessaging interface from the Web Applications 1.0 specification. This interface allows authors to post messages between documents residing on different domains, without being suspectible to regular Cross Site Scripting vulnerabilities. This is a quick explanation and example of how cross-document messaging works.

Opera SPARQL Query Engine

2005-11-30 14:36 – One comment

Logging errors to file in Opera 9

2005-10-23 04:04 – Leave a comment

Merlin: The Opera magician

2005-10-20 16:23 – 11 comments

Opera 9.0, codenamed Merlin has been released as a forum/newsgroup preview. It has a lot of new features, even more fixes, and something for the Standards Aware Cutting Edge designers.

Opera 8.5 - Free and Ad Free

2005-09-20 10:13 – Three comments

Today, Opera Software ASA released the Opera 8.5 browser. The big news, that we have been hiding inside the company is that Opera for desktop is now a free download. The banner ad is gone, so is the licensing fee. Get your copy now, before the company servers catch fire from the load!

Sébastien Guillon - 10 reasons to choose Opera

2005-09-16 13:57 – Leave a comment

"Opera equivalents to Firefox extensions" -- now in French

2005-09-07 19:30 – Two comments

Sébastien Guillon has done a fantastic job of translating "Opera equivalents to Firefox extensions" and "Opera equivalents to Firefox extensions II". If you want to translate these articles to other languages, feel free to do so.

Opera equivalents to Firefox extensions II

2005-09-02 13:50 – 35 comments

In January, I wrote about some Opera equivalents to Firefox extensions. This is an updated version, covering many more common Firefox extensions and their equivalent features in Opera..

Free Opera Licenses

2005-08-30 19:22 – One comment

First, there was the Opera 10 year anniversary for employees. Now, there is the Opera 10-year online anniversary party with free license giveaways for a limited period of time. Go get yours!

Opera and the browser wars

2005-08-23 02:07 – Leave a comment

Top 10 Rendering Engine Bugs

2005-08-22 11:12 – Two comments

Microsoft are trying to fix rendering engine bugs for IE7. We are also hard at work doing the next rendering engine in Opera, and now Tim Altman wants you to post the most important bugs so please leave a comment at his blog with the most important rendering engine bugs. Not pet bugs, but the ones that are causing the most problems on a day-to-day basis.

The Opera 10 year anniversary

2005-08-21 00:08 – Three comments

On Friday, Opera Software ASA celebrated 10 years as a company. Over the course of 10 years, Opera has changed from being an obscure research project into being an innovative browser implemented on many operating systems and platforms, from desktop to cellphones. This had to be celebrated in style.

Goodbye Firefox, hello Opera!

2005-08-10 22:26 – Leave a comment

Opera Mini screenshots

2005-08-10 21:34 – Leave a comment

Opera Mini

2005-08-10 14:10 – 11 comments

Opera Software released Opera Mini, a version of Opera running on low-end phones with GPRS and J2ME capability.

Opera now identifies as itself by default

2005-07-29 18:14 – Leave a comment

Opera 8.10 preview 2 is available for download for Linux/Unix, Mac and Windows. Opera now identifies as Opera by default.

Opera 8 released for Mac OS X

2005-06-16 19:13 – Leave a comment

Opera 8.01 released for Windows and Linux

2005-06-16 19:08 – Leave a comment

How to detect zoom level in Opera

2005-05-29 23:00 – Four comments

How to measure the current zoom level in Opera using Javascript.

UserJS.org

2005-05-22 19:21 – 19 comments

UserJS.org is now open for business

Opera Browser Tools

2005-05-08 21:02 – Leave a comment

Opera 8 Surpasses 2 Million Downloads

2005-05-03 19:15 – Leave a comment

Preload links in Opera

2005-04-29 16:42 – Leave a comment

Ask Jon

2005-04-28 13:16 – Leave a comment

Visual Tutorials for Opera

2005-04-27 16:08 – Leave a comment

User JavaScript: Enhance blockquotes

2005-04-27 12:51 – Leave a comment

A User JavaScript for Opera 8 that adds clickable links to blockquotes when blockquotes use the cite attribute, without adding a clickable link.

User JavaScript: Clickable links in plaintext files

2005-04-27 11:43 – Three comments

A User JavaScript for Opera 8 that will make http/https/ftp URLs in plaintext documents clickable

Enhancing AWStats result pages with Opera User JavaScript

2005-04-26 11:28 – Leave a comment

A Opera User Javascript to enhance the keyphrase and keyword output pages with a live search function.

Jon has to swim

2005-04-25 09:59 – Leave a comment

Opera Search.ini Editor for Opera 8

2005-04-25 00:04 – Leave a comment

Make a CEO swim the Atlantic

2005-04-22 03:22 – Six comments

CEO of Opera Software, Jon S. von Tetzchner will swim the Atlantic if Opera reaches one million downloads in four days.

userjs.org

2005-04-20 19:43 – Six comments

A quick update on the creation of and motivation behind the userjs.org site devoted to User JavaScript in Opera, and why I think there is room for more than one site devoted to user scripting.

Opera 8

2005-04-19 09:20 – Three comments

Opera 8 has been released, with a lot of new and improved features, including User Javascript, SVG Tiny, Voice, Fit to Width, improved newsfeed support, and a greatly improved interface. Help spread Opera, and you can get a free license for the ad-free version.

Opera Integrated with Adobe Creative Suite 2

2005-04-04 14:55 – Leave a comment

User Javascript changing moronic attitude ;-)

2005-04-01 13:47 – Leave a comment

User JS: text/x-plainscript

2005-03-23 14:00 – Four comments

Supporting a custom "scripting" language, text/x-plainscript, with user javascript in Opera.

Advanced User JavaScript: event handling

2005-03-21 22:12 – Leave a comment

User scripts spreading to Opera

2005-03-20 13:36 – One comment

User Javascript in Opera 8 beta 3

2005-03-16 18:42 – Nine comments

Opera 8 beta 3 adds User Javascript functionality. Use it to get rid of site annoyances, and extend web site functionality.

javascript: URIs, CSS, GMail and Opera

2005-03-13 09:50 – Four comments

How to get out of GMail jail in Opera with Javascript in CSS files.

Work for Opera?

2005-03-09 22:28 – Leave a comment

Use full GMail with Opera

2005-03-05 18:32 – Leave a comment

Buy Opera. Aid Relief Efforts

2005-01-06 07:51 – Leave a comment