Recent WebKit Features

There have been a lot of exciting new engine-level features that have been added to WebKit over the last few months, and not all of them have received their own blog entries. Since we featured some of these in Safari/WebKit WWDC presentations, now seems like a good time to mention some of the highlights of the cool new things you can find in WebKit nightlies:

  • JavaScript getters and setters – pretty much the same as getters and setters in Mozilla.
  • DOM class prototypes – now you can get direct access to the prototype objects for DOM classes, e.g. HTMLElement.prototype, to do the same kind of prototype hacking you can do in Mozilla.
  • Undetectable document.all, for compatibility with web pages that use it without checking.
  • Much improved support for HTML editing, including execCommand support for InsertOrderedList, InsertUnorderedList, Indent, Outdent, HiliteColor, RemoveFormat, FormatBlock, FindString, InsertHorizontalRule, InsertImage, InsertHTML, Unlink and CreateLink.
  • Significant JavaScript speed improvements, adding up to 20-30% improvements on benchmarks such as the JavaScript iBench and the 24fun BenchJS.
  • Significant DOM XPath support including some of the Mozilla and IE extensions.
  • Mozilla’s XSLTProcessor extension.
  • CSS3 Media Queries
  • New CSS3 properties including resize, background-size, border-radius (now complete), overflow-x and overflow-y.
  • Continued progress on styleable form controls – textarea and pop-up menu select (but not the list box kind) are now styleable.

This is just a sampling of some of the great new web content features that WebKit supports. If you would like to see these and more in action, try a nightly build or check out the code.