[gnome-main-menu] main-menu: Fix auto-hiding after right click
- From: Stefano Karapetsas <stefanok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-main-menu] main-menu: Fix auto-hiding after right click
- Date: Fri, 26 Apr 2013 18:25:33 +0000 (UTC)
commit 372a945846ec8e151b26966624d1a514d06b4480
Author: Stefano Karapetsas <stefano karapetsas com>
Date: Fri Apr 26 19:45:23 2013 +0200
main-menu: Fix auto-hiding after right click
https://bugzilla.novell.com/show_bug.cgi?id=534964
main-menu/src/main-menu-ui.c | 15 +++++++++++++--
1 files changed, 13 insertions(+), 2 deletions(-)
---
diff --git a/main-menu/src/main-menu-ui.c b/main-menu/src/main-menu-ui.c
index 09a2646..e42d1be 100644
--- a/main-menu/src/main-menu-ui.c
+++ b/main-menu/src/main-menu-ui.c
@@ -2193,6 +2193,12 @@ slab_window_unmap_event_cb (GtkWidget *widget, GdkEvent *event, gpointer user_da
gtk_grab_remove (widget);
}
+static void
+grabbing_window_unmap_cb (GtkWidget *widget, gpointer user_data)
+{
+ grab_pointer_and_keyboard (MAIN_MENU_UI (user_data), 0);
+}
+
static gboolean
slab_window_grab_broken_cb (GtkWidget *widget, GdkEvent *event, gpointer user_data)
{
@@ -2203,10 +2209,15 @@ slab_window_grab_broken_cb (GtkWidget *widget, GdkEvent *event, gpointer user_da
if (grab_event->grab_window) {
gdk_window_get_user_data (grab_event->grab_window, & window_data);
- if (GTK_IS_WIDGET (window_data))
+ if (GTK_IS_WIDGET (window_data)) {
g_signal_connect (
G_OBJECT (window_data), "event",
G_CALLBACK (grabbing_window_event_cb), user_data);
+ g_signal_connect (
+ (gpointer) (window_data), "unmap",
+ G_CALLBACK (grabbing_window_unmap_cb),
+ user_data);
+ }
}
return FALSE;
@@ -2484,7 +2495,7 @@ search_tomboy_bindkey_cb (gchar *key_string, gpointer user_data)
static gboolean
grabbing_window_event_cb (GtkWidget *widget, GdkEvent *event, gpointer user_data)
{
- if (event->type == GDK_UNMAP || event->type == GDK_SELECTION_CLEAR)
+ if (event->type == GDK_SELECTION_CLEAR)
grab_pointer_and_keyboard (MAIN_MENU_UI (user_data), gdk_event_get_time (event));
return FALSE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]