Google has posted the second milestone of GWT 1.5, an open source Java-to-JavaScript compiler and library for building AJAX applications in Java. The major new feature in version 1.5 is support for Java 5, including generics, enums, annotations, and the enhanced for loop. According to Bruce Johnson, new features in this milestone include:
- There is a new DOM API package. Using the new ability to subclass JavaScriptObject, GWT 1.5 M2 includes bindings for nearly the entire W3C HTML DOM spec. See the javadoc for the package com.google.gwt.dom.client for details. The widgets will be retrofitted to use the new DOM classes in the upcoming release candidate.
- Some widgets now have animation effects. Popups, trees, etc. have subtle animation effects to provide visual cues when hidden and shown.
- The addition of a "Showcase" sample. This sample combines features from several other samples and demonstrates the new, nicer-looking GWT default stylesheet and widget animations. Note that the default style is still in flux and is likely to change.
- Keyboard support has been added where previously absent in UI classes, including in menus and tab panels.
- ARIA support for enhanced accessibility is now present in most widgets, including menus, trees, tabs, and button variants.
- Bi-di. Widgets and panels have built-in support for bi-directional layout.
- "long" emulation. The Java language defines "long" types to be 64-bit signed integers, whereas JavaScript only supports 64-bit floating point numbers, which cannot accurately represent the same whole-number range as a true "long" type. GWT 1.5 M2 transparently emulates long types properly to more faithfully maintain Java semantics in web mode.
- There is a single Mac OS X distribution that works on both Leopard (10.5) and Tiger (10.4).