Merge lp:~mterry/libdbusmenu/opened-closed into lp:libdbusmenu/0.5

Proposed by Michael Terry
Status: Merged
Merged at revision: 274
Proposed branch: lp:~mterry/libdbusmenu/opened-closed
Merge into: lp:libdbusmenu/0.5
Diff against target: 33 lines (+11/-1)
1 file modified
libdbusmenu-gtk/client.c (+11/-1)
To merge this branch: bzr merge lp:~mterry/libdbusmenu/opened-closed
Reviewer Review Type Date Requested Status
DBus Menu Team Pending
Review via email: mp+53616@code.launchpad.net

Description of the change

This adds 'opened' and 'closed' events.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'libdbusmenu-gtk/client.c'
--- libdbusmenu-gtk/client.c 2011-03-10 16:27:52 +0000
+++ libdbusmenu-gtk/client.c 2011-03-16 12:41:58 +0000
@@ -467,6 +467,15 @@
467 return TRUE;467 return TRUE;
468}468}
469469
470static void
471submenu_notify_visible_cb (GtkWidget * menu, GParamSpec * pspec, DbusmenuMenuitem * mi)
472{
473 if (gtk_widget_get_visible (menu))
474 dbusmenu_menuitem_handle_event(mi, "opened", NULL, gtk_get_current_event_time());
475 else
476 dbusmenu_menuitem_handle_event(mi, "closed", NULL, gtk_get_current_event_time());
477}
478
470/* Process the visible property */479/* Process the visible property */
471static void480static void
472process_visible (DbusmenuMenuitem * mi, GtkMenuItem * gmi, GVariant * value)481process_visible (DbusmenuMenuitem * mi, GtkMenuItem * gmi, GVariant * value)
@@ -740,11 +749,12 @@
740749
741 GtkMenuItem * parent = dbusmenu_gtkclient_menuitem_get(gtkclient, mi);750 GtkMenuItem * parent = dbusmenu_gtkclient_menuitem_get(gtkclient, mi);
742 gtk_menu_item_set_submenu(parent, GTK_WIDGET(menu));751 gtk_menu_item_set_submenu(parent, GTK_WIDGET(menu));
752
753 g_signal_connect(menu, "notify::visible", G_CALLBACK(submenu_notify_visible_cb), mi);
743 } 754 }
744755
745 GtkMenuItem * childmi = dbusmenu_gtkclient_menuitem_get(gtkclient, child);756 GtkMenuItem * childmi = dbusmenu_gtkclient_menuitem_get(gtkclient, child);
746 gtk_menu_shell_insert(GTK_MENU_SHELL(menu), GTK_WIDGET(childmi), position);757 gtk_menu_shell_insert(GTK_MENU_SHELL(menu), GTK_WIDGET(childmi), position);
747 gtk_widget_show(GTK_WIDGET(menu));
748 758
749 return;759 return;
750}760}

Subscribers

People subscribed via source and target branches