Following Chromium for Mac, Tony made sure that the Windows and Linux versions now also support color profiles in images, by utilizing ICCJPEG and QCMS libraries.
Animations and transitions may now be applied to :first-element pseudo-elements. The accept attribute of input elements now accepts file extensions and accuracy of state tracking in radio button groups has been improved. David Barr is making good progress on implementing CSS’ image-resolution property, also adding support for the dppx, dpi and dpcm units.
Luke landed the initial implementation of CSS Variables in WebKit. While it’s disabled by default and not enabled on any platform yet, it’s very exciting that work is on its way.
Other changes which occurred last week:
Garden-o-matic has been updated to feature support for the Apple Mac port.
Last week, Chromium counted 1,018 changes while WebKit received 587.
Web Inspector’s pretty print feature now respects the indenting preferences. Only the root domain will be expanded in the Sources and Scripts Panels and links will be opened by default in the Sources panel, falling back to either the Resources or Network panels.
Nico landed yet another piece in improving Chrome’s experience on Mac High DPI modes, this time initial support for High DPI in web content display. The Chrome Blog has a nice image showing the impact his work has.
Besides registering protocol handlers, they can now be checked for existence and unregistered as well. The imageSmoothingEnabled setting for 2D Canvas contexts will now apply to patterns as well, client rectangles for frames in scaled pages will return the right values and the Pointer Lock implementation gained support for the change and error events. Finally, a build flag for the Undo Manager has landed.
The Blob constructor now accepts ArrayBufferView instead of a normal ArrayBuffer for its constructor’s parameter. Elements with an empty string as it’s “itemprop” value won’t be listed in Microdata’s properties list anymore and several SVG features now report to be supported through DOMImplementation.
After some more intermediary steps, Yoshifumi Inoue introduced the new Decimal type for an input’s value properties, fixing rounding errors in number and range input fields.
Other changes which occurred last week:
Duplicated Content Security Policy directives will now display errors in the console.
The “target-DensityDPI” viewport meta value will no longer be recognized by WebKit.
Wins of 3% on Kraken and 3% on v8 for the JavaScriptCore engine.
Render Nodes lost 8 bytes of weight, saving up to 2.6 megabytes when viewing the HTML5 specification.
728 WebKit commits and 924 Chromium commits add up to a total of 1,652 changes made during last week.
Parsing for the box-decoration-break CSS property landed, with the rendering part still pending. Form controls in disabled fieldsets won’t be checked for validity anymore, and fieldsets themselves now feature the elements accessor. Input elements with a :first-letter style are editable again, the Æ named entity will now be rendered as expected and the :enabled pseudo-class now applies to option elements too.
Implementation of CSS Images Level 3’s image-resolution property has started, just like bits of the CSS4 Media Queries specification, with the implementation of the “hover” and “pointer” queries for Chromium. Various names used in the Flexible Box Module implementation havebeenrenamedtothe names now listed by the updated specification. Dave Hyatt is continuingworkonre-implementing Multiple Columns to be based on Regions.
The “files” attribute for input elements is now writable and IndexedDB requests and transactions now support the error property. Usage of window.blur() is now disallowed altogether, while window.focus() may only be invoked from the context that created the window.
Last week brought 981 commits for Chromium, and 931 for WebKit, totaling up at 1,912 changes. Highlights include a new Sources Panel for Web Inspector, seamless iframes for Chromium and sub-pixel layout for Chromium.
Last week brought 1,819 commits, 999 for Chromium and 820 for WebKit. Highlights include changes to the padding of <input> elements and getUserMedia() being available by default in Chromium.
Using the latest CSS Flexible Box module now requires you to define an element’s display property as “-webkit-flex” as opposed to the previous “-webkit-flexbox”. Input elements are now two pixels smaller in width, as one pixel of unnecessary padding has been removed from either side.
A compile-time flag has been introduced for toggling support for CSS Variables in WebKit ports. Furthermore, an initial test-suite to test the status of the implementation has landed as well.
Other changes which occurred last week:
Cloning DOM nodes has become ~10% faster, as WebKit no longer reparses the style attribute.
The SPDY/3 implementation is now available to 95% of Chrome users.
For those of you interested in security, information about Pinkie Pie’s Pwnium exploit has been published — a very good read! Finally, a hat tip to 00 :-].
1,693 changes landed last week, 650 in WebKit’s repositories and 1,043 in Chromium’s. Highlights include Chromium 21, support for the tab-size property and strings instead of constants for IndexedDB.
IndexedDB now uses strings instead of numeric constants. Violation reports generated by Content Security Policy now also include the referer, original policy and the URL which got blocked. The File System API is now able to deal with cross-file system operations, widths and heights are now exposed for <input type=image> images, and the offsetLeft property was broken when used together with CSS Columns.
WebKit has also gained support for the tab-size CSS property. This property, which is also supported by Firefox and Opera, allows you to define the number of spaces a tab should be equal to.
Today’s update covers many Chromium and WebKit changes made over the past two weeks, meaning 2,055 commits for Chromium and 1,418 for WebKit, totaling up at 3,473 changes.
Retrieving a canvas’ image data will now return a Uint8ClampedArray instead of a CanvasPixelArray object. In preparation of supporting getUserMedia on Chromium, the Peer Connection API implementation has been separated with a compile time flag. Tables now support the createTBody() method and the IndexedDB implementation can now open cursors based on a IDBKey, and advance cursors as well.
Antti made it possible to share stylesheet data structures between documents, decreasing memory usage by several megabytes (take note, kling) depending on the port’s implementation. Furthermore, parsed stylesheets may now be cached, increasing performance of subsequent page loads.
Per commit 116009, Levi and Emil were able to close the meta bug for supporting sub-pixel layout in WebKit. While this has not yet been enabled for any port, this is a significant milestone for the project. This article provides some insight in the importance.
Other changes which occurred last week:
Code supporting positioned floats has been removed from WebKit, pending proper implementation.
Last week, a total of 1,575 landed in the repositories: 923 for Chromium and 652 to WebKit. Highlights include the WebKit Contributors meeting, Web Inspector updates and support for <datalist> in Chromium.
Last Thursday and Friday, Apple kindly hosted the 2012 WebKit Contributors Meeting in Cupertino. With contributors from many different vendors around, a large number of subjects were covered in presentations and discussions. Transcripts of most of these are available on WebKit’s Trac, including a group photo of all attendees.
An experimental Style Panel has been introduced to Web Inspector which mimics the interface of the Script Panel, which also features an open stylesheet-dialog. Cross-frame security error spam when typing in the console is gone, calling document.open() will now reset the Elements Panel and the Inspector is now shimming the startsWith() and endsWith() methods on the String prototype, anticipating implementation of Microsoft’s proposal.
Parsing rules of the :nth-*() pseudo-classes has been aligned with the specification. Clipping issues with the CSS drop-shadow filter have been resolved and the “-webkit-filter” CSS property will now show up when enumerating over an element’s computed style.
Support for the HTML5 <datalist> element has been enabled for Chromium. It provides similar functionality to suggestions by the browser based on what you previously entered in a text field, with the difference that these suggestions are provided by the website.
Other changes which occurred last week:
The WebKitGTK port has enabled the Web Timing implementation.
Performance of several String-returning DOM attribute and property getters has been improved for v8.
The localStorage.setItem() method cannot override methods on the Storage prototype anymore.
The footprint of an element’s attributes has been reduced to a minimum for common usage.
882 revisions landed in Chromium’s repository last week and 667 in WebKit’s. Highlights include removal of support for the -khtml- and -apple- CSS vendor prefixes in Chromium, and the new location.ancestorOrigins() method.
Support for -khtml- and -apple- properties has been removed for most WebKit ports, including Chromium, after previous attempts failed due to compatibility issues. Background sizes are now correct if the page is zoomed out, the default box-shadow color now defaults to the element’s “color” property, the viewport-relative CSS units now work for Replaced objects (such as images) and the -webkit-image-set CSS property was enabled for the Chromium port.
Last week brought 995 commits to the Chromium repository and 732 to WebKit’s. Highlights include work on the user interface for date-input fields and the “srcdoc” attribute for iframes.
The animatedPathSegList property for SVG path elements has been implemented, completing support for the animVal properties. Minor type updates were done aligning WebKit’s typed array implementation with the specification, the Web Audio API’s Oscillator and WaveTable interfaces have been implemented and plumbing for the new JavaScript Speech API continues.
Now that a user interface for color input types is available, next in line is an interface for the date and time input types. Kent Tamura hasbeenworkingon implementingthis, an early example of which can be seen here. Meanwhile, work has started on cleaning up and implementingsupport for <datalist>. The <iframe srcdoc> attribute is now also supported, allowing untrusted HTML code to leverage an iframe’s sandbox constraints.
Other changes which occurred last week:
Both the backend and frontend for device metrics emulation in Web Inspector have been implemented.
The BlackBerry port has added client implementations for the Battery Status and Vibration APIs.
WebKit’s Web Intents implementation has been prefixed with the a vendor prefix.
The “let” keyword has been unreserved in JavaScriptCore as reserving it caused compatibility problems.
Asynchronous spell-checking can now be enabled through about:flags.
As always, thanks for reading. Next week’s update may be a bit brief as I’ll be in the Mountain View area, also attending the WebKit Contributors Meeting!