String startup = ( (IFrameTabPanel) getContent() ).getUrl();
if ( !StringUtils.isEmpty( ( (IFrameTabPanel) getContent() ).getDeepLinkUrl() ) ) {
startup = ( (IFrameTabPanel) getContent() ).getDeepLinkUrl();
}
UrlBuilder builder = new UrlBuilder();
builder.setProtocol( Window.Location.getProtocol() );
builder.setHost( Window.Location.getHostName() );
builder.setPort( Integer.parseInt( Window.Location.getPort() ) );
builder.setPath( Window.Location.getPath() );
//UrlBuilder will encode spaces as '+' which is a valid special character so we replace all spaces with '%20'
builder.setParameter( "name", getLabelText().replaceAll( "\\s", "%20" ) );
//the startup string is already encoded with ':' being replaced with '\t' and then encoded again...
builder.setParameter( "startup-url", startup );
final TextArea urlbox = new TextArea();
//encode any space characters
urlbox.setText( builder.buildString() );
urlbox.setReadOnly( true );
urlbox.setVisibleLines( 3 );
dialogBox.setContent( urlbox );
urlbox.setHeight( "80px" );
urlbox.setWidth( "600px" );