I committed the attached fix that moves the getComponentGraphics() fetch
from paintComponent() to paint(). Some simple tests show that this is
the right thing and it also fixes a problem with an app I have here.
2005-11-09 Roman Kennke <[EMAIL PROTECTED]>
* javax/swing/JComponent.java
(paint): Fetch a new componentGraphics here instead of
paintComponent.
(paintComponent): Don't fetch the componentGraphics here. This
must be done in paint.
/Roman
Index: javax/swing/JComponent.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/swing/JComponent.java,v
retrieving revision 1.77
diff -u -r1.77 JComponent.java
--- javax/swing/JComponent.java 8 Nov 2005 13:53:59 -0000 1.77
+++ javax/swing/JComponent.java 9 Nov 2005 14:41:55 -0000
@@ -1685,10 +1685,11 @@
{
if (g.getClip() == null)
g.setClip(0, 0, getWidth(), getHeight());
- paintComponent(g);
- paintBorder(g);
- paintChildren(g);
- Rectangle clip = g.getClipBounds();
+ Graphics g2 = getComponentGraphics(g);
+ paintComponent(g2);
+ paintBorder(g2);
+ paintChildren(g2);
+ Rectangle clip = g2.getClipBounds();
if (clip.x == 0 && clip.y == 0 && clip.width == getWidth()
&& clip.height == getHeight())
RepaintManager.currentManager(this).markCompletelyClean(this);
@@ -1785,7 +1786,7 @@
Graphics g2 = g;
if (!(g instanceof Graphics2D))
g2 = g.create();
- ui.update(getComponentGraphics(g2), this);
+ ui.update(g2, this);
if (!(g instanceof Graphics2D))
g2.dispose();
}
_______________________________________________
Classpath-patches mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/classpath-patches