Last week, 470 authors made a total of 1,883 changes to the Blink, Chromium, v8 and Skia repositories. 1,803 changes were made in the week before that, some of which I’ll mention in this update as well.
Support for parsing the “pan-x” and “pan-y” arguments for the touch-action CSS property have been added, following the Pointer Events specification. Setting text-overflow to ellipsis will now work when vertical writing modes are being used, and the :first-letter CSS pseudo-class will now been updated when new text will be added to the paragraph’s start. New focusing steps for the <dialog> element were also implemented.
Last week yielded 1,433 commits to the Blink, Chromium, v8 and Skia repositories. This article discusses them up to Chromium r238071.
CSS Animations and Transitions will now be driven by the new animations engine which will also power Web Animations. While Web Animations themselves are not enabled by default yet, this has already brought improved behavior and various bug fixes to Blink.
Keishi has brought <datalist> support to Android for mostinputtypes, which will be available starting Chrome 33. Meanwhile Fredrik has been fixing abroadrange of issues in Blink’s WebVTT implementation, and Brendan added the “change” and “removetrack” events to TextTrackList and added support for TextTrack.id and TTL.getTrackById().
Web Fonts downloads will now be initiated immediately after style recalculation, rather than queuing it during layout, often reducing download latency by more than 100ms. The -webkit-font-kerning property has been fixed by Eli to actually work. The isolation: isolate CSS property, part of CSS Blending and Compositing, has been implemented for Blink in software mode.
Last week, 1,869 commits made by 453 authors landed in the Blink, Chromium, Skia and v8 repositories. This update discusses them up to r232687. There wasn’t an update last week as I was in Dubai!
John disabled the ability to double-tap-zoom on websites which specify a width=device-width viewport, meaning the click delay of 300ms will no longer apply! Support for display: compact has been removed, support for SVG’s getStrokeBBox() method was implemented, and the CSS properties text-align-last and text-justify: none will nowimpact rendering.
Blink’s Shadow DOM implementation now supports the recently overhauled distribution algorithm for Shadow DOM. The hat and cat CSS combinators for Shadow DOM are now supported as well. Creating an <image> element using createElement() has been changed again, and will now return an HTMLUnknownElement. The innerHTML and outerHTML properties moved from the HTMLElement to the Element interface, making them available to SVG.
Support for ECMAScript 6’s Math.sign() method has been implemented as an experimental feature in v8. The htmlFor property of <output> elements is now settable, creating an <image> element using createElement() will now return a generic HTMLElement and columns in the window.onerror event will now be 1-based. Dominic added support for the onvoiceschanged event as part of the the experimental Speech Synthesis API.
A total of 1,800 commits were made by 437 authors in the Blink, Chromium, v8 and Skia repositories last week.
Animations in Blink are getting a large overhaul as the implementation of Web Animations is progressing, bringing along new features and a tonofbug-fixes. WebKit, by the way, announced their intentions to start working on implementing Web Animations as well.
Blink can now synthesize small-caps for @font-face declarations with multiple sources, and transforming text to either upper or lowercase with text-transform now supports Turkic languages. Support for the column-fill property in the new CSS Regions-based multiple column implementation has landed as well!
Last week yielded 1,582 commits in the Blink, Chromium, Skia and v8 repositories, made by 427 unique authors. Incidentally, Chrome turned five years old last Thursday Monday — thanks Peter!
Various changes were made in Chrome’s media stack last week. When using the Media Source Extensions API, support for Opus and MP3 as audio codecs has been implemented. Also new is support for VP8 alpha-playback, which means that videos can now have transparency.
Arguments must now be passed to the CSSHostRule.addRule() and deleteRule() methods. The mousemove event has been made cancellable. Finally, the unprefixed onanimation* attributes have been implemented on HTML Elements, but won’t be exposed to the web until unprefixing has been completed.
Other changes which occurred last week:
DevTools’ go-to-location feature using <ctrl>+<p> now supports line numbers by using a colon: “:80”.
The preferred and intrinsic width calculations for multiple column layout have been aligned with the specification. Support for ellipses as primary citizens in the world of 2d canvas path segments has been implemented. The change which makes devicePixelRatio include browser zoom has now been enabled by default. Support for the paint-order style for SVG elements has been implemented, as has the object-fit property which aids in maintaining the aspect ratio of replaced contents within its content box.
XMLHttpRequests in Blink do now support “json” as a responseType. Support for .wav files has been brought to the Web Audio API on Android. Accessing a cross-origin frame’s location setter may now throw an exception. A new about:flags entry also has been added for an experiment in which touchmove events aren’t being distributed to the renderer anymore. Finally, the DataTransferItemList.remove() method has been implemented.
When building Chromium for Android, the “chromium_testshell” target is the most complete browser you can build. Tommy has now updated it to include a menu option for signing in and out of Chromium.
Other changes which occurred last week:
Chromium’s version number is now equal to the number of ice cream flavors sold by Baskin-Robbins.
The Downloads Extension API has been promoted to the Stable channel, and will be available starting Chrome 30. Also new is a discussion group for talking about the Google Cloud Messaging-powered pushMessaging extension API.