Your own protocols, Page Visibility API and the GPU-accelerated 2D canvas
Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 13
A total of 1,515 commits, 627 for WebKit and 888 for Chromium (made by 220 authors!), brought a large number of interesting changes again this week. Highlights include new features such as the Page Visibility API and the possibility of registering your own protocol.
One well anticipated feature of HTML5 is the possibility to a custom protocol for your site. Starting at revision 86944, registerProtocolHandler is now enabled for all versions of Chromium. It features a neat settings page and allows the browser to become the default handler for arbitrary protocols on Mac OS X and Windows. However, no peter:// for me: the recently added whitelist requires custom protocols to be prefixed with web+.
As for specification related updates, the frequency at which selectstart will be fired has been brought back to just once. The RGBA serialization algorithm has been updated to match the HTML5 specification, just one blur-event will be dispatched when tabbing out with an invalid value and CSS Selector matching has been fixed in regards to attribute selectors. The sniffing mechanism for images has been updated per the latest draft.
Adam Barth added support for the new crossorigin property on image elements. The attribute, which will eventually also work with video and audio elements, will allow canvasses to properly use remote images if the CORS header allows it, including usage of the getImageData and toDataURL methods. Meanwhile, Jay Civelli added support for reading MHTML files to WebKit. The plan is to allow exporting pages to MHTML archives too.
Other changes which occurred in the last week:
- The Task Manager in Chromium now also shows the number of displayed frames per second.
- An extension API has been added to Web Inspector for accessing timeline data.
- Work has begun on enhancing the possibilities to inspect Web Workers through Inspector.
- The LevelDB back-end for IndexedDB now supports transactions.
- Borders, outlines and rules will always be anti-aliased again when they’re being scaled.
- Painting on Windows will be capped to 30 frames per second in new Safari releases.
- GPU Accelerated 2D Canvas has been enabled by default in Chromium!
- Memory handling of WebCore has been significantly improved for low-memory environments.
- Partial support for displaying replaced elements with intrinsic sizes per CSS 2.1 has been added.
- A white-list has been implemented for the registerProtocolHandler method.
- Two new entries to Chromium’s about:flags have been added: enabling LevelDB and disabling vsync.
- An option to search through synchronized information has been added to chrome://sync-internals.
- A new API has been added for maintaining synchronization types for Chrome developers.
- Work has started on allowing users to select what synchronized data they want to be encrypted.
- Selected checkboxes will now show up as checkmarks when printing a page via Chromium.
- The Proxy Settings Extension API has been promoted to be a stable API.
- This patch adds Chromium’s side of the video capturing mechanism in WebKit.
- Chromium will now differentiate between rel=prerender and rel=prefetch in meta elements.
- Title prefix eliding has been removed from Chromium following the received feedback.
- Chromium OS’ Image Burner API landed in Chromium, including a new user interface.
- The Page Visibility API has been enabled by default for Chromium builds.
And that’d be all again! If you’re a fan of web conferences, be sure to take a look at this year’s Fronteers! We’ve just announced five more speakers: Divya Manian, Jake Archibald, John Resig, Stephen Hay and, last but not least, Robert Nyman. Only 30 early-bird tickets are still available, so don’t wait too long 😉