Microdata, the Web Component Model and hybi-17 for Web Sockets
Published on in Google Chrome, Last Week, tech, WebKit. Version: Chrome 16
Last week introduced another 1,540 changes in the WebKit and Chromium repositories, which beats the previous record of 1,515 commits. Highlights include a branch for the Web Component Model, first steps in WebKit’s Microdata implementation and searching through multiple scripts in Web Inspector.
The Web Component Model has received its own branch at WebKit, allowing initial work to start. The Component Model provides programmatic ways to ways to build components, utilizing features such as the Shadow DOM, templates and the ability to create your own elements. It layers a declarative form of the same capabilities on this infrastructure, making it available to most HTML developers. See Alex Russell’s slides for more information.
A number of updates were done to Chromium’ Extension APIs. The Permission (docs) and Panel (docs) APIs have been moved out of experimental, whereas support for a new experimental Clipboard API has been added, which will grant extensions access to the system’s clipboard. Finally, the onAuthRequired callback in the webRequest API can now provide credentials when needed.
Within Web Inspector, support was added for an advanced search feature in the Scripts Panel that allows you to search through multiple scripts at the same time. Back-end work was done in preparation of supporting the ability to debug shared work initialization, and the ability to look up and explore an object from an heap profile was added.
As for specification support, the first patch for implementing HTML5 Microdata has landed, namely the getItems() method. For CSS Regions support, the content-order CSS property has been removed, flow has been renamed to flow-into and positioned blocks now work with variable width regions.
Robert Hogan has landed three more patches fixing tests from the CSS 2.1 test-suite, the event.layerX and .layerY properties have been removed, the :checked pseudo-element selector now matches a selected option and right-margins will be taken into account for vertical writing modes. Finally, the new CSS3 Flexbox implementation now supports flex-align for cross axis alignment in flex-flow: row containers.
Other changes which occurred last week:
- The Web Socket implementation has been updated to hybi-17, another breaking change.
- Several classes were shrunk in WebKit, leading to slightly improved memory usage.
- The UI that appears when entering fullscreen mode now provides options around granting sites
the ability to automatically enter fullscreen mode. - Print Preview now offers support to set the margin settings for the printed page(s).
- The SQLite backing store for WebKit’s Indexed DB implementation has been removed.
- Support for GDI text-rendering on Chromium for Windows has been re-added.
- More deliberate typos have been introduced to Chromium’s build infrastructure.
- Updated icons for speech input were added, and the feature may now be disabled at build time.
- Slightly updated icons for the New Tab button on Chromium’s Tab Strip have been committed.
- More performance improvements for JSC: 1.2%, 1% and 1%, and build-in properties can’t be removed now.
- All of XHTMLMP-related code has been removed from WebKit, just like the remains of WBXML.
- With the revert of a certain patch, Twitter will become usable again on Chromium.
- The final part of basic IME support for Pepper APIs has been implemented.
- The usage of “web site” v.s. “web page” has been made consistent across Chromium.
- Chromium will learn about intranet hostnames more aggressively, so that trying to revisit a
previous host won’t result in a search page instead. - A new field trail for Instant will be starting, only effecting the search home page.
- Chromium now supports dynamic switching between integrated and discrete GPUs on Mac OS X.
- DOM Storage, such as localStorage and sessionStorage, are now enabled for all WebKit ports.
For this week, you may want to keep an eye out on progress for a custom-written CSS Lexer and progress on implementing flex-flow for columns, both of which are quite exciting :).