summaryrefslogtreecommitdiffstats
path: root/libjava/gnu/java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/gnu/java')
-rw-r--r--libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java12
-rw-r--r--libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java3
2 files changed, 13 insertions, 2 deletions
diff --git a/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java
index 6f71db9f17a..ee067cedd51 100644
--- a/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java
+++ b/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java
@@ -1,5 +1,5 @@
/* GtkComponentPeer.java -- Implements ComponentPeer with GTK
- Copyright (C) 1998, 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2002, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -124,6 +124,16 @@ public class GtkComponentPeer extends GtkGenericPeer
setFont(awtComponent.getFont());
setCursor (awtComponent.getCursor ());
+ if (this instanceof GtkFileDialogPeer && awtComponent.getHeight() == 0
+ && awtComponent.getWidth() == 0)
+ {
+ int[] dims = new int[2];
+ gtkWidgetGetDimensions(dims);
+ ((GtkFileDialogPeer) this).setBoundsCallback((Window)awtComponent,
+ awtComponent.getX(),
+ awtComponent.getY(),
+ dims[0], dims[1]);
+ }
Rectangle bounds = awtComponent.getBounds ();
setBounds (bounds.x, bounds.y, bounds.width, bounds.height);
diff --git a/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java
index dc2c8b0be9c..95f0dde50b7 100644
--- a/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java
+++ b/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java
@@ -1,5 +1,5 @@
/* GtkFileDialogPeer.java -- Implements FileDialogPeer with GTK
- Copyright (C) 1998, 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2002, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -63,6 +63,7 @@ public class GtkFileDialogPeer extends GtkDialogPeer implements FileDialogPeer
native void connectJObject ();
native void connectSignals ();
native void nativeSetFile (String file);
+ native void gtkWidgetGetDimensions (int[] dims);
public void setFile (String fileName)
{
OpenPOWER on IntegriCloud