Spontaneously combusting browsers, the FileSystem API and surround sound
Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 8
With another 1080 commits decorating the repositories there’s enough to tell you about last week again.
There has been a lot of discussion surrounding the about:labs page last week. Firstly, it has been renamed to “about:flags“, and for good reason: almost all criteria for adding new entries to the page have been lifted, meaning that pretty much everything which has a command line flag may have a place on that page. While this obviously is a good thing for convenience, it also means something could be enabled which constantly crashes Chrome. For that reason, the “--no-experiments” flag has been added.
Within WebKit support for the “onreadystatechange” event on the Document has been added, anchor elements now have the getParameter method from Adam Barth’s URL API and canvasses are now aware of the currentColor color. Also, all IndexedDB related properties on the window object have been prefixed with “webkit”. Unfortunately, support for <script defer> has been reverted.
The Chromium Team chose to enable their implementation of the FileSystem API by default. The API, which still is rather unknown among developers, has been built on top of two other specifications: the File API and the File Writer API. When you combine them and throw in some directories, Chrome’s latest feature comes out.
One of the larger use-cases I can see with the API is its ability to act like an extensive, hierarchic and programmable Application Cache. Suppose you’re making an online application which works like Spotify, the interface, playlists and all could be stored offline using a manifest, but the music itself wouldn’t be available offline. Using the FileSystem API, you could create a directory for each playlist and store the audio-files in them. There is a downside too, as the advocated API is asynchronous, it has a steep learning curve.
Other changes this week include:
- Chromium now supports 5.1 surround sounds, no more downmixing to stereo.
- The screen.availLeft property can now contain negative values as well.
- Some basic documentation about creating CRX (extension) files has been released.
- Search providers may now have separate URLs for instant results.
- Zombies have been clarified.
- You can now disable the spellchecker in design-mode by setting the spellcheck attribute.
- A ruby’s base will no longer be affected by generated :before/:after content.
- Scrollbars on iframes with scrolling=”no” are now really gone.
- Some initial work has been done on having transforms affect a page’s scrolling.
- The “transparent” color is now valid in WebKit.
- Some fixes were done related to JavascriptCore’s Automatic Semicolon Insertion.
- execCommand(‘formatBlock’) now supports twelve new elements.
- The WebKit Cairo port now uses their new ContextShadow system for shadows.
So, that’s it for this week. Thanks for reading and if you’ve got any comments or suggestions, feel free to add a comment about them, e-mail me or poke me on Twitter!