We are pleased to announce that the GWT Developer Plugin now officially supports Firefox 4 on all platforms that Firefox ships on: Win x86, Linux x86/x86_64, Mac x86/x86_64. Please be sure that you are using Firefox 4 beta 9 or newer.
If you already have the plugin installed, you can use the normal add-on update process. If you are a Firefox 3.x user who has been waiting to try Firefox 4, the add-on will automatically update when you launch Firefox 4 with your current profile.
As always, you can always download the latest GWT Developer plugin for your browser from http://gwt.google.com/missing-plugin
Over 100 million web users speak languages that are written right-to-left, such as Arabic, Hebrew and Persian.
Right-to-left language support is not new to GWT. GWT makes it easy to build applications localized to both right-to-left (RTL) and left-to-right (LTR) locales, mirroring the layout of the page and its widgets so that an RTL-language page flows right-to-left. GWT even makes it easy to mirror those "handed" images that need to point in a direction that makes sense within the page. So, what's the problem?
The Challenge of Bidi Text
An application localized to an RTL language is often used to access both RTL and LTR data, simply because data in some left-to-right languages like English is so widespread. For example, an Arabic movie review application may need to display Latin-script movie titles. Conversely, native RTL-language speakers often choose to use an English version of an application, but still use it to access and enter RTL data too. The point is that the data should be displayed in its own direction, regardless of the context’s direction. As a result, the text of the page as a whole goes in both directions; the page’s text is bidirectional, or “bidi”.
Unfortunately, inserting an opposite-direction phrase into your page without explicitly indicating where it begins and ends, often garbles it and/or the text surrounding it, putting the words and punctuation in the wrong order. For example, in an RTL context, “10 Main St.” is displayed incorrectly as “.Main St 10”. For short, we call the capability to display opposite-direction text correctly “bidi text support”.
The good news is that GWT has recently been enhanced with some powerful features for supporting bidi text. They allow your application to correctly display and enter opposite-direction text with very little extra effort.
Built-in Bidi Text Support in TextBox and TextArea
TextBox
TextArea
Since GWT 2.1 release, the TextBox and TextArea widgets are capable of automatically adjusting their direction as text is being entered (GWT Showcase example). This feature is enabled by default when at least one of the application's locales is RTL, and otherwise can be enabled manually.
Built-in Bidi Text Support in Other Widgets
As of GWT 2.2 (to be released soon), several widely used widgets such as Label, HTML, Anchor, Hyperlink and ListBox gain built-in bidi text support by exposing two new interfaces:
Label
HTML
Anchor
Hyperlink
ListBox
HasDirectionalText
Label label = new Label(phone, Direction.LTR);
setText()
label.setText(phone, Direction.LTR);
HasDirectionEstimator
public class BookReviewApp() { private ListBox bookNamesListBox; … public BookReviewApp() { // Enable bidi support. bookNamesListBox.setDirectionEstimator(true); … } public addBook(String bookName, String review) { // ListBox item’s direction will be set automatically. bookNamesListBox.add(bookName); … } … }
Bidi and Messages
BidiFormatter is a new class providing bidi text support primitives like estimating a string’s direction and wrapping it in HTML for correct display in a potentially opposite-direction context. The new built-in bidi text support features in the widgets mentioned above use BidiFormatter to do their stuff. Sometimes, however, you may need to use BidiFormatter directly. It is particularly useful with message placeholder values. While the message as a whole is usually localized to the user interface language, placeholder values may be in an arbitrary language and thus may have the opposite direction. Use BidiFormatter’s methods to wrap such values before inserting them into the message. A comprehensive example of using BidiFormatter with messages is available in the GWT Showcase.
BidiFormatter
Back in October of this year we released GWT 2.1, with a framework and set of tools that made it easy to build business web apps. Since then we've had some great feedback from the GWT community, and today we're happy to announce that we've incorporated that feedback into our latest release, GWT 2.1.1. The specifics of this release are detailed below, but if you're interested in getting started you can do so here.
For Eclipse users, simply click on the “Google updates available” icon in the lower left hand corner of your screen, or select the “Help->Check for Updates” menu item.
Alongside this release, we’ve also updated the Google Plugin for Eclipse and GWT Designer. Both can be installed via the links below.
The main release updates for each product include:
GWT SDK
GWT’s RequestFactory component, introduced in GWT 2.1, received a lot of attention, both from the GWT team at Google and from the GWT open source community at large. Based on this feedback, we’ve added the following:
If you have questions or want to provide some feedback, we’d love to hear it, and the best place to do so is in the Google Web Toolkit Group.
For those of you that are diligently testing the bounds of the web, you may have noticed some issues when debugging GWT apps within Internet Explorer 9. Even though IE 9 is still in a pre-release phase, we did want to provide some context around the root of the problem, and offer up a workaround to get you working in Development Mode again.
Note that this is only an issue when running your GWT app in Development Mode under IE 9. Production Mode is unaffected.
For some background, there appears to have been a change in behavior in IE 9 related to the way Javascript names are resolved from the perspective of native plugins. When executing in document mode 9, the IE tab that hosts the dev mode plugin crashes.
We are working with Microsoft to understand the issue and come up with a definitive solution. Again, note that this issue affects only GWT Development Mode.
The current workaround is to avoid document mode 9. See the link below for more information.
To force an earlier document mode, add a meta tag to your html files indicating a different document mode. For instance, in the case of the sample GWT app html page, add <meta http-equiv="X-UA-Compatible" content="IE=8" /> to the <head> section as shown below:
Until this issue is resolved, you will need to do this for each HTML host page in order to use GWT dev mode with IE9.
One of the features that makes GWT unique is the ability to run your application in the browser of your choice, and debug your Java source in the IDE. While the “browser of your choice” portion of the feature has been quite true for Windows users, our Developer Plugin support has had some gaps. Today we’re happy to close some of these gaps, by announcing the release of a Chrome Developer Plugin for Mac and Linux users.
To download and install the new plugin, simply start debugging your GWT application and point Chrome at the URL provided by the Google Plugin for Eclipse. From there you’ll be prompted to install the “GWT Developer Plugin for Chrome”.
You can also browse directly to the following URL for installation: http://gwt.google.com/missing-plugin/.
In addition to the new OS support, there is an important security fix included in this update. You will see the GWT icon appear in your browser bar when the plugin sees the ?gwt.codesvr fragment in a URL, and it will turn black and white if you need to authorize that host. If you see a full-color icon, that indicates your permissions are in order. You can click the icon to quick-jump to the permissions configuration.
Note to Windows users: we have created a new permissions UI that is baked into the extension rather than using native Windows dialogs. You will need to re-add any hosts you had configured for this new version.
For more information regarding security and the GWT Developer Plugin, checkout the plugin design wiki page, here.
If you have questions or want to provide some feedback, we’d love to hear it, and the best place to do so is at the Google Web Toolkit Group.
For several months now, we’ve been hard at work adding the features and functionality that was first demoed at this year’s Google I/O. The goal of this release has been to make it easy to build business oriented web apps that can take full advantage of the cloud -- zero deployment, instant scaling, cost savings, and portability that allows you to run your app in a variety of cloud environments, such as Google’s hosted service, App Engine, and VMware’s on-premise solution, vFabric. A few weeks ago we mentioned that we were close to wrapping up this project, and today we’re happy to announce the general availability of these tools.
Download the Google Plugin for Eclipse or SpringSource Tool Suite to get started now!
Google Web Toolkit SDK
If you’re looking to start building apps using the Spring Roo and SpringSource Tool Suite integration, the quickest way to start is by downloading SpringSource Tool Suite and installing the Google Plugin for Eclipse from the main Dashboard component.
Once downloaded, simply start up Roo’s command line interpreter, and run the “script expenses.roo” command.
This will run a series of Roo commands that produce the following starter web app:
Now that we’ve created our app and launched it from the command line, we can import it into STS to start customizing it. To do this switch back to STS and click the menu item File->Import, and then select “Existing Maven Projects”.
Once imported you can now run your app directly from STS by right clicking on the project and selecting the “Run As->Web Application”
From there you can start customizing it using our GWT Developer Guides and Roo documentation to help you along the way.
For a complete “Getting Started” guide, be sure to checkout Getting Started with GWT, Spring Roo, and SpringSource Tool Suite.
As you may be able to tell by the list of available product updates, this release has been the culmination of work of several teams. Thanks to the VMware and Spring engineers (Ben Alex, Christian Dupuis, and teams) for working with us to create a seamless and integrated developer experience. And to the developers that have been riding tip of trunk for the past few milestones, submitting questions, issues, and patches, thanks. It wouldn’t be a success without you.
Want to get started? Please download the Google Plugin for Eclipse now! You can jump right in with the Getting Started with GWT 2.1. docs. GWT 2.1 is also available in Maven Central as version 2.1.0.
If you’re interested in receiving updates about existing Google Developer Tools as well as those that are about to be launched, sign up here!