From 5788fe09fa3a433ac617690c5ed27abf591f608d Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Tue, 1 Mar 2011 12:09:57 -0500 Subject: releasing version 0.3.99-0ubuntu3 --- debian/changelog | 17 ++++++++ debian/control | 1 + debian/patches/disconnect-more-signals.patch | 18 ++++++++ debian/patches/fix-defaults-in-client.patch | 65 ++++++++++++++++++++++++++++ debian/patches/series | 2 + debian/rules | 1 + 6 files changed, 104 insertions(+) create mode 100644 debian/patches/disconnect-more-signals.patch create mode 100644 debian/patches/fix-defaults-in-client.patch create mode 100644 debian/patches/series (limited to 'debian') diff --git a/debian/changelog b/debian/changelog index 132e39d..74b174e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,20 @@ +libdbusmenu (0.3.99-0ubuntu3) natty; urgency=low + + * Fix LP: #723873 - ensure that changing a menuitem property to a default + value gets propagated properly in the client + - add debian/patches/fix-defaults-in-client.patch + - update debian/patches/series + + -- Chris Coulson Tue, 01 Mar 2011 00:47:24 +0000 + +libdbusmenu (0.3.99-0ubuntu2) natty; urgency=low + + * debian/patches/disconnect-more-signals.patch: + - Fix some crashes by disconnecting more signals when a menuitem is + deleted. LP: #725980 and LP: #726153 + + -- Michael Terry Mon, 28 Feb 2011 10:09:57 -0500 + libdbusmenu (0.3.99-0ubuntu1) natty; urgency=low [ Ted Gould ] diff --git a/debian/control b/debian/control index 0703fed..6d879d8 100644 --- a/debian/control +++ b/debian/control @@ -6,6 +6,7 @@ XSBC-Original-Maintainer: The Ayatana Packagers Build-Depends: debhelper (>= 5.0), cdbs (>= 0.4.41), + quilt, libgtk2.0-dev (>= 2.23.2-0ubuntu2), libgtk-3-dev (>= 2.99.2-1ubuntu2), libgdk-pixbuf2.0-dev (>= 2.22.1-0ubuntu4), diff --git a/debian/patches/disconnect-more-signals.patch b/debian/patches/disconnect-more-signals.patch new file mode 100644 index 0000000..653d32c --- /dev/null +++ b/debian/patches/disconnect-more-signals.patch @@ -0,0 +1,18 @@ +=== modified file 'libdbusmenu-gtk/parser.c' +Index: libdbusmenu-0.3.99/libdbusmenu-gtk/parser.c +=================================================================== +--- libdbusmenu-0.3.99.orig/libdbusmenu-gtk/parser.c 2011-02-28 10:09:40.907065942 -0500 ++++ libdbusmenu-0.3.99/libdbusmenu-gtk/parser.c 2011-02-28 10:09:43.037065942 -0500 +@@ -129,6 +129,12 @@ + if (pdata != NULL && pdata->widget != NULL) { + g_signal_handlers_disconnect_matched(pdata->widget, (GSignalMatchType)G_SIGNAL_MATCH_FUNC, + 0, 0, NULL, G_CALLBACK(widget_notify_cb), NULL); ++ g_signal_handlers_disconnect_matched(pdata->widget, (GSignalMatchType)G_SIGNAL_MATCH_FUNC, ++ 0, 0, NULL, G_CALLBACK(accel_changed), NULL); ++ g_signal_handlers_disconnect_matched(pdata->widget, (GSignalMatchType)G_SIGNAL_MATCH_FUNC, ++ 0, 0, NULL, G_CALLBACK(checkbox_toggled), NULL); ++ g_signal_handlers_disconnect_matched(pdata->widget, (GSignalMatchType)G_SIGNAL_MATCH_FUNC, ++ 0, 0, NULL, G_CALLBACK(menuitem_notify_cb), NULL); + g_object_remove_weak_pointer(G_OBJECT(pdata->widget), (gpointer*)&pdata->widget); + } + diff --git a/debian/patches/fix-defaults-in-client.patch b/debian/patches/fix-defaults-in-client.patch new file mode 100644 index 0000000..a299b32 --- /dev/null +++ b/debian/patches/fix-defaults-in-client.patch @@ -0,0 +1,65 @@ +=== modified file 'libdbusmenu-glib/menuitem.c' +Index: libdbusmenu-0.3.99/libdbusmenu-glib/menuitem.c +=================================================================== +--- libdbusmenu-0.3.99.orig/libdbusmenu-glib/menuitem.c 2011-02-25 03:30:16 +0000 ++++ libdbusmenu-0.3.99/libdbusmenu-glib/menuitem.c 2011-02-28 22:51:34 +0000 +@@ -1150,9 +1150,9 @@ + DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(mi); + GVariant * default_value = NULL; + ++ const gchar * type = menuitem_get_type(mi); ++ + if (value != NULL) { +- const gchar * type = menuitem_get_type(mi); +- + /* Check the expected type to see if we want to have a warning */ + GVariantType * default_type = dbusmenu_defaults_default_get_type(priv->defaults, type, property); + if (default_type != NULL) { +@@ -1163,22 +1163,23 @@ + g_warning("Setting menuitem property '%s' with value of type '%s' when expecting '%s'", property, g_variant_get_type_string(value), g_variant_type_peek_string(default_type)); + } + } ++ } + +- /* Check the defaults database to see if we have a default +- for this property. */ +- default_value = dbusmenu_defaults_default_get(priv->defaults, type, property); +- if (default_value != NULL) { +- /* Now see if we're setting this to the same value as the +- default. If we are then we just want to swallow this variant +- and make the function behave like we're clearing it. */ +- if (g_variant_equal(default_value, value)) { +- g_variant_ref_sink(value); +- g_variant_unref(value); +- value = NULL; +- } ++ /* Check the defaults database to see if we have a default ++ for this property. */ ++ default_value = dbusmenu_defaults_default_get(priv->defaults, type, property); ++ if (default_value != NULL && value != NULL) { ++ /* Now see if we're setting this to the same value as the ++ default. If we are then we just want to swallow this variant ++ and make the function behave like we're clearing it. */ ++ if (g_variant_equal(default_value, value)) { ++ g_variant_ref_sink(value); ++ g_variant_unref(value); ++ value = NULL; + } + } + ++ + gboolean replaced = FALSE; + gpointer currentval = g_hash_table_lookup(priv->properties, property); + +@@ -1371,9 +1372,7 @@ + g_return_if_fail(DBUSMENU_IS_MENUITEM(mi)); + g_return_if_fail(property != NULL); + +- DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(mi); +- +- g_hash_table_remove(priv->properties, property); ++ dbusmenu_menuitem_property_set_variant(mi, property, NULL); + + return; + } + diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..ab2b338 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,2 @@ +disconnect-more-signals.patch +fix-defaults-in-client.patch diff --git a/debian/rules b/debian/rules index cd1d01f..10140ea 100755 --- a/debian/rules +++ b/debian/rules @@ -3,6 +3,7 @@ include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/class/gnome.mk include /usr/share/cdbs/1/rules/autoreconf.mk +include /usr/share/cdbs/1/rules/patchsys-quilt.mk DEB_SRCDIR = . DEB_BUILDDIR = $(DEB_SRCDIR)/build -- cgit v1.2.3 From 333935cdc35607f5c357226db2060100cba332c6 Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Tue, 1 Mar 2011 12:13:01 -0500 Subject: releasing version 0.3.99-0ubuntu4 --- debian/changelog | 10 ++++++++ debian/patches/bluetooth-applet-fix.patch | 20 +++++++++++++++ debian/patches/fix-defaults-in-client.patch | 38 +++++++++++++++++++---------- debian/patches/series | 1 + 4 files changed, 56 insertions(+), 13 deletions(-) create mode 100644 debian/patches/bluetooth-applet-fix.patch (limited to 'debian') diff --git a/debian/changelog b/debian/changelog index 74b174e..9029486 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +libdbusmenu (0.3.99-0ubuntu4) natty; urgency=low + + * Fix a warning in gedit + - update debian/patches/fix-defaults-in-client.patch + * Fix missing submenus in bluetooth-applet + - add debian/patches/bluetooth-applet-fix.patch + - update debian/patches/series + + -- Chris Coulson Tue, 01 Mar 2011 15:13:00 +0000 + libdbusmenu (0.3.99-0ubuntu3) natty; urgency=low * Fix LP: #723873 - ensure that changing a menuitem property to a default diff --git a/debian/patches/bluetooth-applet-fix.patch b/debian/patches/bluetooth-applet-fix.patch new file mode 100644 index 0000000..34e0e48 --- /dev/null +++ b/debian/patches/bluetooth-applet-fix.patch @@ -0,0 +1,20 @@ +--- a/libdbusmenu-gtk/parser.c ++++ b/libdbusmenu-gtk/parser.c +@@ -456,6 +456,17 @@ construct_dbusmenu_for_widget (GtkWidget + } + } + ++ GtkWidget *submenu = gtk_menu_item_get_submenu(GTK_MENU_ITEM(widget)); ++ if (submenu) ++ { ++ pdata->shell = submenu; ++ g_signal_connect (G_OBJECT (submenu), ++ "child-added", ++ G_CALLBACK (child_added_cb), ++ mi); ++ g_object_add_weak_pointer(G_OBJECT(submenu), (gpointer*)&pdata->shell); ++ } ++ + if (!g_object_get_data (G_OBJECT (widget), "gtk-empty-menu-item") && !GTK_IS_TEAROFF_MENU_ITEM (widget)) + { + visible = gtk_widget_get_visible (widget); diff --git a/debian/patches/fix-defaults-in-client.patch b/debian/patches/fix-defaults-in-client.patch index a299b32..8e422db 100644 --- a/debian/patches/fix-defaults-in-client.patch +++ b/debian/patches/fix-defaults-in-client.patch @@ -1,21 +1,18 @@ -=== modified file 'libdbusmenu-glib/menuitem.c' -Index: libdbusmenu-0.3.99/libdbusmenu-glib/menuitem.c -=================================================================== ---- libdbusmenu-0.3.99.orig/libdbusmenu-glib/menuitem.c 2011-02-25 03:30:16 +0000 -+++ libdbusmenu-0.3.99/libdbusmenu-glib/menuitem.c 2011-02-28 22:51:34 +0000 -@@ -1150,9 +1150,9 @@ +--- a/libdbusmenu-glib/menuitem.c ++++ b/libdbusmenu-glib/menuitem.c +@@ -1150,9 +1150,9 @@ dbusmenu_menuitem_property_set_variant ( DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(mi); GVariant * default_value = NULL; -+ const gchar * type = menuitem_get_type(mi); -+ - if (value != NULL) { +- if (value != NULL) { - const gchar * type = menuitem_get_type(mi); -- ++ const gchar * type = menuitem_get_type(mi); + ++ if (value != NULL) { /* Check the expected type to see if we want to have a warning */ GVariantType * default_type = dbusmenu_defaults_default_get_type(priv->defaults, type, property); if (default_type != NULL) { -@@ -1163,22 +1163,23 @@ +@@ -1163,22 +1163,23 @@ dbusmenu_menuitem_property_set_variant ( g_warning("Setting menuitem property '%s' with value of type '%s' when expecting '%s'", property, g_variant_get_type_string(value), g_variant_type_peek_string(default_type)); } } @@ -51,7 +48,7 @@ Index: libdbusmenu-0.3.99/libdbusmenu-glib/menuitem.c gboolean replaced = FALSE; gpointer currentval = g_hash_table_lookup(priv->properties, property); -@@ -1371,9 +1372,7 @@ +@@ -1371,9 +1372,7 @@ dbusmenu_menuitem_property_remove (Dbusm g_return_if_fail(DBUSMENU_IS_MENUITEM(mi)); g_return_if_fail(property != NULL); @@ -62,4 +59,19 @@ Index: libdbusmenu-0.3.99/libdbusmenu-glib/menuitem.c return; } - +@@ -1753,13 +1752,8 @@ dbusmenu_menuitem_property_is_default (D + return FALSE; + } + +- currentval = dbusmenu_defaults_default_get(priv->defaults, menuitem_get_type(mi), property); +- if (currentval != NULL) { +- return TRUE; +- } +- +- g_warn_if_reached(); +- return FALSE; ++ /* If we haven't stored it locally, then it's the default */ ++ return TRUE; + } + + /* Check to see if this menu item has been sent into the bus yet or diff --git a/debian/patches/series b/debian/patches/series index ab2b338..6be76c6 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ disconnect-more-signals.patch fix-defaults-in-client.patch +bluetooth-applet-fix.patch -- cgit v1.2.3 From 86cabf670968df8056246d2f6c3b2c4f6b19399a Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Tue, 1 Mar 2011 12:26:20 -0500 Subject: releasing version 0.3.99-0ubuntu5 --- debian/changelog | 7 +++++++ debian/patches/lp726678.patch | 17 +++++++++++++++++ debian/patches/series | 1 + 3 files changed, 25 insertions(+) create mode 100644 debian/patches/lp726678.patch (limited to 'debian') diff --git a/debian/changelog b/debian/changelog index 9029486..3216091 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +libdbusmenu (0.3.99-0ubuntu5) natty; urgency=low + + * debian/patches/lp726678.patch + - GTK application menus are not correctly displayed (LP: #726678) + + -- Ken VanDine Tue, 01 Mar 2011 12:14:35 -0500 + libdbusmenu (0.3.99-0ubuntu4) natty; urgency=low * Fix a warning in gedit diff --git a/debian/patches/lp726678.patch b/debian/patches/lp726678.patch new file mode 100644 index 0000000..e784b60 --- /dev/null +++ b/debian/patches/lp726678.patch @@ -0,0 +1,17 @@ +=== modified file 'libdbusmenu-glib/server.c' +--- a/libdbusmenu-glib/server.c 2011-02-24 19:52:01 +0000 ++++ b/libdbusmenu-glib/server.c 2011-03-01 16:51:50 +0000 +@@ -1180,7 +1180,11 @@ + GVariant * items = NULL; + + if (priv->root != NULL) { +- items = dbusmenu_menuitem_build_variant(priv->root, props, recurse); ++ DbusmenuMenuitem * mi = dbusmenu_menuitem_find_id(priv->root, parent); ++ ++ if (mi != NULL) { ++ items = dbusmenu_menuitem_build_variant(mi, props, recurse); ++ } + } + + /* What happens if we don't have anything? */ + diff --git a/debian/patches/series b/debian/patches/series index 6be76c6..3467a18 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,4 @@ disconnect-more-signals.patch fix-defaults-in-client.patch bluetooth-applet-fix.patch +lp726678.patch -- cgit v1.2.3