diff options
-rw-r--r-- | configure.ac | 7 | ||||
-rw-r--r-- | debian/changelog | 2 | ||||
-rw-r--r-- | debian/libmessaging-menu0.symbols | 28 | ||||
-rw-r--r-- | libmessaging-menu/Makefile.am | 2 | ||||
-rw-r--r-- | libmessaging-menu/messaging-menu.c | 41 | ||||
-rw-r--r-- | src/app-section.c | 9 |
6 files changed, 38 insertions, 51 deletions
diff --git a/configure.ac b/configure.ac index f9f00e9..d9270dd 100644 --- a/configure.ac +++ b/configure.ac @@ -38,11 +38,10 @@ AC_PROG_CXX # Dependencies ########################### -GTK_REQUIRED_VERSION=3.0 -GIO_UNIX_REQUIRED_VERSION=2.18 -PANEL_REQUIRED_VERSION=2.0.0 +GTK_REQUIRED_VERSION=3.5.12 +GIO_UNIX_REQUIRED_VERSION=2.33.10 INDICATOR_REQUIRED_VERSION=0.3.19 -GLIB_REQUIRED_VERSION=2.31.20 +GLIB_REQUIRED_VERSION=2.33.10 INTROSPECTION_REQUIRED_VERSION=1.32.0 PKG_CHECK_MODULES(APPLET, gtk+-3.0 >= $GTK_REQUIRED_VERSION diff --git a/debian/changelog b/debian/changelog index 6be7b09..9c45768 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,6 +12,8 @@ indicator-messages (12.10.0-0ubuntu1) UNRELEASED; urgency=low * Updated packaging to dh9, current standards * Drop gtk2 build from the packaging since support for it was dropped in trunk, thanks Lars Uebernickel + * Backported fixes from trunk up to r284, some of those are needed for the + bindings to work -- Sebastien Bacher <seb128@ubuntu.com> Tue, 21 Aug 2012 18:17:34 +0200 diff --git a/debian/libmessaging-menu0.symbols b/debian/libmessaging-menu0.symbols index 0b910ea..f2e6328 100644 --- a/debian/libmessaging-menu0.symbols +++ b/debian/libmessaging-menu0.symbols @@ -1,32 +1,4 @@ libmessaging-menu.so.0 libmessaging-menu0 #MINVER# - g_tuple_action_get_type@Base 12.10.0 - g_tuple_action_new@Base 12.10.0 - g_tuple_action_set_child@Base 12.10.0 - indicator_messages_service_call_register_application@Base 12.10.0 - indicator_messages_service_call_register_application_finish@Base 12.10.0 - indicator_messages_service_call_register_application_sync@Base 12.10.0 - indicator_messages_service_call_set_status@Base 12.10.0 - indicator_messages_service_call_set_status_finish@Base 12.10.0 - indicator_messages_service_call_set_status_sync@Base 12.10.0 - indicator_messages_service_call_unregister_application@Base 12.10.0 - indicator_messages_service_call_unregister_application_finish@Base 12.10.0 - indicator_messages_service_call_unregister_application_sync@Base 12.10.0 - indicator_messages_service_complete_register_application@Base 12.10.0 - indicator_messages_service_complete_set_status@Base 12.10.0 - indicator_messages_service_complete_unregister_application@Base 12.10.0 - indicator_messages_service_emit_status_changed@Base 12.10.0 - indicator_messages_service_get_type@Base 12.10.0 - indicator_messages_service_interface_info@Base 12.10.0 - indicator_messages_service_override_properties@Base 12.10.0 - indicator_messages_service_proxy_get_type@Base 12.10.0 - indicator_messages_service_proxy_new@Base 12.10.0 - indicator_messages_service_proxy_new_finish@Base 12.10.0 - indicator_messages_service_proxy_new_for_bus@Base 12.10.0 - indicator_messages_service_proxy_new_for_bus_finish@Base 12.10.0 - indicator_messages_service_proxy_new_for_bus_sync@Base 12.10.0 - indicator_messages_service_proxy_new_sync@Base 12.10.0 - indicator_messages_service_skeleton_get_type@Base 12.10.0 - indicator_messages_service_skeleton_new@Base 12.10.0 messaging_menu_app_append_source@Base 12.10.0 messaging_menu_app_append_source_with_count@Base 12.10.0 messaging_menu_app_append_source_with_string@Base 12.10.0 diff --git a/libmessaging-menu/Makefile.am b/libmessaging-menu/Makefile.am index 187e6dc..d0f941f 100644 --- a/libmessaging-menu/Makefile.am +++ b/libmessaging-menu/Makefile.am @@ -18,7 +18,7 @@ libmessaging_menu_la_CFLAGS = \ $(GIO_CFLAGS) \ -Wall -libmessaging_menu_la_LDFLAGS = -export-symbols-regex="^messaging_menu_.*" +libmessaging_menu_la_LDFLAGS = -export-symbols-regex "^messaging_menu_.*" BUILT_SOURCES = \ indicator-messages-service.c \ diff --git a/libmessaging-menu/messaging-menu.c b/libmessaging-menu/messaging-menu.c index 336e89c..69fb3b7 100644 --- a/libmessaging-menu/messaging-menu.c +++ b/libmessaging-menu/messaging-menu.c @@ -75,6 +75,21 @@ static void global_status_changed (IndicatorMessagesService *service, gpointer user_data); static void +messaging_menu_app_set_desktop_id (MessagingMenuApp *app, + const gchar *desktop_id) +{ + g_return_if_fail (desktop_id != NULL); + + /* no need to clean up, it's construct only */ + app->appinfo = g_desktop_app_info_new (desktop_id); + if (app->appinfo == NULL) + { + g_warning ("could not find the desktop file for '%s'", + desktop_id); + } +} + +static void messaging_menu_app_set_property (GObject *object, guint prop_id, const GValue *value, @@ -85,12 +100,7 @@ messaging_menu_app_set_property (GObject *object, switch (prop_id) { case PROP_DESKTOP_ID: - app->appinfo = g_desktop_app_info_new (g_value_get_string (value)); - if (app->appinfo == NULL) - { - g_warning ("could not find the desktop file for '%s'", - g_value_get_string (value)); - } + messaging_menu_app_set_desktop_id (app, g_value_get_string (value)); break; default: @@ -409,6 +419,8 @@ source_action_activated (GTupleAction *action, const gchar *name = g_action_get_name (G_ACTION (action)); GQuark q = g_quark_from_string (name); + messaging_menu_app_remove_source (app, name); + g_signal_emit (app, signals[ACTIVATE_SOURCE], q, name); } @@ -501,7 +513,7 @@ messaging_menu_app_insert_source (MessagingMenuApp *app, * messaging_menu_app_append_source: * @app: a #MessagingMenuApp * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * * Appends a new message source to the end of the section representing @app. @@ -525,7 +537,7 @@ messaging_menu_app_append_source (MessagingMenuApp *app, * @app: a #MessagingMenuApp * @position: the position at which to insert the source * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * @count: the count for the source * @@ -553,7 +565,7 @@ messaging_menu_app_insert_source_with_count (MessagingMenuApp *app, * messaging_menu_app_append_source_with_count: * @app: a #MessagingMenuApp * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * @count: the count for the source * @@ -579,7 +591,7 @@ void messaging_menu_app_append_source_with_count (MessagingMenuApp *app, * @app: a #MessagingMenuApp * @position: the position at which to insert the source * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * @time: the time when the source was created * @@ -608,7 +620,7 @@ messaging_menu_app_insert_source_with_time (MessagingMenuApp *app, * @app: a #MessagingMenuApp * @position: the position at which to insert the source * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * @time: the time when the source was created * @@ -635,7 +647,7 @@ messaging_menu_app_append_source_with_time (MessagingMenuApp *app, * @app: a #MessagingMenuApp * @position: the position at which to insert the source * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * @str: a string associated with the source * @@ -664,7 +676,7 @@ messaging_menu_app_insert_source_with_string (MessagingMenuApp *app, * @app: a #MessagingMenuApp * @position: the position at which to insert the source * @id: a unique identifier for the source to be added - * @icon: the icon associated with the source + * @icon: (allow-none): the icon associated with the source * @label: a user-visible string best describing the source * @str: a string associated with the source * @@ -704,10 +716,7 @@ messaging_menu_app_remove_source (MessagingMenuApp *app, g_return_if_fail (source_id != NULL); if (g_simple_action_group_lookup (app->source_actions, source_id) == NULL) - { - g_warning ("%s: a source with id '%s' doesn't exist", G_STRFUNC, source_id); return; - } n_items = g_menu_model_get_n_items (G_MENU_MODEL (app->menu)); for (i = 0; i < n_items; i++) diff --git a/src/app-section.c b/src/app-section.c index 70bf21e..1574892 100644 --- a/src/app-section.c +++ b/src/app-section.c @@ -233,6 +233,8 @@ app_section_dispose (GObject *object) g_clear_object (&priv->source_actions); } + g_clear_object (&priv->muxer); + g_clear_object (&priv->source_menu); g_clear_object (&priv->ids); g_clear_object (&priv->appinfo); @@ -350,6 +352,7 @@ app_section_set_app_info (AppSection *self, action = g_simple_action_new (nicks[i], NULL); g_signal_connect(action, "activate", G_CALLBACK (nick_activate_cb), self); g_simple_action_group_insert (priv->static_shortcuts, G_ACTION (action)); + g_object_unref (action); g_menu_append (priv->menu, name, nicks[i]); @@ -384,8 +387,10 @@ activate_cb (GSimpleAction *action, GError *error = NULL; if (!g_app_info_launch (G_APP_INFO (priv->appinfo), NULL, NULL, &error)) { - g_warning("Unable to execute application for desktop file '%s'", - g_desktop_app_info_get_filename (priv->appinfo)); + g_warning("Unable to execute application for desktop file '%s': %s", + g_desktop_app_info_get_filename (priv->appinfo), + error->message); + g_error_free (error); } } |