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.java20
1 files changed, 14 insertions, 6 deletions
diff --git a/libjava/java/awt/Container.java b/libjava/java/awt/Container.java
index 9ef6add..9bad369 100644
--- a/libjava/java/awt/Container.java
+++ b/libjava/java/awt/Container.java
@@ -297,9 +297,13 @@ public class Container extends Component
if (peer != null)
{
comp.addNotify();
-
- if (comp.isLightweight())
- enableEvents(comp.eventMask);
+
+ if (comp.isLightweight ())
+ {
+ enableEvents (comp.eventMask);
+ if (!isLightweight ())
+ enableEvents (AWTEvent.PAINT_EVENT_MASK);
+ }
}
invalidate();
@@ -907,8 +911,8 @@ public class Container extends Component
*/
public void addNotify()
{
- addNotifyContainerChildren();
super.addNotify();
+ addNotifyContainerChildren();
}
/**
@@ -1288,8 +1292,12 @@ public class Container extends Component
for (int i = ncomponents; --i >= 0; )
{
component[i].addNotify();
- if (component[i].isLightweight())
- enableEvents(component[i].eventMask);
+ if (component[i].isLightweight ())
+ {
+ enableEvents(component[i].eventMask);
+ if (peer != null && !isLightweight ())
+ enableEvents (AWTEvent.PAINT_EVENT_MASK);
+ }
}
}
}