Posts Tagged ‘Chrome-27’

CSS parsing errors, JavaScriptCore updates and font load events

Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 27

1,226 Chromium changes and 717 WebKit changes add up to a total of 1,943 changes last week.

Work has started enabling 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 will now 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 awesome new threads and experimenting with LLVM as a backend.

Other changes which occurred last week:

I unfortunately won’t be able to share an update next week. Be sure to check out Šime Vidas Web Platform dailies instead!

Read more (2 comments) »

Cleaner URLs in Error Messages and Updated UI for the Calendar Pickers

Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 27

752 WebKit and 965 Chromium commits, a total of 1,717 changes, did land last week.

Error messages displayed in Web Inspector’s console which contain long URLs will now have them shortened. WOFF fonts will now be recognized with their newly registered mime-type and the touchmove event will now be emulated within iframes. The Ace editor, which also powers the Cloud9 IDE, has been made available in the Inspector as an experiment.

The “width” and “height” directives for media queries now take full page zooming into account. The desktop version of -webkit-text-size-adjust has been removed, selector indexes got an extra bit meaning WebKit supports 8191 selectors again and a video’s line-height won’t inherit to its cues anymore.

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.

Regions will now be automatically generated for David’s new multiple column implementation. Meanwhile, Julien has made various changes to the CSS Grid Layout implementation, namely parsing of the the grid-{start, before} properties and the grid-{end, after} properties, resolving them and extending the grammar to support two positions for the grid-{row, column} properties.

Other changes which occurred last week:

Have a good week!

Read more (1 comment) »

Threaded HTML Parsing for Chromium and unprefixed CSP 1.1

Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 27

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.

The :first-letter pseudo element is now being ignored in flexible box elements. Dave rewrote the stacking model for the new multiple column implementation to be spec compliant and made sure transformed objects show up. CSS Shaders’ non-separable color and luminosity blend modes have been implemented, and parsing of CSS’ transition-property property has been improved.

Work on refreshing the calendar picker in WebKit continues with various new components, among which support for scrollbars, a month popup view and a table view for the calendar itself.

One feature that is nearing completion is the threaded HTML tokenizer. Now that more tests have 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:

That’s all again.

Read more (1 comment) »

Audio Indicators, document.register() and unprefixed Mutation Observers

Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 27

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.

Web Inspector’s Timeline panel now shows the networking events associated with Web Sockets, i.e. creating the socket and receiving a reply to the connection handshake. The “undefined” keyword will now be lowlighted, and Pavel landed a basic console.table() implementation.

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!

Several more tests have been fixed in the new multi-threaded HTML parser by implementing missing functionality and support for edge-cases. There are 25 failing test-cases remaining and the number of open issues is decreasing.

Dave continued his work on the new Region-based multiple column implementation, also taking the first steps towards specification-compliant painting of columns. Meanwhile, Julien continued his work 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.
  • Support for the canvas’ Path object has been enabled for all ports, and separately in Chromium.
  • An implementation of the DFG JIT for MIPS architectures has been implemented.
  • An OpenCL implementation of the FEMerge filter landed, with many more on their way.
  • The WebKitGTK port updated their media controls to be CSS-based rather than GTK-based.
  • A Chromium flag has been added to toggle availability of the Apps and Extension DevTool.
  • All settings in chrome://flags can now be reset to their default state through a new button.
  • Stephen Chenney has become a WebKit Reviewer. Congratulations!

And that’s last week again..

Read more (1 comment) »

The “ch” unit, the Threaded HTML parser and Chromium 27

Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 27

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.

Within Web Inspector, an option has been added to split the Elements and Source sidebars in two separate panes. DOM nodes are now being highlighted when hovering over them in the Debug panel, the ability to have whitespace indicators now is experimental and the re-do feature in the text editor will now move the selection past the text.

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.

Changing an element’s border or padding will now re-layout its children, intrinsic widths on replaced elements -such as images- are now more accurate and Opera’s Morten Stenshorne made WebKit stop ignoring column rules wider than the gaps. CSS Exclusions’ shape-inside property now defaults to outside-shape, and shape-inside now supports circles.

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 been updated to pass all layout tests, and the preload scanner has been enabled as part of the background parsing thread after parts of it have been updated to be therad safe.

Other changes which occurred last week:

Cheers for reading!

Read more (no comments) »