Mercurial > hg > openjdk > icedtea > jdk7 > jdk
changeset 2524:e2b1bab101d2
6954231: SynthTextPaneUI.installUI() doesn't set component to opaque even if prop was not set by client progr
Reviewed-by: alexp
author | peterz |
---|---|
date | Fri, 28 May 2010 13:32:40 +0400 |
parents | 824b0f8b68f6 |
children | 9b247a6290a4 |
files | src/share/classes/javax/swing/plaf/basic/BasicTextUI.java src/share/classes/javax/swing/plaf/synth/SynthTextPaneUI.java |
diffstat | 2 files changed, 28 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/classes/javax/swing/plaf/basic/BasicTextUI.java Fri May 28 13:31:38 2010 +0400 +++ b/src/share/classes/javax/swing/plaf/basic/BasicTextUI.java Fri May 28 13:32:40 2010 +0400 @@ -779,20 +779,16 @@ if (c instanceof JTextComponent) { editor = (JTextComponent) c; + // common case is background painted... this can + // easily be changed by subclasses or from outside + // of the component. + LookAndFeel.installProperty(editor, "opaque", Boolean.TRUE); + LookAndFeel.installProperty(editor, "autoscrolls", Boolean.TRUE); + // install defaults installDefaults(); installDefaults2(); - // This is a workaround as these should not override what synth has - // set them to - if (! (this instanceof SynthUI)) { - // common case is background painted... this can - // easily be changed by subclasses or from outside - // of the component. - LookAndFeel.installProperty(editor, "opaque", Boolean.TRUE); - LookAndFeel.installProperty(editor, "autoscrolls", Boolean.TRUE); - } - // attach to the model and editor editor.addPropertyChangeListener(updateHandler); Document doc = editor.getDocument();
--- a/src/share/classes/javax/swing/plaf/synth/SynthTextPaneUI.java Fri May 28 13:31:38 2010 +0400 +++ b/src/share/classes/javax/swing/plaf/synth/SynthTextPaneUI.java Fri May 28 13:32:40 2010 +0400 @@ -72,7 +72,28 @@ } /** - * @inheritDoc + * Installs the UI for a component. This does the following + * things. + * <ol> + * <li> + * Sets opaqueness of the associated component according to its style, + * if the opaque property has not already been set by the client program. + * <li> + * Installs the default caret and highlighter into the + * associated component. These properties are only set if their + * current value is either {@code null} or an instance of + * {@link UIResource}. + * <li> + * Attaches to the editor and model. If there is no + * model, a default one is created. + * <li> + * Creates the view factory and the view hierarchy used + * to represent the model. + * </ol> + * + * @param c the editor component + * @see BasicTextUI#installUI + * @see ComponentUI#installUI */ @Override public void installUI(JComponent c) {