aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/awt/Window.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/awt/Window.java')
-rw-r--r--libjava/java/awt/Window.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/libjava/java/awt/Window.java b/libjava/java/awt/Window.java
index 7064511b2b6..b8befaf0507 100644
--- a/libjava/java/awt/Window.java
+++ b/libjava/java/awt/Window.java
@@ -158,14 +158,13 @@ public class Window extends Container
*/
public void pack()
{
- if (parent != null
- && !parent.isDisplayable())
+ if (parent != null && !parent.isDisplayable())
parent.addNotify();
if (peer == null)
addNotify();
setSize(getPreferredSize());
-
+
validate();
}
@@ -174,9 +173,12 @@ public class Window extends Container
*/
public void show()
{
+ if (parent != null && !parent.isDisplayable())
+ parent.addNotify();
if (peer == null)
addNotify();
+ validate();
super.show();
toFront();
}
@@ -187,6 +189,13 @@ public class Window extends Container
super.hide();
}
+ public boolean isDisplayable()
+ {
+ if (super.isDisplayable())
+ return true;
+ return peer != null;
+ }
+
/**
* Called to free any resource associated with this window.
*/
@@ -479,5 +488,4 @@ public class Window extends Container
if (peer != null) return peer.getGraphicsConfiguration();
return null;
}
-
}