Archive for May, 2012

Seamless iframes, Private Names and the new Sources Panel

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

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.

Web Inspector’s Sources Panel, which intends to combine features from the Resources and Scripts panel such as revision historyis no longer experimental. The Go to Source shortcut is now accessible from all panels, drag and drop from the Navigator Panel has been added and preparations are being made to visualize layer compositing performance on the Timeline Panel.

With the layout code landed, most of the functionality seamless iframes deliver has been implemented. The new negative flexing algorithm for the Flexible Box Module has been implemented, and automated margins on flexboxes will now allocated space in the flex and cross directions. The color CSS Property may now be used on regions. Chromium has enabled support for sub-pixel layout in WebKit.

JavaScriptCore has started to implement ECMAScript 6’s Private Names feature, initially be allowing property maps to contain keys that aren’t identifiers. The interface code for DOM4’s DOMError landed, key paths in IndexedDB may now be arrays and a page’s scrollWidth() and scrollHeight() are now page scale invariant.

Other changes which occurred last week:

  • A setting has been added for disabling synchronous XMLHTTPRequest requests.
  • John committed compile and runtime flags for Font Boosting, Chrome for Android’s text inflation algorithm.
  • A setting has been added to make fixed positioning create a new layer stacking context.
  • WebKit’s backface-visibility tests have been updated per the HTML5 specification.
  • Carlos Garcia Campos is now a WebKit Reviewer, congratulations!
  • Grammar checking has been enabled for Chromium upon pasting text in any editable field.
  • Dictionaries for Afrikaans and Faroese have been added for spellchecking in Chromium.
  • Chromium OS now features an high contrast mode, available through the Accessibility settings page.
  • Touch-screen pinch zooming may now be enabled through about:flags.
  • An implementation of the Connection Status API has been added to Chromium.

And that’s it again for last week. This week we may see a tabbed settings dialog for Web Inspector!

Read more (2 comments) »

Decreased input padding, 8-bit canvas and getUserMedia()

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

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.

The debugger sidebar for Web Inspector’s Script Panel can now be toggled using a button. Console messages about Content Security Policy violations now name the directive and support for saving snippets has been implemented.

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.

Image smoothing for the <canvas> element may now be disabled. Loading video files served through scripts without a supplied mime-type will now work, and two issues with CSS 2.1 support have been fixed, namely text baselines in the first row of a table and wrapping stand-alone table columns in anonymous tables.

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:

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 :-].

Read more (no comments) »

Tab Sizing, String Values for IndexedDB and Chrome 21

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

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.

Web Inspector’s search box supports CSS selectors again, JavaScriptCore timers will now show up on the timeline and a context menu has been added for tabs.

Text decorations, such as underlines, will now be rendered for text in :first-line selectors. Implementation of the :first-letter selector was aligned with the specification. Eric landed stylesheet inheritance support for seamless iframes, as well as the ability to inherit styles from their parent iframe.  The RadioNodeList interface is now supported, background-size is now part of the “background” shorthand and, albeit disabled, the <intent> element landed.

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.

Included among other minor updates on the WebKit website, the conditions under which the WebKit trademark can be used are now available on the Mac OS Forge website.

Other changes which occurred last week:

An exciting thing to keep an eye out for in the upcoming weeks is Luke’s work on bringing CSS Variables to WebKit, the announcement for which has already been made!

Read more (4 comments) »

Sub-pixel layout, Inspecting Web Socket Frames and Seamless Iframes

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

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.

Web Inspector now offers the ability to disable all JavaScript execution on a page, and also allows Web Socket frames to be inspected. The shortcut overlay has received some UI polish and the Timeline Frame Mode has been taken out of experimental.

Fixed placeholders have been implemented for date input types, a form field’s entries supplied through a <datalist> are now barred from validation. The Apple Mac port removed support for BlobBuilder and the Selector APIs have been aligned with the specification when pseudo-element selectors are used.

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.

Eric landed the first parts of support for seamless iframes in WebKit, namely some tests, sandbox and styling and navigation. A vendor-prefixed version of the Performance Timeline API landed, the getUserMedia() method now takes an object instead of a string and the noteOn and noteOff methods of the Web Audio API’s oscillator got implemented.

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.
  • The EFL port has enabled support for the <track> element, the Web Timing API and the Web Audio API!
  • The BlackBerry port enabled support for the download attribute on anchors.
  • Abhishek Arya (inferno) is now a WebKit Reviewer, congratulations!
  • Chromium is working towards enabling getUserMedia by default.
  • Multiple input channels are now supported for the JavaScriptAudioNode.
  • HTTP Pipelining is now enabled for all users on Chrome’s dev channel.
  • All Chrome Canary Windows users will now receive the PPAPI-based Flash.
  • Work is being done to enable an x86 Chromium Android build, which would work in the emulator.
  • A new USB Extension API has been added to Chromium.
  • A command line flag for enabling Peer-to-Peer connections has been added, though is still experimental.
  • It’s now possible to save webpages as MHTML within Chromium.

And that’s it again, thanks for reading! 🙂

Read more (no comments) »