bug-classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug awt/27960] CairoGraphics2D.setTransform() doesn't update clip


From: mark at gcc dot gnu dot org
Subject: [Bug awt/27960] CairoGraphics2D.setTransform() doesn't update clip
Date: 13 Jun 2006 07:46:56 -0000


------- Comment #1 from mark at gcc dot gnu dot org  2006-06-13 07:46 -------
With Roman's latest patches jfreechart seems to look fine again.

2006-06-12  Roman Kennke  <address@hidden>

        * gnu/java/awt/peer/gtk/CairoGraphics2D.java
        (copy): Use getClip() to copy the clip. Make copied transform
        null when original transform is null. Set clip here.
        (setTransform): Correctly update the clip.
        (setTransformImpl): New method. Updates the actual transform for
        Cairo.
        (transform): Correctly update the clip.
        (translate): Correctly update the clip.
        (clip): Handle null clip and argument correctly.
        (clipRect): Avoid creating new Rectangle objects.
        (getClip): Get the correct copy of the clip.
        (setClip): Correctly handle null argument.
        * gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java
        (CairoSurfaceGraphics): Don't set the clip here. The clip can either
        be null or whatever has been set in copy().
        * gnu/java/awt/peer/gtk/ComponentGraphics.java
        (drawImage): Add translation to the image coordinates.
        * gnu/java/awt/peer/gtk/VolatileImageGraphics.java
        (VolatileImageGraphics): Don't set clip here. The clip can either
        be null or whatever has been set in copy().

Could you retest?

Not all Mauve tests PASS yet, but I don't believe the implementation is
actually wrong, just that we are missing some optimization if the clip is
actually rectangular.

the jfreechart superdemo is a really slow, but that seems to be caused by the
text area on the bottom-right, not by the graphics drawing. But that is another
bug.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27960





reply via email to

[Prev in Thread] Current Thread [Next in Thread]