diff options
author | Ted Gould <ted@gould.cx> | 2010-09-19 13:26:01 -0500 |
---|---|---|
committer | Ted Gould <ted@gould.cx> | 2010-09-19 13:26:01 -0500 |
commit | 982c91ca6c39b7a36a36bb78302e7c95fb50f374 (patch) | |
tree | 64739afa4790ed448e40d8cb4b30561514e015d6 /tools | |
parent | bc8ba95828914624a74299957a58b36bbf769e5a (diff) | |
parent | 03641dce0d1c38ef5fb2447b33f88e9d66c6aecf (diff) | |
download | libayatana-indicator-982c91ca6c39b7a36a36bb78302e7c95fb50f374.tar.gz libayatana-indicator-982c91ca6c39b7a36a36bb78302e7c95fb50f374.tar.bz2 libayatana-indicator-982c91ca6c39b7a36a36bb78302e7c95fb50f374.zip |
Adding in the about-to-show signal
Diffstat (limited to 'tools')
-rw-r--r-- | tools/indicator-loader.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/indicator-loader.c b/tools/indicator-loader.c index 747b216..03614aa 100644 --- a/tools/indicator-loader.c +++ b/tools/indicator-loader.c @@ -28,6 +28,17 @@ License along with this library. If not, see #define ENTRY_DATA_NAME "indicator-custom-entry-data" static void +activate_entry (GtkWidget * widget, gpointer user_data) +{ + g_return_if_fail(INDICATOR_IS_OBJECT(user_data)); + gpointer entry = g_object_get_data(G_OBJECT(widget), ENTRY_DATA_NAME); + g_return_if_fail(entry == NULL); + + indicator_object_entry_activate(INDICATOR_OBJECT(user_data), (IndicatorObjectEntry *)entry, gtk_get_current_event_time()); + return; +} + +static void entry_added (IndicatorObject * io, IndicatorObjectEntry * entry, gpointer user_data) { g_debug("Signal: Entry Added"); @@ -48,6 +59,8 @@ entry_added (IndicatorObject * io, IndicatorObjectEntry * entry, gpointer user_d gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), GTK_WIDGET(entry->menu)); } + g_signal_connect(G_OBJECT(menuitem), "activate", G_CALLBACK(activate_entry), io); + gtk_menu_shell_append(GTK_MENU_SHELL(user_data), menuitem); gtk_widget_show(menuitem); |