summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper Huijsmans <jbhuijsmans@home.nl>2004-10-11 18:52:58 +0000
committerJasper Huijsmans <jbhuijsmans@home.nl>2004-10-11 18:52:58 +0000
commit0b08e21035a9da2b675395285d3e13d85632fb40 (patch)
tree3730eacfccae08722547a9d62214fb3f91a51bbc
parent2b095ae66944658ea3910c09592fd2a8bb3a501b (diff)
Fix a few autohide issues (bug #386)
(Old svn revision: 4178)
-rw-r--r--panel/controls_dialog.c4
-rw-r--r--panel/panel.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/panel/controls_dialog.c b/panel/controls_dialog.c
index f30b6e34..4ea52d6c 100644
--- a/panel/controls_dialog.c
+++ b/panel/controls_dialog.c
@@ -139,6 +139,8 @@ controls_dialog (Control * control)
return;
}
+ panel_block_autohide (&panel);
+
xfce_textdomain (GETTEXT_PACKAGE, LOCALEDIR, "UTF-8");
cdialog = gtk_dialog_new ();
@@ -219,6 +221,8 @@ controls_dialog (Control * control)
gtk_widget_destroy (cdialog);
+ panel_unblock_autohide (&panel);
+
write_panel_config ();
}
diff --git a/panel/panel.c b/panel/panel.c
index cbcf18b8..f818ddd5 100644
--- a/panel/panel.c
+++ b/panel/panel.c
@@ -1666,6 +1666,8 @@ panel_write_xml (xmlNodePtr root)
static void
menu_destroyed (GtkWidget * menu, Panel * p)
{
+ panel_unblock_autohide (p);
+
if (p->priv->settings.autohide
&& gdk_window_at_pointer (NULL, NULL) != p->toplevel->window)
{
@@ -1685,7 +1687,8 @@ void
panel_register_open_menu (GtkWidget * menu)
{
g_return_if_fail (GTK_IS_WIDGET (menu));
-
+
+ panel_block_autohide (&panel);
g_signal_connect (menu, "deactivate", G_CALLBACK (menu_destroyed),
&panel);
}