GWT open page in a new tab

Viewed 52282

I am developing GWT application and I use

com.google.gwt.user.client.Window.open(pageUrl, "_blank", "");

to open new page. And it opens in a new tab when called, for example, directly after button click. But I decided to do some validations on server before opening new page and placed the call to the mentioned above method to the

public void onSuccess(Object response) {
}

And it starts to open pages in new window instead of new tab (this is true only for Chrome, other browsers still open it in a new tab).

Can anybody help me?


I built a small example to illustrate the issue:

    button.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            Window.open("http://www.google.com/", "_blank", "");
            MySampleApplicationServiceAsync serviceAsync = GWT.create(MySampleApplicationService.class);
            serviceAsync.getMessage("Hello, Server!", new AsyncCallback() {

                public void onFailure(Throwable caught) {
                    Window.alert("ERROR");
                }

                public void onSuccess(Object result) {
                    Window.open("http://www.bing.com/", "_blank", "");
                }
            }
            );
        }
    });
  • Firefox(3.6.8) opens both pages in new tabs.
  • Chrome(6.0) opens "google.com" in new tab and "bing.com" in new window
  • Opera(10.10) opens in new tabs.
  • IE(8.0) opens both in new Windows.

I marked igorbel 's answer as the only correct cos I haven't found any proper way to specify the same behaviour in all situations.


6 Answers
Related