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/GtkFramePeer.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java b/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java
index 83516d1b640..c542b63ad31 100644
--- a/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java
+++ b/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java
@@ -60,6 +60,7 @@ public class GtkFramePeer extends GtkWindowPeer
native void setMenuBarPeer (MenuBarPeer bar);
native void removeMenuBarPeer ();
native void moveLayout (int offset);
+ native void gtkLayoutSetVisible (boolean vis);
public void setMenuBar (MenuBar bar)
{
@@ -67,16 +68,19 @@ public class GtkFramePeer extends GtkWindowPeer
{
if (menuBar != null)
{
+ gtkLayoutSetVisible(false);
removeMenuBarPeer();
menuBar = null;
moveLayout(menuBarHeight);
insets.top -= menuBarHeight;
menuBarHeight = 0;
awtComponent.doLayout();
+ gtkLayoutSetVisible(true);
}
}
else
{
+ gtkLayoutSetVisible(false);
int oldHeight = 0;
if (menuBar != null)
{
@@ -91,6 +95,7 @@ public class GtkFramePeer extends GtkWindowPeer
moveLayout(oldHeight - menuBarHeight);
insets.top += menuBarHeight;
awtComponent.doLayout();
+ gtkLayoutSetVisible(true);
}
}
OpenPOWER on IntegriCloud