Last week in WebKit: MathML meets Flexbox and XHR replay in the Inspector

October 3rd, 2012

This update discusses the 1324 changes which landed in the two weeks leading to September 24th, ending at revision 129326.

In Web Inspector’s Style panel, the relevant selector that causes a rule to be applied to a certain element will now be highlighted. The XMLHttpRequest Replay feature has been added to the Network Panel, search and filtering features are now available in the Timeline panel and all named flows can now be displayed in the CSS Named Flows drawer.

The Flexbox implementation in WebKit now supports absolutely positioned flex items, and had two bugs fixed. Initial work for supporting exclusions for basic shapes has landed, and more work on CSS Exclusions’ shape-inside function has been done as well. Finally, the mask-type attribute on SVG’s <mask> element is now supported too.

Support for drawing dashed lines in the 2D Canvas APIs according to the specification landed, and introduced the getLineDash and setLineDash methods, and the lineDashOffset attribute. The prefixed version of Blob.slice() has been removed, and Chromium has removed support for the prefixed postMessage method. SVG’s appendItem method on path segment list has been sped up from linear to constant time. Support for creating a Shadow Root on replaced elements has been removed for now and CSS Region’s getRegionFlowRanges method on Elements has been implemented.

David Barton updated all of MathML’s rendering to be based on the Flexible Box module, simplifying the code significantly. Over the past number of months, he’s done quite a lot of work on improving WebKit’s implementation of MathML, which may ship with Chrome 24 alongside the browsers which already support it.

WebKit’s Content Security Policy implementation now features supports for paths in directives’ values. Blocked inline scripts will cause Web Inspector to pause, ignored directives due to non-ASCII values will now generate warnings and JavaScriptCore’s description when blocking eval() has been clarified.

Other changes which occurred in these two weeks: