aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/awt/Container.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/awt/Container.java')
-rw-r--r--libjava/java/awt/Container.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/libjava/java/awt/Container.java b/libjava/java/awt/Container.java
index ad43ce4..763cfbb 100644
--- a/libjava/java/awt/Container.java
+++ b/libjava/java/awt/Container.java
@@ -677,7 +677,11 @@ public class Container extends Component
*/
public void update(Graphics g)
{
- g.clearRect(0, 0, width, height);
+ Rectangle clip = g.getClipBounds();
+ if (clip == null)
+ g.clearRect(0, 0, width, height);
+ else
+ g.clearRect(clip.x, clip.y, clip.width, clip.height);
super.update(g);
}
@@ -1196,7 +1200,7 @@ public class Container extends Component
{
synchronized (getTreeLock ())
{
- for (int i = 0; i < ncomponents; ++i)
+ for (int i = ncomponents - 1; i >= 0; --i)
{
Component comp = component[i];
boolean applicable = comp.isVisible()