Last week yielded 1,798 commits made by 419 authors in the Blink, Chromium, Skia and v8 repositories. This article discusses them, up to revision 214188.
Chrome for Android has gained support for MSE and ClearKey-based EME, which may or may not be available depending on the device’s configuration. Anti-aliasing has also been disabled for the Chrome 29 release.
The proprietary -webkit-svg-shadow CSS property has been removed. Height calculations for tables which use spanning rows have been improved and parsing of the “column: auto <length>” syntax for the multi-column CSS properties has been implemented.
A new experimental Web Platform feature (available in about:flags) are unprefixed Shadow DOM APIs. Exciting!
Other changes which occurred last week:
Support for PNaCl has been enabled by default for all desktop versions of Chrome 30.
The in-development Chrome-based Android WebView will have “Mobile” in its user agent for phones.
Jochen improved Chrome’s popup blocker to not load popups at all, rather than just hiding them.
The HTML Imports feature will be respecting the set Content-Security-Policies.
Various improvements and additions were made to the chrome.downloads extension API.
Chrome’s “You are offline” page will now display a fancy dinosaur!
There won’t be an update next week because I’ll be on holiday in New York :-). Thanks for reading!
Last week yielded 1,880 revisions created by 453 authors, spread over the Chromium, Blink, Skia and v8 repositories. This post discusses them, up to revision 212993.
After introducing the very first beginnings of an Android application for Remoting, Solomon also made it possible to view, pan and zoom around whilst viewing a desktop’s screen on an Android device. Even though basic input support is still under review, this seems to be gearing up towards becoming a very interesting project.
Erik introduced two new ECMAScript 6 features in v8 last week: the WeakSet object, which holds weak references to the objects within the set, and support for binary and octal literals such as 0b10101 and 0o567.
Last week, a total of 1,861 changes landed in the Chromium, Blink, Skia and v8 repositories, made by 435 different authors. This update talks about commits up until Chromium r211631.
Fractional CSS letter-spacing and word-spacing values are now allowed, also enabling much smoother transitions for these properties. Chromium Mobile will no longer fire requests for apple-touch-icon(-precomposed).png if there is no corresponding <link> element present. When Content Security Policy blocks a call to eval(), an error report will now be generated, and such reports will now be served with application/csp-report as the content type.
Blink now supports the “mouseenter” and “mouseleave” events for capturing whether a mouse is on an element. Raphael updated Blink’s implementation of the “capture” attribute, which has been changed to be a boolean attribute. Work on HTML imports is continuing as well, which is a feature part of Web Components. Android’s Media Source Extensions implementation is booking good progress as well, now passing all the layout tests.
The Promise implementation in Blink is seeing good progress with six newmethods having been implemented and the feature now being available behind the Experimental Web Platform Features flag. The set() method of a typed array won’t throw on invalid arguments anymore whereas DataView accessors with no arguments will start throwing exceptions. Three iterator methods were added to the Array prototype: Array.prototype.{values, keys, entries}.
Other changes which occurred last week:
Mike renamed “Experimental WebKit Features” to “Experimental Web Platform Features”.
The “devicemotion” event can now be enabled in about:flags on Chrome for Android.
An entry in about:flags is now available to debug pages in Chrome for Android without needing adb!
A new double-tab-drag-zone gesture has been introduced to Chrome on Android.
While there was a performance regression, work in enabling a Direct3D 11 backend is underway.
Chrome’s virtual keyboard implementation now supports Dvorak as a new layout.
A generic UndoManager was implemented which will power undo and redo for bookmark editing.
A wild Last Week post appears! That’s been a while. This post describes the 1,326 commits which landed in the Chromium, Blink and v8 repositories during the 4th of July US holiday week, until Chromium r210375.
Chrome DevTools windows won’t disappear anymore when an interstitial page is being displayed, for example warnings about self-signed certificates for developer environments. Six more mime-types will now be recognized as valid font mime-types, decreasing the number console warnings for invalid mime-types used for fonts. Development on CodeMirror as a code editor continues, adding syntax highlighting for six more languages.
Raphael is working on re-implementing the “capture” attribute as a boolean, matching the specification. Textual input and textarea elements now recognize the “inputmode” attribute, indicating what kind of characters the field is expecting (for example, alphabet or kana). The <dialog> element now supports the ::backdrop pseudo-element, support for border-image-repeat: round was added and filters will now be applied whilst honoring the effective zoom level. Finally, “compositionstart” events now include the text which is being replaced.
Steve renamedthe chromium-{android, mac} layout test platforms to {android, mac}.
Jan, Claudio and Pan Deng became Chromium committers. Congratulations!
Interesting topics on blink-dev include an Intent to Implement for unregisterProtocolHandler() and isProtocolHandlerRegistered(), an Intent to Ship for the “mouseenter” and “mouseleave” events, an announcement for Opera 15 and a lengthy discussion on supporting animated WebP images. Thanks for reading!
1,226 Chromium changes and 717 WebKit changes add up to a total of 1,943 changes last week.
Work hasstartedenabling Web Inspector to report various CSS parsing errors, such as mismatched braces and missing semicolons. A menu has been added allowing you to customize the panels displayed in the toolbar, capitalization of menu items has been made consistent and IndexedDB data may now be cleared.
WebKit’s Content Security Implementation willnow fire a “securitypolicyviolation” event whenever violations occur, and will include the effective-directive key in violation reports as well.
Intrinsic sizing (i.e. min-content) now work on flexible box elements, and parsing for the -webkit-each-line value for CSS 3’s text-indent property got implemented as well. The Grid Layout implementation now supports default grid item sizing, and can parse the grid-auto-{column, row} CSS properties.
Apple’s JavaScript engine ninja Filip Pizlo filed a series of bugs covering some future plans and experiments in regards to JavaScriptCore. Ideas including changing it to a quadruple-tier virtual machine, allowing it to do more optimizations for longer running scripts, running the optimizer on awesomenew threads and experimenting with LLVM as a backend.
Other changes which occurred last week:
Skia is now able to use an accelerated hardware path for feConvolveMatrix filters.
The new calendar picker now has support for touch input.
Quite some updates were done in light of Web Components: touch events are now supported in shadow trees and work is underway to allow any HTML element to be a superclass of a custom element. The Web Audio API now exposes the maximum number of available channels, the WEBGL_compressed_texture_atc extension is now available and the default background of dragged images is now being properly set.
A total of 1,783 changes were committed last week, 1,065 for Chromium and 718 for WebKit.
Web Inspector will now show raster tasks on the Timeline Panel. Furthermore, the various profiling tools, such as the JavaScript CPU Profiler, canvas profiler and the memory snapshots, have been moved in separate panels.
When enabling the CSP 1.1 implementation, the new directives will now work on the unprefixed header as well. The meta referrer directive will now be honored for window.open() calls,the X-Frame-Options header accepts the “ALLOWALL” value and no callback is required anymore for requesting a notification permission. Rules for up and down-mixing channels in the Web Audio API have been implemented, and collapsing rules for empty buttons have been corrected.
One feature that is nearing completion is the threaded HTML tokenizer. Now that moretestshave been fixed and some optimizations have been done, it’s been enabled for Chromium’s DumpRenderTree. Shortly thereafter Adam enabled the threaded parser by default for all of Chromium.
Other changes which occurred last week:
The amount of files to compile when changing WebKit’s network or clipboard code has been decreased.
WebKit will now share the user agent string when opening a new Web Socket connection.
Last week saw 745 WebKit commits and 935 Chromium commits, totaling up to 1,680 changes.
Chrome OS has increased the priority of tabs which are playing audio, making it less likely that they will be discarded in low memory situations. More exciting, tabs which are playing audio will now have a visual indicator displaying the volume, making it a lot easier to determine where these random sounds are coming from.
An implementation of Web Components’ document.register() function landed, making it possible for JavaScript to register custom HTML elements with WebKit. Date and time input fields now accept “24” as a valid hour as well and the “reflected-xss” directive has been implemented as part of the experimental CSP 1.1 implementation.
Iframes now recognize the “allowfullscreen” attribute, whereas they already accepted the prefixed version. Furthermore, Mutation Observers have been unprefixed as well!
Dave continuedhisworkonthenew Region-based multiple column implementation, also taking the first steps towards specification-compliant painting of columns. Meanwhile, Julien continuedhiswork on the implementation of the CSS Grid Layout Module, finishing the auto placement algorithm implementation.
Other changes which occurred last week:
JavaScriptCore’s script source cache has been shrunk, yielding significant memory usage improvements.
Today’s update discusses the 725 WebKit and 990 Chromium commits that landed last week, totaling up to 1715 changesets.
Chromium’s version number is now equal to the number of species Captain Jean-Luc Picard made contact with in Star Trek’s The Next Generation series: 27.
Support for the “ch” CSS unit has been added to WebKit, which matches the width and spacing of the “0”-glyph in the current font. The @supports at-rule now has improved error recovery, the “src” property in @filter at-rules can now be parsed correctly and the correct behavior of the -webkit-margin-collapse property has been implemented.
Support for the ::distributed() pseudo-element, part of the Shadow DOM specification, has been implemented. Pablo also landed support for the CSS.supports() method, which is the DOM API specified in the CSS Conditional Rules module.
The threaded HTML parser has beenupdated to pass all layout tests, and the preload scanner has been enabled as part of the background parsing thread after parts of it have beenupdated to be therad safe.
Other changes which occurred last week:
WebKit’s Web Intents implementation has been removed from the repository.
A wild Last Week in Chromium and WebKit appears! This update describes the 1,654 commits which were made last week, 958 for Chromium and 696 for WebKit.
In case you didn’t hear this elsewhere yet: Opera has announced that it will start using the Chromium port of WebKit as the rendering engine in their browsers. This is very exciting news, even though I’m sad to see an excellent engine like Presto part with the rendering engine playing field. Meanwhile, Apple more broadlystarted with upstreaming the iOS port to WebKit!
In a seriesof justover a dozen commits, Gregg imported a slightly modified Khronos WebGL conformance test suite into WebKit. Sharing test suites is great, and I hope we can see more of this!