diff options
author | Roman Kennke <roman@kennke.org> | 2006-10-18 22:28:11 +0000 |
---|---|---|
committer | Roman Kennke <roman@kennke.org> | 2006-10-18 22:28:11 +0000 |
commit | bde031cc89e26f48a958fcef0d95b11a2cd719db (patch) | |
tree | 9ddbe134636d316cabd4c859e141b035c89dfc84 | |
parent | 3fb3b2dca64325b1e95376b22ee8b16dfdfafa6d (diff) | |
download | classpath-bde031cc89e26f48a958fcef0d95b11a2cd719db.tar.gz |
2006-10-18 Roman Kennke <kennke@aicas.com>
PR 29419
* gnu/java/awt/peer/gtk/CairoGraphics2D.java
(copyArea): Changed size comparison to return when size == 0
too.
* javax/swing/JViewport.java
(paintBackingStore): Check width and height of blitted area
and only do blit if its > 0.
(paintBlit): Check width and height of blitted area
and only do blit if its > 0.
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | gnu/java/awt/peer/gtk/CairoGraphics2D.java | 2 | ||||
-rw-r--r-- | javax/swing/JViewport.java | 22 |
3 files changed, 27 insertions, 9 deletions
@@ -1,5 +1,17 @@ 2006-10-18 Roman Kennke <kennke@aicas.com> + PR 29419 + * gnu/java/awt/peer/gtk/CairoGraphics2D.java + (copyArea): Changed size comparison to return when size == 0 + too. + * javax/swing/JViewport.java + (paintBackingStore): Check width and height of blitted area + and only do blit if its > 0. + (paintBlit): Check width and height of blitted area + and only do blit if its > 0. + +2006-10-18 Roman Kennke <kennke@aicas.com> + PR 27091 * gnu/java/awt/peer/gtk/GtkFramePeer.java (maximize): New native method. diff --git a/gnu/java/awt/peer/gtk/CairoGraphics2D.java b/gnu/java/awt/peer/gtk/CairoGraphics2D.java index d362b834e..059b5139c 100644 --- a/gnu/java/awt/peer/gtk/CairoGraphics2D.java +++ b/gnu/java/awt/peer/gtk/CairoGraphics2D.java @@ -1222,7 +1222,7 @@ public abstract class CairoGraphics2D extends Graphics2D Rectangle2D r = getRealBounds(); - if( width < 0 || height < 0 ) + if( width <= 0 || height <= 0 ) return; // Return if outside the surface if( x + dx > r.getWidth() || y + dy > r.getHeight() ) diff --git a/javax/swing/JViewport.java b/javax/swing/JViewport.java index f4dbb9e18..d90da1d15 100644 --- a/javax/swing/JViewport.java +++ b/javax/swing/JViewport.java @@ -837,10 +837,13 @@ public class JViewport extends JComponent implements Accessible if (canBlit) { // Copy the part that remains visible during scrolling. - g2.copyArea(cachedBlitFrom.x, cachedBlitFrom.y, - cachedBlitSize.width, cachedBlitSize.height, - cachedBlitTo.x - cachedBlitFrom.x, - cachedBlitTo.y - cachedBlitFrom.y); + if (cachedBlitSize.width > 0 && cachedBlitSize.height > 0) + { + g2.copyArea(cachedBlitFrom.x, cachedBlitFrom.y, + cachedBlitSize.width, cachedBlitSize.height, + cachedBlitTo.x - cachedBlitFrom.x, + cachedBlitTo.y - cachedBlitFrom.y); + } // Now paint the part that becomes newly visible. g2.setClip(cachedBlitPaint.x, cachedBlitPaint.y, cachedBlitPaint.width, cachedBlitPaint.height); @@ -888,10 +891,13 @@ public class JViewport extends JComponent implements Accessible if (canBlit && isPaintRoot) { // Copy the part that remains visible during scrolling. - g.copyArea(cachedBlitFrom.x, cachedBlitFrom.y, - cachedBlitSize.width, cachedBlitSize.height, - cachedBlitTo.x - cachedBlitFrom.x, - cachedBlitTo.y - cachedBlitFrom.y); + if (cachedBlitSize.width > 0 && cachedBlitSize.width > 0) + { + g.copyArea(cachedBlitFrom.x, cachedBlitFrom.y, + cachedBlitSize.width, cachedBlitSize.height, + cachedBlitTo.x - cachedBlitFrom.x, + cachedBlitTo.y - cachedBlitFrom.y); + } // Now paint the part that becomes newly visible. Shape oldClip = g.getClip(); g.clipRect(cachedBlitPaint.x, cachedBlitPaint.y, |