From f0d43c65fe9c6b258a92ae9dfd612eae0060754b Mon Sep 17 00:00:00 2001 From: Javier Date: Sat, 14 Feb 2015 23:24:01 +0100 Subject: try a new method to proxy "select"/"deselect" signals --- module/menuitem-proxy.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'module/menuitem-proxy.c') diff --git a/module/menuitem-proxy.c b/module/menuitem-proxy.c index 55319b3..6c413b8 100644 --- a/module/menuitem-proxy.c +++ b/module/menuitem-proxy.c @@ -499,6 +499,8 @@ static void handle_proxy_select(GtkMenuItem *proxy, GtkMenuItem *item) GtkWidget *submenu = gtk_menu_item_get_submenu(item); GtkWidget *parent = gtk_widget_get_parent(GTK_WIDGET(proxy)); + g_signal_emit_by_name(item, "select", NULL); + if (submenu && parent) { if (!gtk_widget_is_sensitive(GTK_WIDGET(submenu))) return; @@ -535,6 +537,8 @@ static void handle_proxy_deselect(GtkMenuItem *proxy, GtkMenuItem *item) { GtkWidget *submenu = gtk_menu_item_get_submenu(item); + g_signal_emit_by_name(item, "deselect", NULL); + if (submenu) { g_signal_handlers_disconnect_by_func(submenu, handle_menu_leave_notify, item); g_signal_handlers_disconnect_by_func(gtk_widget_get_parent(GTK_WIDGET(proxy)), -- cgit v1.2.3