Bug 26133 [Dialogs] TitleAreaDialog status line blinks when newMessage == currentMessage
Build id: 200211051258 The current implementation for TitleAreaDialog#showMessage(String,int) method has a guard against updates to the message with the same content (to avoid needlessly blinking). The problem is that after that the message may be concatenated with a space character: ==================== //If there is an image then add in a space to the message //for layout purposes if(newImage != null) message = " " + message; //$NON-NLS-1$ ==================== So the guard will fail in the next call even if the same string is provided by the client.
bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/TitleAreaDialog.java
/**
 * Make the label used for displaying error images visible
 * depending on boolean.
 */
private void setImageLabelVisible(boolean visible){
	messageImageLabel.setVisible(visible);
	bottomFillerLabel.setVisible(visible);
	leftFillerLabel.setVisible(visible);
	
}
/**
 * Set the message backgrounds to be the error or normal color
 * depending on whether or not showingError is true.
 */
private void setMessageBackgrounds(boolean showingError){
	
	Color color;
	if(showingError)
		color = errorMsgAreaBackground;
	else
		color = normalMsgAreaBackground;
		
	messageLabel.setBackground(color);
	messageImageLabel.setBackground(color);
	bottomFillerLabel.setBackground(color);
	leftFillerLabel.setBackground(color); 
}
		
}