Web archive
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
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
Below is a screenshot of the Acid3, taken straight from one of our developer's machines. It's a screenshot of the builds we use to test core functionality in Opera (cue the weird, minimalistic user interface).
Yes, it says 100/100. I'm not going to say too much about it right now, other than send some Kudos in the general direction of the developers responsible (whom for some reason always seem to keep a low profile), and point to what Anne said earlier when we reached 98.
Note that there is a small rendering glitch left, but we will fix that too in due time. If you want to follow what happens in the future, visit the desktop team blog
These words are not yours to subvert
2007-10-17 14:00
It’s not often I post something solely to say “+1”, but this short rant from Mark Pilgrim about Apple’s subversion of the term “web app” deserves every incoming link it can get. The money quote:
Last week, in a stroke of breathtaking arrogance, Apple redefined “web apps” to mean sites designed for a single hardware platform
So, just let me be clear: Web Apps are for a multitude of platforms, serving many different purposes. These words are not yours to subvert.
Opera 9.5 alpha, Kestrel, released
2007-09-04 14:44
Ok, I never got around to blog the release of Opera Mini 4 beta 2 — apologies for that. Let me instead introduce you to Opera 9.5 Alpha - a.k.a. Kestrel.
A quick overview is available on a separate product page
So, what’s new? In a nutshell:
- History search
- Bookmark synchronization
- Dramatic performance improvements
- Web site compatibility improvements
- Improved standards support
- Huge improvements to M2
The Changelog
I wish I could get through all of the changelog here, but I’m afraid it’s way too long, and I could blog until 2011 about it, in which case Kestrel would already be severely out of date. Instead, I’ll just give you the links.
So, let’s go through some of the changes
History search
I’ve lost count of the times in the past, when I’ve visited some page, somewhere, and have been totally unable to remember where it was, on what domain, or even what the document title was. In other words, finding what I have already visited has been a very hard task, bordering on impossible. Enter history search.

With history search, Opera creates a full-text index of each and every page you visit, and when you go to the address bar, you can simply start entering words you know have been on pages you’ve visited before, and items matching your search show up. It’s a kind of magic, really. At least compared to what browsers have done in the past.
Not only can you do this, but there is also an internal web page, named opera:historysearch that gives you a more traditional web search interface that allows you to bookmark your searches. Speaking of which …
Bookmark synchronization
Bookmarks have changed in Kestrel. In the past, the only way to get your bookmarks from machine to machine was to export the bookmarks, copy the opera6.adr file, or use external software to transport them. In Kestrel, you simply log in with your My Opera account, and sync your bookmarks, speed dial items and personal bar with the server (The synchronization is using https, fwiw, so you don’t need to fear that your data are being compromised).
So, you may say “I never use two computers, why should I sync?”. Real men don’t do external backup. They just cry a lot - when their offices catch on fire!. That’s why.
M2
I have been absolutely dependent on M2 as my mail client for years, but it has had a number of annoying issues, related both to IMAP, and to indexing, where I’ve seen mail go into the wrong access point for no reason. I’m happy to report that I haven’t seen any such issues with mail with Kestrel for a long time.
Keyboard shortcuts
Now, this change is probably somewhat controversial for old-time Opera users, since they probably have single-key shortcuts as part of their muscle memory. For newcomers, though, Opera is going to feel a lot less alien, as all single-key shortcuts have been removed in the default setup. This prevents these newcomers from performing accidental navigation, or from changing their browser’s settings without knowing how.
Those oldtimers who want the old setup back, can do so, though, by checking the box in opera:config#UserPrefs|EnabledExtendedKeyboardShortcuts (Alternatively, by going to Preferences->Advanced->Shortcuts and and check “Enable single key shortcuts”.)
Now, on to more developer-related stuff
Selectors
Kestrel has top-notch support for CSS3 selectors, as shown in this demo.
Backgrounds
Kestrel has also added support for SVG in background-images, plus support for the background-size property. David Storey has created an extremely nice demo, also including a showoff of Opera’s extended selector support (mirrored with permission, as the My Opera file store doesn’t allow external referers).
Overflows
Opera now support both the overflow-x and overflow-y from the CSS3 box model specification. This both improves web site compatibility, since there are a few sites out there that use this, and it allows you, as an author improved control over those scrollbars.
getElementsByClassName
Library vendors, take note. Opera supports getElementsByClassName natively. This should allow for even faster selectors.
Dynamic media queries
In Kestrel, CSS3 Media queries support has improved, making them dynamic. For you, as a developer, you can now count on Opera actually applying the correct style when the user resizes his window, instead of re-rendering on a resize event. You can view this yourself here - note how the content changes in the max-width & min-width tests when you resize the window.
Getters and setters
Opera now supports Getters and setters from JavaScript 1.5.
Offline support
While Opera doesn’t yet implement a peristent storage, the Navigator.onLine is now supported, with window.online and window.offline events for when the value changes.
Spatial navigation
Controlling keyboard navigation can be a major pain in web applications, in particular if your application is on a device with “keyboard” as the only input device, which is the reality if you want to make web applications tailored to mobile devices, or you want to accomodate those unable to use a mouse. Opera support for these scenarios have improved in two ways.
First, Kestrel supports a custom CSS pseudo class -o-prefocus that applies to form elements that have been reached via spatial navigation, allowing for better styling. Further, Opera also now support four methods on the document object, document.moveFocusLeft(),document.moveFocusUp(),document.moveFocusRight() and document.moveFocusDown(), allowing you to initiate spatnav on regular keyboard events. I have put up a very simple demo that demonstrates a use of this property. When you navigate of the right end of a table, the code in the example moves the spatial navigation focus to the far left of the table row below. The code is not commented, but should be fairly simple to understand.
Text-shadow
Kestrel also adds (full) support for the CSS3 text-shadow property. Unlike WebKit’s support, Opera supports multiple text-shadows, comma-separated (More precisely: You can have 12 of them).
There’s more?
Yes. There’s lots more, and like I said, I could continue posting stuff from the aforementioned changelog until 2011, now go download a build for unix, Mac or Windows
Have fun.
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)
Chat with Håkon Wium Lie
2007-02-06 09:59 – Leave a comment
Join an IRC chat session with Håkon Wium Lie
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.
The WHATWG Blog
2006-11-14 10:03 – Leave a comment
There should be one Internet
2006-11-10 15:58 – One comment
Widgets 1.0 Working Draft
2006-11-09 18:18 – Four comments
Today, the W3C published the first working draft of the "Widgets 1.0 specification", and also published a working draft of "Client-Side Web Applications Requirements"
Why I'm giving up reddit
2006-11-04 11:28 – 24 comments
The long title of this post is rather: “Why reddit, which was the last and best hope for social news...
How to ensure I never visit your site twice
2006-11-02 15:03 – Two comments
A guide for losing website visitors, income and business.
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
Aptana
2006-07-25 15:37 – 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
Web 3.1415: Ajax, Ook! and Brainfuck
2006-04-02 17:08 – One comment
A library to assist in authoring Ook! and Brainfuck files for use on the Web 3.1415. Because authoring Web 2.0 apps has become all to easy.
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.
Hixie's Natural Log: People who don't realise that they're wrong
2006-01-22 12:50 – Leave a comment
AJAX for Mobile Devices Will Be the Hallmark of "Mobile Web 2.0"
2006-01-03 10:57 – Leave a comment
Doctype switching for SGML comments
2005-11-07 09:44 – Leave a comment
