aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.bzr-builddeb/default.conf2
-rw-r--r--NEWS14
-rwxr-xr-xautogen.sh2
-rw-r--r--configure.ac11
-rw-r--r--debian/changelog1462
-rw-r--r--debian/compat1
-rw-r--r--debian/control243
-rw-r--r--debian/copyright40
-rw-r--r--debian/gir1.2-dbusmenu-glib-0.4.install1
-rw-r--r--debian/gir1.2-dbusmenu-gtk-0.4.install1
-rw-r--r--debian/gir1.2-dbusmenu-gtk3-0.4.install1
-rw-r--r--debian/libdbusmenu-glib-dev.install6
-rw-r--r--debian/libdbusmenu-glib-doc.install1
-rw-r--r--debian/libdbusmenu-glib4.install1
-rw-r--r--debian/libdbusmenu-glib4.symbols81
-rw-r--r--debian/libdbusmenu-gtk-dev.install6
-rw-r--r--debian/libdbusmenu-gtk-doc.install2
-rw-r--r--debian/libdbusmenu-gtk3-4.install1
-rw-r--r--debian/libdbusmenu-gtk3-4.symbols36
-rw-r--r--debian/libdbusmenu-gtk3-dev.install6
-rw-r--r--debian/libdbusmenu-gtk4.install1
-rw-r--r--debian/libdbusmenu-gtk4.symbols36
-rw-r--r--debian/libdbusmenu-jsonloader-dev.install4
-rw-r--r--debian/libdbusmenu-jsonloader4.install1
-rw-r--r--debian/libdbusmenu-jsonloader4.symbols3
-rw-r--r--debian/libdbusmenu-tools.install3
-rwxr-xr-xdebian/rules64
-rw-r--r--debian/source/format1
-rw-r--r--debian/watch2
-rw-r--r--docs/libdbusmenu-glib/reference/Makefile.am22
-rw-r--r--docs/libdbusmenu-glib/reference/libdbusmenu-glib-docs.sgml3
-rw-r--r--docs/libdbusmenu-glib/reference/tmpl/dummy.sgml0
-rw-r--r--docs/libdbusmenu-gtk/reference/Makefile.am20
-rw-r--r--docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-docs.sgml1
-rw-r--r--docs/libdbusmenu-gtk/reference/tmpl/dummy.sgml0
-rw-r--r--gtk-doc.local.make194
-rw-r--r--libdbusmenu-glib/Makefile.am6
-rw-r--r--libdbusmenu-glib/client.c29
-rw-r--r--libdbusmenu-glib/defaults.c2
-rw-r--r--libdbusmenu-glib/enum-types.h.in2
-rw-r--r--libdbusmenu-glib/menuitem.c45
-rw-r--r--libdbusmenu-glib/menuitem.h20
-rw-r--r--libdbusmenu-glib/server.c29
-rw-r--r--libdbusmenu-gtk/Makefile.am8
-rw-r--r--libdbusmenu-gtk/client.c40
-rw-r--r--libdbusmenu-gtk/genericmenuitem-enum-types.h.in2
-rw-r--r--libdbusmenu-gtk/genericmenuitem.c4
-rw-r--r--libdbusmenu-gtk/genericmenuitem.h2
-rw-r--r--libdbusmenu-gtk/menu.c2
-rw-r--r--libdbusmenu-gtk/parser.c163
-rw-r--r--tests/Makefile.am470
-rw-r--r--tests/glib-server-nomenu.c2
-rw-r--r--tests/test-glib-events-client.c2
-rw-r--r--tests/test-glib-events-nogroup-client.c2
-rw-r--r--tests/test-glib-events-server.c2
-rw-r--r--tests/test-glib-layout-client.c2
-rw-r--r--tests/test-glib-layout-server.c2
-rw-r--r--tests/test-glib-objects.c1
-rw-r--r--tests/test-glib-properties-client.c2
-rw-r--r--tests/test-glib-properties-server.c2
-rw-r--r--tests/test-glib-proxy-client.c2
-rw-r--r--tests/test-glib-proxy-proxy.c2
-rw-r--r--tests/test-glib-proxy-server.c2
-rw-r--r--tests/test-glib-simple-items.c4
-rw-r--r--tests/test-glib-submenu-client.c2
-rw-r--r--tests/test-glib-submenu-server.c2
-rw-r--r--tests/test-gtk-label-server.c2
-rw-r--r--tests/test-gtk-remove-server.c118
-rw-r--r--tests/test-gtk-reorder-server.c4
-rw-r--r--tests/test-gtk-shortcut-server.c2
-rw-r--r--tests/test-gtk-submenu-server.c2
-rw-r--r--tests/test-json-client.c2
-rw-r--r--tests/test-json-server.c2
-rw-r--r--tools/dbusmenu-dumper.c3
-rw-r--r--tools/testapp/main.c2
75 files changed, 2574 insertions, 691 deletions
diff --git a/.bzr-builddeb/default.conf b/.bzr-builddeb/default.conf
new file mode 100644
index 0000000..6c96a98
--- /dev/null
+++ b/.bzr-builddeb/default.conf
@@ -0,0 +1,2 @@
+[BUILDDEB]
+split = True
diff --git a/NEWS b/NEWS
index e69de29..6beed00 100644
--- a/NEWS
+++ b/NEWS
@@ -0,0 +1,14 @@
+12.10.2
+ - Fix crashed introduced in 12.10.0's gtk-menu-images code (LP: #1053670)
+
+12.10.1
+ - Revert the vala bindings' naming for the 12.10 cycle; revisit for 13.04
+
+12.10.0
+ - Honor changes to GtkSettings' gtk-menu-images value (LP: #927236)
+ - don't display an underscore on menuitimes containing a '&' (LP: #994564)
+ - set the widget for the accelerator even if there isn't a mnemonic (LP: #982656)
+ - make the vala bindings use pkg-config names, rather than gir ones
+ - Some platforms don't have valgrind, so treat those unit tests separately
+ - make headers match independent of the build directory
+ - constify some public API calls
diff --git a/autogen.sh b/autogen.sh
index 61260e2..cce1ab4 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -7,6 +7,8 @@ which gnome-autogen.sh || {
exit 1
}
+gtkdocize || exit 1
+
USE_GNOME2_MACROS=1 \
USE_COMMON_DOC_BUILD=yes \
gnome-autogen.sh --enable-gtk-doc $@
diff --git a/configure.ac b/configure.ac
index 94bba0c..66afc14 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,11 +1,11 @@
-AC_INIT(libdbusmenu, 0.6.1, ted@canonical.com)
+AC_INIT(libdbusmenu, 12.10.2, ted@canonical.com)
AC_COPYRIGHT([Copyright 2009,2010 Canonical])
AC_PREREQ(2.62)
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(libdbusmenu, 0.6.1, [-Wno-portability])
+AM_INIT_AUTOMAKE(libdbusmenu, 12.10.2, [-Wno-portability])
AM_MAINTAINER_MODE
@@ -27,14 +27,14 @@ AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums])
# GTK Doc
###########################
-GTK_DOC_CHECK([1.4])
+GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
GNOME_DOC_INIT
###########################
# Dependencies - GLib
###########################
-GLIB_REQUIRED_VERSION=2.26
+GLIB_REQUIRED_VERSION=2.35.4
PKG_CHECK_MODULES(DBUSMENUGLIB, glib-2.0 >= $GLIB_REQUIRED_VERSION
gio-2.0 >= $GLIB_REQUIRED_VERSION)
@@ -121,7 +121,8 @@ PKG_CHECK_MODULES(DBUSMENUTESTS, json-glib-1.0 >= $JSON_GLIB_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION,
[have_tests=yes]
)
-PKG_CHECK_MODULES(DBUSMENUTESTSVALGRIND, valgrind)
+PKG_CHECK_MODULES(DBUSMENUTESTSVALGRIND, valgrind, have_valgrind=yes, have_valgrind=no)
+AM_CONDITIONAL([HAVE_VALGRIND], [test "x$have_valgrind" = "xyes"])
])
AC_SUBST(DBUSMENUTESTS_CFLAGS)
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..a9de2bc
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,1462 @@
+libdbusmenu (12.10.3daily13.06.19-0ubuntu1) saucy; urgency=low
+
+ [ Jeremy Bicha ]
+ * According to Debian's GObject introspection mini-policy:
+ http://anonscm.debian.org/viewvc/pkg-gnome/desktop/unstable/gobject-
+ introspection/debian/policy.txt?view=markup.
+
+ [ Ubuntu daily release ]
+ * Automatic snapshot from revision 448
+
+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Wed, 19 Jun 2013 02:02:27 +0000
+
+libdbusmenu (12.10.3daily13.06.07-0ubuntu1) saucy; urgency=low
+
+ [ Mathieu Trudel-Lapierre ]
+ * Fix gtkdoc-check tests, and move them to tests subdirectory.
+
+ [ Chris Coulson ]
+ * Fix the long-standing "nm-applet stops working after a few days /
+ hours" issue; properly handle "unique" IDs for indicator menuitems.
+ (LP: #1011073)
+
+ [ Ubuntu daily release ]
+ * Automatic snapshot from revision 446
+
+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 07 Jun 2013 02:02:59 +0000
+
+libdbusmenu (12.10.3daily13.05.15-0ubuntu1) saucy; urgency=low
+
+ [ Charles Kerr ]
+ * In gtkclient's destructor, balance client's earlier
+ gtk_widget_add_accelerator() calls with
+ gtk_widget_remove_accelerator() calls. (LP: #1173262)
+
+ [ Mathieu Trudel-Lapierre ]
+ * Remove stray g_message().
+
+ [ Ubuntu daily release ]
+ * Automatic snapshot from revision 443
+
+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Wed, 15 May 2013 12:44:56 +0000
+
+libdbusmenu (12.10.3daily13.02.01-0ubuntu1) raring; urgency=low
+
+ [ Mathieu Trudel-Lapierre ]
+ * debian/control:
+ - Reorganize Build-Depends for clarity.
+ - Update style to match other indicator stack packages.
+ - Drop Build-Depends on cdbs.
+ - Bump debhelper Build-Depends to (>= 9).
+ - Update Vcs-Bzr, Vcs-Browser and add a notice to uploaders.
+ - Remove outdated Breaks:.
+ - Add dbus-test-runner to Build-Depends.
+ - Add xvfb to Build-Depends.
+ * debian/rules:
+ - Convert to dh9; some variables where kept but renamed to brevity.
+ - Override dh_autoreconf to make sure it calls autogen.sh, and doesn't run
+ configure.
+ - Clean up unnecessary files we don't want to install, so that dh_install
+ can complete.
+ - Override dh_auto_test to make sure they can be run for both the gtk2 and
+ gtk3 flavors.
+ - Run dh_auto_test through xvfb-run.
+ * debian/compat: bump to compat level 9.
+ * debian/libdbusmenu-gtk-doc.install: add the glib-server-nomenu.c example.
+ * debian/libdbusmenu-tools.install: install dbusmenu-* binaries from the
+ multiarch triplet rather than usr/lib/libdbusmenu.
+ * Update main sgml documentation files to remove the xml includes we don't
+ generate anymore. (LP: #1102468)
+ * Drop deprecated calls to g_type_init(). (LP: #1102471)
+
+ [ Didier Roche ]
+ * Automatic snapshot from revision 435 (bootstrap):
+ - Confirm that icon_name is non-NULL before passing it to
+ gtk_icon_theme_has_icon(). (LP: #1082516)
+ - Do not reuse menu items if their type is different (LP: #1071321)
+ - Fixes interaction with GtkRecentChooserMenu (LP: #752674)
+
+ [ Mathieu Trudel-Lapierre ]
+ * libdbusmenu uses deprecated calls to g_type_init() (LP: #1102471)
+ * libdbusmenu fails to build due to missing xml documentation include
+ files (LP: #1102468)
+
+ [ Chris Coulson ]
+ * Leaks GVariant's in multiple places (LP: #1104136)
+ * Leak in method call handlers for calls that don't require a reply
+ (LP: #1103050)
+
+ [ Automatic PS uploader ]
+ * Automatic snapshot from revision 440
+
+ -- Automatic PS uploader <ps-jenkins@lists.canonical.com> Fri, 01 Feb 2013 02:01:01 +0000
+
+libdbusmenu (12.10.2-0ubuntu1) quantal; urgency=low
+
+ * New upstream release.
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Wed, 03 Oct 2012 21:23:18 +0200
+
+libdbusmenu (12.10.1-0ubuntu2) quantal-proposed; urgency=low
+
+ * Backport upstream fix for segfault issue (lp: #1053670)
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Mon, 24 Sep 2012 21:36:35 +0200
+
+libdbusmenu (12.10.1-0ubuntu1) quantal; urgency=low
+
+ * New upstream release.
+ - Honor changes to GtkSettings' gtk-menu-images value (LP: #927236)
+ - don't display an underscore on menuitimes containing a '&' (LP: #994564)
+ - set the widget for the accelerator even if there isn't a mnemonic
+ (LP: #982656)
+ - Some platforms don't have valgrind, so treat those unit tests separately
+ - make headers match independent of the build directory
+ - constify some public API calls
+
+ -- Didier Roche <didrocks@ubuntu.com> Thu, 20 Sep 2012 19:22:52 +0200
+
+libdbusmenu (0.6.2-0ubuntu1) quantal; urgency=low
+
+ * New upstream release.
+ * Fixed duplicated underscores in menus (LP: #979301)
+ * Fix for keybindings not showing in menus bug (LP: #982656)
+ * DbusmenuServer leaks private string (LP: #981766)
+ * Ensure menuitems with '&' show them properly (LP: #994564)
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 13 Jun 2012 14:44:52 -0500
+
+libdbusmenu (0.6.1-0ubuntu3) precise-proposed; urgency=low
+
+ * Backport fix for keybindings not showing in menus bug (lp: #982656)
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Mon, 16 Apr 2012 21:28:05 +0200
+
+libdbusmenu (0.6.1-0ubuntu2) precise; urgency=low
+
+ * libdbusmenu-gtk/genericmenuitem.c
+ - Fixed duplicated underscores in menus (LP: #979301)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 12 Apr 2012 12:42:47 -0400
+
+libdbusmenu (0.6.1-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Fix mnemonics in wifi hotspot names. (LP: #903200)
+ * Fix nautilus crash in dbusmenu_menuitem_property_remove() (LP: #959821)
+ * Fix about-to-show grouping.
+ * Fix visibility signal in the server.
+ * Silence false positives in dbusmenu's signal smoke tests.
+
+ -- Charles Kerr <charles.kerr@canonical.com> Wed, 11 Apr 2012 11:58:22 -0500
+
+libdbusmenu (0.5.99-0ubuntu3) precise; urgency=low
+
+ * libdbusmenu-gtk/parser.c
+ - switch the smoke test to a g_debug statement (LP: #977803)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 10 Apr 2012 13:21:02 -0400
+
+libdbusmenu (0.5.99-0ubuntu2) precise; urgency=low
+
+ * libdbusmenu-glib/server.c
+ - Cherry picked a fix for a regression in about-to-show grouping
+ * libdbusmenu-gtk/genericmenuitem.c
+ - Fixed: underscore on menu items change on switching focus (LP: #903200)
+ * libdbusmenu-gtk/parser.c
+ - Fixed: nautilus crashed with SIGSEGV in
+ dbusmenu_menuitem_property_remove() (LP: #959821)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Mon, 09 Apr 2012 16:29:34 -0400
+
+libdbusmenu (0.5.99-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Reduce the number of messages hud-service sends. (LP: #957022)
+ * Fix valgrind tests thanks to a little help from sewardj.
+ * Add gcov targets to autotools build for code-coverage reporting.
+ * Make private two impl functions that were accidentally public
+
+ -- Charles Kerr <charles.kerr@canonical.com> Thu, 05 Apr 2012 14:22:33 -0500
+
+libdbusmenu (0.5.96-0ubuntu2) precise; urgency=low
+
+ * Cherry pick fix for FTBFS on arm
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 03 Apr 2012 16:43:10 -0400
+
+libdbusmenu (0.5.96-0ubuntu1) precise; urgency=low
+
+ [ Charles Kerr ]
+ * New upstream release.
+ * Faster menuitem lookups (LP: #801699)
+ * To reduce dbus traffic, only send event replies when the caller
+ requests them
+ * Added support for callgrind-based benchmarks
+ * Minor code cleanup
+
+ [ Ken VanDine ]
+ * debian/control
+ - added build depends on valgrind
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 29 Mar 2012 16:35:00 -0400
+
+libdbusmenu (0.5.95-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Fix theme change bug (LP: #953509)
+ * Don't request event responses if no one is listening
+ * Fix a warning on custom menu items without labels
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 21 Mar 2012 14:33:32 -0500
+
+libdbusmenu (0.5.94-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Fixing setting name of ATK objects
+ * Cleaning up a warning on shutdown (LP: #950762)
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 09 Mar 2012 14:35:38 -0600
+
+libdbusmenu (0.5.93-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Setting the ATK Role on menu items (LP: #878708)
+ * Cleaning up code paths to avoid goto's (LP: #940651)
+ * Fixing setting an icon multiple times (LP: #934574)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 08 Mar 2012 10:08:10 -0600
+
+libdbusmenu (0.5.92-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Fix label leak and make it not have disposition (LP: #937829)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 23 Feb 2012 00:10:04 -0600
+
+libdbusmenu (0.5.91-0ubuntu2) precise; urgency=low
+
+ * debian/control: restore gtk2 gir depends until that source is updated
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Wed, 15 Feb 2012 22:00:04 +0100
+
+libdbusmenu (0.5.91-0ubuntu1) precise; urgency=low
+
+ * debian/control:
+ - drop git binaries, the libdev depends on it
+ - set ubuntu vcs
+ - use the current vala version
+
+ [ Ted Gould ]
+ * New upstream release.
+ * Remove unused const on GStrv's
+ * Only free when there is data to free
+ * Ensure that we only return once even with error (LP: #929856)
+ * Fix an error on a failure to send properties (LP: #929707)
+ * Ensure the hash variant isn't NULL in the comparison (LP: #929710)
+ * Fix some of the issues with throwing criticals
+ * Ensure our tests fail if they throw criticals
+ * Parse and handle a11y descriptions
+ * Don't pass NULL to ATK
+ * Non-srcdir build fixes
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Wed, 15 Feb 2012 21:38:35 +0100
+
+libdbusmenu (0.5.90-0ubuntu1) precise; urgency=low
+
+ [ Ted Gould ]
+ * New upstream release.
+ * Add property for accessible descriptions
+ * Use insert/remove signals on GTK3 build
+ * Change icon data to be a byte stream instead of base64
+ * Adjust GTK3 include path to match other libs
+ * Don't get objects from boolean values (LP: #870742)
+ * Fix depreactions on GTK3 (LP: #917115)
+
+ [ Ken VanDine ]
+ * debian/control
+ - build depend on libatk1.0-dev
+ * debian/*-dev.install
+ - fixed paths for installed headers
+ * debian/libdbusmenu-glib4.symbols
+ - added new symbols
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 02 Feb 2012 14:09:24 -0500
+
+libdbusmenu (0.5.1-0ubuntu2) precise; urgency=low
+
+ * libdbusmenu-gtk/parser.c
+ - Don't try to get objects from boolean values. Handle the
+ 'always show image' property by getting the image from the object
+ and using that (LP: #870742)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 01 Dec 2011 11:07:36 -0500
+
+libdbusmenu (0.5.1-0ubuntu1) precise; urgency=low
+
+ * New upstream release.
+ * Allow for an ID of 0 in about_to_show for indicators (LP: #862989)
+ * Clear the image pointer when we take it
+ * Ensure we drop all references to the GTK widget when a menuitem
+ gets destroyed (LP: #835646)
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 28 Oct 2011 09:35:13 -0400
+
+libdbusmenu (0.5.0-1ubuntu1) precise; urgency=low
+
+ * Multiarch conversion (partial, gobject instrospection not touched)
+ (LP: #859512)
+
+ -- Riku Voipio <riku.voipio@linaro.org> Mon, 26 Sep 2011 12:13:07 +0300
+
+libdbusmenu (0.5.0-1) experimental; urgency=low
+
+ * Merge from Ubuntu.
+ + Re-enable GTK3 packages.
+ * Re-order includes in debian/rules to prevent lintian's
+ E: libdbusmenu source: temporary-debhelper-file
+
+ -- Evgeni Golov <evgeni@debian.org> Sat, 15 Oct 2011 09:29:54 +0200
+
+libdbusmenu (0.5.0-0ubuntu3) oneiric; urgency=low
+
+ * libdbusmenu-gtk/client.c:
+ - Make sure to actually free memory associated with GtkMenuItems we
+ create. We are holding the sunk floating ref, so we have to
+ actually unref as well as destroy the widget. Part of bug 835646.
+ * libdbusmenu-gtk/genericmenuitem.c:
+ - When setting an image on a menu item for the second time before
+ setting a label, don't try to use free'd memory.
+
+ -- Michael Terry <mterry@ubuntu.com> Thu, 06 Oct 2011 10:35:21 -0400
+
+libdbusmenu (0.5.0-0ubuntu2) oneiric; urgency=low
+
+ * libdbusmenu-glib/client.c
+ - id of 0 in dbusmenu_client_send_about_to_show is valid, and used in
+ appindicators like nm-applet (LP: #862989)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 30 Sep 2011 10:06:19 -0400
+
+libdbusmenu (0.5.0-0ubuntu1) oneiric; urgency=low
+
+ * New upstream release.
+ * Protect functions against NULL results (LP: #757569, LP: #742909,
+ LP: #743050, LP: #743661)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 29 Sep 2011 14:46:57 -0500
+
+libdbusmenu (0.4.94-0ubuntu1) oneiric; urgency=low
+
+ [ Ted Gould ]
+ * New upstream release.
+ ∘ Protect functions from NULL submenus (LP: #803667)
+ ∘ Build fixes (LP: #552526, LP: #552530, LP: #552538, LP: #709761,
+ LP: #713690, LP: #643871, LP: #713685)
+
+ [ Ken VanDine ]
+ * debian/control
+ - build dep on valac-0.14
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 20 Sep 2011 09:16:41 -0700
+
+libdbusmenu (0.4.93-0ubuntu1) oneiric; urgency=low
+
+ * New upstream release.
+ * Fix packing of generic menu items to use toggle-spacing
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 25 Aug 2011 09:50:21 -0500
+
+libdbusmenu (0.4.92-0ubuntu1) oneiric; urgency=low
+
+ [ Ted Gould ]
+ * New upstream release (0.4.92).
+ * Add in a property for setting the menuitem disposition
+ * Fix GTK 2 build for style properties
+ * Fixed proxied menu events not getting returned (LP: #799878)
+ * Removed debian/patches:
+ * All upstream
+
+ [ Ken VanDine ]
+ * debian/libdbusmenu-gtk4.symbols debian/libdbusmenu-gtk3-4.symbols
+ - Added new symbols
+
+ -- Ken VanDine <ken.vandine@canonical.com> Wed, 24 Aug 2011 20:22:14 -0400
+
+libdbusmenu (0.4.90-0ubuntu4) oneiric; urgency=low
+
+ * debian/rules:
+ - avoid making indicator-appmenu* depends on gtk2/3 by dpkg-shlibdeps.
+ The library doesn't hurt if gtk isn't installed and that enable
+ pre-installlation of the indicator stack without requiring the full gtk
+ stack being there without any gtk app installed.
+
+ -- Didier Roche <didrocks@ubuntu.com> Mon, 25 Jul 2011 18:18:11 +0200
+
+libdbusmenu (0.4.90-0ubuntu3) oneiric; urgency=low
+
+ * debian/patches/lp799878.patch
+ - Fixed proxied menu events not getting returned (LP: #799878)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 28 Jun 2011 17:53:31 +0100
+
+libdbusmenu (0.4.90-0ubuntu2) oneiric; urgency=low
+
+ * debian/control
+ - Also a a breaks to libdbusmenu-glib4 for gir1.2-unity-3.0 and
+ gir1.2-indicate-0.5 to make sure the library gets held back too.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 24 Jun 2011 16:05:56 -0400
+
+libdbusmenu (0.4.90-0ubuntu1) oneiric; urgency=low
+
+ [ Ted Gould ]
+ * debian/control, debian/*: Renaming packages for library version
+ bump from 3 to 4.
+ * New upstream release.
+ * Fixing visibility for Eclipse (LP: #770263 and LP: #618587)
+ * Unseting a GValue properly (LP: #785828)
+ * Memory leaks for GVariant usage (LP: #784890)
+ * Making GTK 3 default build
+ * Removing the SerializableMenuitem object
+ * debian/rules: Making GTK2 the special build
+
+ [ Ken VanDine ]
+ * +debian/libdbusmenu-jsonloader4.symbols
+ * debian/*.symbols
+ - Fixed sonames and removed all the duplicate symbols
+ * debian/*.install, debian/rules
+ - Use cdbs to do the dual builds for gtk2/gtk3
+ * debian/control
+ - Updated standards version to 3.9.2
+ - Set version on the json-glib build depends to >= 0.13.4
+ - Make gir1.2-dbusmenu-glib-0.4 break gir1.2-unity-3.0 and
+ gir1.2-indicate-0.5 built against older versions of dbusmenu to
+ prevent breakage in python apps that use gir loading multiple versions
+ of dbusmenu-glib
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 24 Jun 2011 14:55:59 -0400
+
+libdbusmenu (0.4.4-0ubuntu1~ppa1) natty; urgency=low
+
+ * New upstream release.
+ - Fix a typo in the signal name to make it match the XML
+ files (LP: #641209)
+ - Ref'ing the server for the entire time we're getting the
+ bus (LP: #738568)
+ - Watch additions/removals from submenus that get added
+ - Activate new toplevel menu items as they get added
+ - Make sure we don't activate toplevel children that aren't
+ menu items or don't have submenus (LP: #761112)
+
+ -- Ted Gould <ted@ubuntu.com> Mon, 25 Apr 2011 15:19:25 -0500
+
+libdbusmenu (0.4.3-1) unstable; urgency=low
+
+ * Merge new upstream release from Ubuntu.
+ * Do not build-depend on gir-repository-dev, libgtk2.0-dev
+ has Gtk-2.0.gir since 2.24.4-1 (bump B-D accordingly).
+ * Standards-Version: 3.9.2
+
+ -- Evgeni Golov <evgeni@debian.org> Wed, 27 Apr 2011 14:00:04 +0200
+
+libdbusmenu (0.4.3-0ubuntu3) natty; urgency=low
+
+ * Backport bug fixes from trunk:
+ - Fix a typo in the signal name to make it match the XML
+ files (LP: #641209)
+ - Ref'ing the server for the entire time we're getting the
+ bus (LP: #738568)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 19 Apr 2011 15:14:23 -0400
+
+libdbusmenu (0.4.3-0ubuntu2) natty; urgency=low
+
+ * Backport bug fixes from trunk:
+ - Watch additions/removals from submenus that get added
+ - Activate new toplevel menu items as they get added
+ - Make sure we don't activate toplevel children that aren't
+ menu items or don't have submenus (LP: #761112)
+
+ -- Michael Terry <mterry@ubuntu.com> Fri, 15 Apr 2011 15:55:37 -0400
+
+libdbusmenu (0.4.3-0ubuntu1) natty; urgency=low
+
+ [ Ken VanDine ]
+ * debian/rules
+ - Fixed package names in build targets (LP: #760102)
+ - Dropped makeshlibs in favor of symbols files
+ * +debian/libdbusmenu-glib3.symbols
+ * +debian/libdbusmenu-gtk3-3.symbols
+ * +debian/libdbusmenu-gtk3.symbols
+
+ [ Ted Gould ]
+ * New upstream release.
+ ∘ Handle cases where labels are added later as subwidgets
+ in the menuitem (LP: #758759)
+ ∘ Fix the destruction of the attached GTK menuitem (LP: #746091)
+ ∘ Guard against an activation that does not actually have an
+ associated menu-hide (LP: #750588)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 14 Apr 2011 16:49:13 -0500
+
+libdbusmenu (0.4.2-1) unstable; urgency=low
+
+ * Merge new upstream release from Ubuntu.
+
+ -- Evgeni Golov <evgeni@debian.org> Mon, 11 Apr 2011 12:43:49 +0200
+
+libdbusmenu (0.4.2-0ubuntu3) natty; urgency=low
+
+ * Merged fix, guard against an activation that does not actually have
+ an associated menu-hide (LP: #750588)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Mon, 11 Apr 2011 00:56:02 -0400
+
+libdbusmenu (0.4.2-0ubuntu2) natty; urgency=low
+
+ * debian/libdbusmenu-gtk3-dev.install:
+ - Add missing header files to gtk3 dev package
+
+ -- Michael Terry <mterry@ubuntu.com> Thu, 07 Apr 2011 20:20:25 -0400
+
+libdbusmenu (0.4.2-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Fix GIR scan to not include duplicate namespaces (LP: #750575)
+ * Keep refs to the client and makes sure to disconnect all handlers.
+ (LP: #749609)
+ * Add GTK side handlers for the open/close events to ensure GTK apps
+ can use those events still (LP: #750588)
+ * Create submenus for menuitems that don't have children but still
+ have told us they need them with the child-display property.
+ (LP: #619811)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 07 Apr 2011 10:32:51 -0500
+
+libdbusmenu (0.4.1-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Managed variant iterators better to stop crash when dealing
+ with apps that have multiple shortcuts (LP: #741726)
+ * Handled GtkMenuItems with no labels as separators (LP: #729187)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 31 Mar 2011 13:56:54 -0500
+
+libdbusmenu (0.4.0-2) unstable; urgency=low
+
+ * Build-depend on gir1.2-atk-1.0, it's not pulled in by gir1.2-gtk-2.0
+ on ia64, mipsel and sparc64, causing FTBFS there.
+
+ -- Evgeni Golov <evgeni@debian.org> Wed, 30 Mar 2011 10:16:59 +0200
+
+libdbusmenu (0.4.0-1) unstable; urgency=low
+
+ * Merge new upstream release from Ubuntu.
+ This builds with gir-1.2 and thus closes: #614490.
+ Also builds fine with --as-needed, closes: #615741.
+ * Disable GTK3 packages for now.
+ * Fix DEB_DH_MAKESHLIBS_ARGS_* for the latest SONAME bump.
+ * Also fix cdbs targets for it.
+ * Use valac-0.10, valac-0.12 is only in experimental.
+ * Add gir-repository-dev back to Build-Depends,
+ it still has Gtk-2.0.gir on Debian.
+
+ -- Evgeni Golov <evgeni@debian.org> Fri, 25 Mar 2011 15:55:16 +0100
+
+libdbusmenu (0.4.0-0ubuntu2) natty; urgency=low
+
+ * Cherry picked fix for potential memory issues to fix unity-panel-service
+ crashed with SIGABRT in __kernel_vsyscall() (LP: #741726)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Mon, 28 Mar 2011 14:56:59 -0400
+
+libdbusmenu (0.4.0-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Protect from NULL variants by using iter_loop (LP: #737844)
+ * Look for accellerators inside the labels as well
+ * Protecting properties that are getting updated from an
+ extra remove signal. (LP: #730925)
+ * Enter and exit the GDK threads before calling GTK (LP: #717162)
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 23 Mar 2011 14:56:24 -0500
+
+libdbusmenu (0.3.102-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ ∘ Remove child items when they're removed by GTK
+ ∘ Adding opened and closed events for menu visibility
+ ∘ Handle empty image types
+ ∘ Remove critical warning on parser menuitem check (LP: #733918)
+ ∘ Fix dependencies in pkgconfig files (LP: #733263)
+ ∘ Handle NULL labels (LP: #733688)
+ ∘ Fix memory leaks from variants (LP: #722972)
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 16 Mar 2011 14:08:13 -0500
+
+libdbusmenu (0.3.101-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ ∘ Add helper to get cached menuitem from widget
+ ∘ Have the GTK Dbusmenu Client handle theme directories (LP: #727325)
+ ∘ Fix a bunch of memory leaks (LP: #722972)
+ ∘ Handle _ in menuitems more correctly when parsing (LP: #621301)
+ ∘ Protect from NULL layout_props (LP: #729722)
+ ∘ Remove the property from the hashtable before signaling that
+ it's been changed (LP: #725603)
+ ∘ Wrap emitted properties in a variant
+ ∘ Fix enum templates so they can be included by other programs
+ without error
+ ∘ Setting the cached menu item (LP: #723463) (LP: #729128) (LP: #729194)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 10 Mar 2011 11:12:50 -0600
+
+libdbusmenu (0.3.100-0ubuntu4) natty; urgency=low
+
+ * libdbusmenu-gtk/parser.c
+ - Ensure we set the CACHED_MENUITEM data on GtkWidget's, this fixes a few
+ bugs (LP: #723463) (LP: #729128) (LP: #729194)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 08 Mar 2011 20:49:41 -0500
+
+libdbusmenu (0.3.100-0ubuntu3) natty; urgency=low
+
+ * libdbusmenu-glib/menuitem.c
+ - Steal earlier instead of later so that signal handlers don't find the
+ value in the hashtable (LP: #725603) (LP: #730198)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Mon, 07 Mar 2011 14:27:09 -0500
+
+libdbusmenu (0.3.100-0ubuntu2) natty; urgency=low
+
+ * Cherry picked fix for path to find types.h
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 04 Mar 2011 10:22:36 -0500
+
+libdbusmenu (0.3.100-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * GTK application menus are not correctly displayed (LP: #726678)
+ * Fix LP: #723873 - ensure that changing a menuitem property to a
+ default value gets propagated properly in the client
+ * Fix some crashes by disconnecting more signals when a menuitem is
+ deleted. LP: #725980 and LP: #726153
+ * Making sure to grab the variant and dispose of it in handle_event.
+ * Change the destroy prototype to fix GIR warnings
+ * Fix emitting property changes to use tuples
+ * Track the icon theme directories
+ * Handle cases where passed in property names could be in the
+ properties hash table
+ * Making property names match DBus protocol recommendations
+ * Restricting GIR scanner to exported interfaces
+ * Use the library i18n libraries instead of the app ones
+ * Make GetLayout use the parent parameter
+ * debian/patches: All submitted upstream
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 03 Mar 2011 13:54:31 -0600
+
+libdbusmenu (0.3.99-0ubuntu5) natty; urgency=low
+
+ * debian/patches/lp726678.patch
+ - GTK application menus are not correctly displayed (LP: #726678)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 01 Mar 2011 12:14:35 -0500
+
+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 <chris.coulson@canonical.com> 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
+ value gets propagated properly in the client
+ - add debian/patches/fix-defaults-in-client.patch
+ - update debian/patches/series
+
+ -- Chris Coulson <chris.coulson@canonical.com> 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 <mterry@ubuntu.com> Mon, 28 Feb 2011 10:09:57 -0500
+
+libdbusmenu (0.3.99-0ubuntu1) natty; urgency=low
+
+ [ Ted Gould ]
+ * New upstream release.
+ * Add a signal on the menuitem for generic event support
+ * Handle the case of a single NULL entry as well.
+ * Not checking defaults when value is NULL
+ * Add the 'type' variable first when processing new
+ menuitems
+ * Protection from unref'ing NULL variants
+ * Only send the requested properties and request fewer
+ * Add in a defaults database
+ * Only send property updates if the menu item has been
+ seen on the bus.
+ * Add a property for text direction.
+ * Add a property for needing attention.
+ * Documentation fixes
+ * Making menuitems track their own parents
+ * Resolving property changes by looking at the properties
+ directly.
+
+ [ Ken VanDine ]
+ * libdbusmenu-glib/menuitem.c
+ - Making sure to grab the variant and dispose of it in handle_event.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 24 Feb 2011 22:54:54 -0500
+
+libdbusmenu (0.3.98-0ubuntu4) natty; urgency=low
+
+ * Merged from trunk (rev 220)
+ - Cleaning up cleaning up so we don't unref twice and crash
+ - Fixing the signatures to make them more consistent
+ - Adding defaults to translatable files
+ - Support a set of defaults and not sending them over the bus.
+ - Fixing annotations and adding tests with python.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Wed, 23 Feb 2011 11:34:57 -0500
+
+libdbusmenu (0.3.98-0ubuntu3) natty; urgency=low
+
+ * debian/control:
+ - Use new libgtk-3-dev build-depends
+
+ -- Robert Ancell <robert.ancell@canonical.com> Tue, 22 Feb 2011 16:16:44 +1100
+
+libdbusmenu (0.3.98-0ubuntu2) natty; urgency=low
+
+ * libdbusmenu-glib/{client,menuitem,server}.c
+ * Be more selective on unref
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 22 Feb 2011 09:23:38 -0500
+
+libdbusmenu (0.3.98-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ ∘ Fixing distcheck
+ ∘ Grouping Property Change events into a single DBus signal
+ ∘ Removing XML from the GetLayout function
+ ∘ Clean up icon handling in the parser (LP: #715864)
+ ∘ Fixing signatures on dbusmenu-dumper
+ * debian/control: Removing libxml2 Build-Dep
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 17 Feb 2011 11:11:40 -0600
+
+libdbusmenu (0.3.97-0ubuntu1) natty; urgency=low
+
+ [Ted Gould]
+ * New upstream release.
+ ∘ Handle ChildAdded on GtkShell items (LP: #709839)
+ ∘ Fixing take_children() to not unref
+ ∘ Fix naming of the GIR file (LP: #713099)
+
+ [Ken VanDine]
+ * debian/gir1.2-dbusmenu-glib-0.4.install,
+ debian/libdbusmenu-glib-dev.install: Changing gir, typelib and vala
+ file names
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 10 Feb 2011 14:40:14 -0600
+
+libdbusmenu (0.3.96-0ubuntu3) natty; urgency=low
+
+ * libdbusmenu-gtk/parser.c
+ - Handle ChildAdded on GtkShell items and clean up the code so that it
+ has single functions for doing common operations. (LP: #709839)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Mon, 07 Feb 2011 09:29:09 -0500
+
+libdbusmenu (0.3.96-0ubuntu2) natty; urgency=low
+
+ * libdbusmenu-glib/menuitem.c
+ - take_children() shouldn't unref as the caller wouldn't get a chance
+ to use the items if this was the last ref.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 04 Feb 2011 12:18:13 -0500
+
+libdbusmenu (0.3.96-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Remove signal handlers for correct objects
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 03 Feb 2011 14:11:16 -0600
+
+libdbusmenu (0.3.95-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Fix crashes on rapidly creating and destroying client
+ and menu objects (LP: #709754)
+ * Fix dynamically changed submenus to get the parsed
+ (LP: #696896)
+ * Fix bad signature on GetProperties with no hits
+
+ -- Ted Gould <ted@ubuntu.com> Mon, 31 Jan 2011 16:03:06 -0600
+
+libdbusmenu (0.3.94-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Fixing setting toggle to a boolean
+ * Fixing some memory leaks
+ * Fixing signatures in GetChildren
+ * Look for the serializable menuitems and use their
+ build functions
+ * Fix critical message from being printed
+ * Fixing shutdown messages on destruction
+ * Fixing warnings from 'use-fallback'
+ * Adding a parser
+ * Adding a serializable menu item
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 27 Jan 2011 14:26:19 -0600
+
+libdbusmenu (0.3.93-0ubuntu1) natty; urgency=low
+
+ [ Ted Gould ]
+ * New upstream release.
+ * Fixing scanner export
+ * Increasing scanner warnings
+ * Signalling to DBus when object is registered
+ * Handling errors in GVariant better than crashing
+
+ [ Ken VanDine ]
+ * debian/control
+ - Bumped build depends for libgtk3.0-dev to >= 2.99.2-1ubuntu2, a gir
+ related patch we needed was dropped in 2.99.2-1ubuntu1 but re-added
+ in 2.99.2-1ubuntu2
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 20 Jan 2011 15:05:52 -0500
+
+libdbusmenu (0.3.92-0ubuntu3) natty; urgency=low
+
+ * libdbusmenu-glib/server.c
+ * Better error handling when parsing g_variants (LP: #703039)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 18 Jan 2011 12:19:37 -0500
+
+libdbusmenu (0.3.92-0ubuntu2) natty; urgency=low
+
+ * libdbusmenu-glib/Makefile.am, libdbusmenu-gtk/Makefile.am
+ - Use EXPORT_PACKAGES to prevent circular build depends
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 18 Jan 2011 10:05:15 -0500
+
+libdbusmenu (0.3.92-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Fixing handle event to send unboxed values
+ * Build fixes
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 14 Jan 2011 10:43:44 -0600
+
+libdbusmenu (0.3.91-0ubuntu1) natty; urgency=low
+
+ * New upstream release.
+ * Porting from dbus-glib to GDBus
+ * Bumping the library ABI version
+ * debian/*.install: Changing to be the 0.4 version of the dbusmenu
+ API of all the filenames and paths.
+ * debian/control: Bumping ABI version in package names
+ * debian/control: Changing the GIR package names from "0.2" to
+ "0.4" which now the names of the actual files.
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 13 Jan 2011 10:24:28 -0600
+
+libdbusmenu (0.3.90-0ubuntu3) natty; urgency=low
+
+ * Updated for the gir abi transition
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 16 Dec 2010 10:06:26 -0500
+
+libdbusmenu (0.3.90-0ubuntu2) natty; urgency=low
+
+ * libdbusmenu-gtk/genericmenuitem.c
+ - Switching away from using set_activate as that doesn't actually set
+ the value, it just signals
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 09 Dec 2010 17:46:41 -0500
+
+libdbusmenu (0.3.90-0ubuntu1) natty; urgency=low
+
+ * debian/rules
+ - Added build targets to build with gtk3 enabled in additional to
+ default build with gtk2
+ * debian/control
+ - Updated build depends to support building with gtk+-3.0
+ - Added dh-autoreconf build depends
+ - Added libdbusmenu-gtk3-2, libdbusmenu-gtk3-dev, gir1.0-dbusmenu-gtk3-0.2
+ binaries
+ - build depend on libgdk-pixbuf2.0-dev >= 2.22.1-0ubuntu4, needed
+ for GIR fixes
+ - Removed build depends for gir-repository-dev (LP: #677382)
+ - Use gir:Depends
+ * docs/libdbusmenu-gtk/reference/Makefile.am, libdbusmenu-glib/Makefile.am,
+ libdbusmenu-gtk/Makefile.am
+ - Fixes needed for building with-gtk=3
+
+ [ Ted Gould ]
+ * New upstream release.
+ * Breaking ABI and getting reserved back
+ * Adding build support for GTK2/3 builds
+ * Only force a flush of top level items, allow others to be
+ based on the count.
+ * debian/control, debian/libdbusmenu-glib2.install,
+ debian/libdbusmenu-gtk2.install: Switching package names to
+ match .so bump.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Wed, 24 Nov 2010 12:05:39 -0500
+
+libdbusmenu (0.3.16-0ubuntu1) maverick; urgency=low
+
+ * New upstream release:
+ * Don't use a typedef in the signal handler in the class to
+ avoid confusing vapigen.
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 22 Sep 2010 10:28:01 -0500
+
+libdbusmenu (0.3.15-0ubuntu1) UNRELEASED; urgency=low
+
+ * New upstream release:
+ - fix Action for top-level dropdown menu item not activated (LP: #637692)
+
+ -- Didier Roche <didrocks@ubuntu.com> Wed, 22 Sep 2010 14:55:44 +0200
+
+libdbusmenu (0.3.14-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Fixing a memory leak by unref'ing a hashtable
+ * Making a callback for the event dbus function happen off
+ of the mainloop so it returns a response. (LP: #636756)
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 15 Sep 2010 11:36:09 -0500
+
+libdbusmenu (0.3.13-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Handling window grabs on activated signals (LP: #633275)
+ * Fixing the passing of the value to the results signal
+ * Adding a test for checking event results signal
+ * Changing the timeouts on event calls for better detection
+ of failing applications
+
+ [Ken VanDine]
+ * debian/control
+ - Dropped build depends for dbus-test-runner, it isn't in the archive
+ yet, we should add that next cycle
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 09 Sep 2010 09:50:15 -0500
+
+libdbusmenu (0.3.12-0ubuntu1) maverick; urgency=low
+
+ * debian/rules: update the shlibs
+
+ [ Ted Gould ]
+ * New upstream release.
+ * Support activation of menus client side
+ * Increase layout XML size (LP: #621238)
+ * Display an event for the status of the signal to the server
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Thu, 26 Aug 2010 23:34:45 +0200
+
+libdbusmenu (0.3.11-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Fix to handle whitespace in layout XML better
+ * Fixes to test scripts on ARM
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 19 Aug 2010 13:47:33 -0500
+
+libdbusmenu (0.3.10-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Fixes to dbusmenu-dumper
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 12 Aug 2010 11:28:37 -0500
+
+libdbusmenu (0.3.9-0ubuntu2) maverick; urgency=low
+
+ * Rebuild with the current gobject introspection version
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Tue, 10 Aug 2010 21:50:16 +0200
+
+libdbusmenu (0.3.9-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Making it so that properties are requested bredth first
+ * Globbing layout signaling from the server
+ * Globbing property requests into group requests (LP: #604670)
+
+ -- Ted Gould <ted@ubuntu.com> Mon, 02 Aug 2010 20:28:58 -0500
+
+libdbusmenu (0.3.8-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ - Added ItemActivationRequested signal.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 30 Jul 2010 13:44:34 -0400
+
+libdbusmenu (0.3.7-1) unstable; urgency=low
+
+ * Merge latest upstream from Ubuntu.
+ * Standards-Version: 3.9.1
+
+ -- Evgeni Golov <evgeni@debian.org> Thu, 29 Jul 2010 12:00:04 +0200
+
+libdbusmenu (0.3.7-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 22 Jul 2010 21:17:13 +0200
+
+libdbusmenu (0.3.6-1) unstable; urgency=low
+
+ * Merge new upstream from Ubuntu.
+
+ -- Evgeni Golov <evgeni@debian.org> Sat, 17 Jul 2010 10:47:35 +0200
+
+libdbusmenu (0.3.6-0ubuntu2~ppa1) lucid; urgency=low
+
+ * Upstream Merge
+ * Making dbusmenu-dumper have a click to dump feature.
+ * Autogen update
+
+ -- Ted Gould <ted@ubuntu.com> Tue, 20 Jul 2010 16:40:29 -0500
+
+libdbusmenu (0.3.6-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ ∘ Protect against NULL values as event
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 15 Jul 2010 09:42:07 -0500
+
+libdbusmenu (0.3.5-1) unstable; urgency=low
+
+ * Merge new upstream and changes from Ubuntu.
+ * debian/control:
+ + Add missing "used" to the json package description.
+
+ -- Evgeni Golov <evgeni@debian.org> Wed, 14 Jul 2010 10:21:29 +0200
+
+libdbusmenu (0.3.5-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ ∘ Protect against NULL nodes (LP: #602444)
+ ∘ Remove extra warnings and messages
+ ∘ Handle not having a session bus better (LP: #598715)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 08 Jul 2010 10:24:18 -0500
+
+libdbusmenu (0.3.4-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Block building submenus on separators (LP: #598620)
+ * Adding more through JSON support for testing
+ * Fixing up value handling in dbusmenu-dumper
+ * debian/control, debian/libdbusmenu-jsonloader*install: Adding
+ two binary packages for the jsonloader test library.
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 01 Jul 2010 09:00:16 -0500
+
+libdbusmenu (0.3.3-1) unstable; urgency=low
+
+ * Merge Ubuntu.
+ Preserve Maintainer and Vcs-* fields.
+ * Standards-Version: 3.9.0
+ * Source-Format: 1.0 for now
+
+ -- Evgeni Golov <evgeni@debian.org> Thu, 01 Jul 2010 11:42:23 +0200
+
+libdbusmenu (0.3.3-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Adding support for menu shortcuts (LP: #591293)
+ * Fixing distcheck of documentation builds
+ * Autogen.sh fix for adding custom prefix (LP: #595565)
+ * Fixing children property name to match spec (LP: #597321)
+ * Merging in Debian branch
+ * debian/control: Switching branch on this branch to be the
+ dbusmenu-team.
+ * debian/rules: Updating shlibs to 0.3.3 for shortcut API additions
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 24 Jun 2010 09:32:42 -0500
+
+libdbusmenu (0.3.2-1) unstable; urgency=low
+
+ * Merge from Ubuntu.
+ Closes: #586069
+ * debian/control:
+ - Set Maintainer to pkg-ayatana.
+ - Add myself as Uploader.
+ - Update package descriptions.
+ - Standards-Version: 3.8.4
+ - Fix Homepage URL.
+ - Update Vcs-* fields.
+ - -doc packages are Arch:all
+ * debian/copyright:
+ - Convert to DEP5 format.
+ - Add Ken and Sebastien, according to changelog.
+ - Add Aurélien Gâteau, according to headers.
+
+ -- Evgeni Golov <evgeni@debian.org> Sun, 20 Jun 2010 13:56:00 +0200
+
+libdbusmenu (0.3.2-0ubuntu1) maverick; urgency=low
+
+ * debian/control
+ - added doc packages
+ - added build dep for gtk-doc-tools
+ * debian/libdbusmenu-glib-doc.install added
+ * debian/libdbusmenu-gtk-doc.install added
+ * debian/rules
+ - enabled gtk-doc for configure
+
+ [Ted Gould]
+ * New upstream release.
+ * Set the 'child-display' property on menuitems that
+ have child menuitems.
+ * gtk-doc support
+ * Document the 'shortcut' property
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 10 Jun 2010 16:33:42 -0400
+
+libdbusmenu (0.3.1-0ubuntu1) maverick; urgency=low
+
+ * New upstream release.
+ * Fix annotations for GIR scanner
+ * Add function to get submenu of GTK-ified items
+ * Fix signal prototype of ID update
+ * Fixing up VAPI files to build them correctly
+ * Fixing the version string in the GIR file
+ * Fix documentation title page
+ * Reject text nodes early (warnings with Qt integration)
+ * debian/libdbusmenu-glib-dev.install: Updating gir and vapi file
+ names for package list.
+ * debian/gir1.0-dbusmenu-glib-0.2.install: Changing the name of the
+ typelib file.
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 04 Jun 2010 14:42:26 -0500
+
+libdbusmenu (0.3.0-0ubuntu1~ppa1) lucid; urgency=low
+
+ * New upstream release.
+ * Add function to get submenu of GTK-ified items
+ * Fix signal prototype of ID update
+ * Fixing up VAPI files to build them correctly
+ * Fixing the version string in the GIR file
+ * Fix documentation title page
+ * Reject text nodes early (warnings with Qt integration)
+ * debian/libdbusmenu-glib-dev.install: Updating gir and vapi file
+ names for package list.
+ * debian/gir1.0-dbusmenu-glib-0.2.install: Changing the name of the
+ typelib file.
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 27 May 2010 11:47:05 -0500
+
+libdbusmenu (0.2.9-0ubuntu3) lucid; urgency=low
+
+ * Upstream Merge
+ * Only unref root if the root has changed.
+ * Ensure that callbacks retain references to objects incase
+ they get deleted quickly.
+ * Protecting references before signalling
+ * Decrementing refs when added to child menus
+
+ -- Ted Gould <ted@ubuntu.com> Sat, 17 Apr 2010 13:09:57 -0500
+
+libdbusmenu (0.2.9-0ubuntu2) lucid; urgency=low
+
+ * Upstream Merge
+ * Changing GTK layer to look at position in realized
+ children to avoid realization races. (LP: #555816)
+ * Don't allow setting children twice
+ * Ref children of a menuitem
+ * Return error when parent ID of getlayout can't be found
+ * Adding in visible property to docs
+ * Helpful comments in the code
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 15 Apr 2010 01:25:42 -0500
+
+libdbusmenu (0.2.9-0ubuntu1) lucid; urgency=low
+
+ * New upstream release.
+ * Documentation fix
+ * Changing the parse function to get_children instead of
+ taking them. (LP: #471044)
+ * Supporting AboutToShow in event callbacks to catch up
+ with QT implementation.
+ * Unrefing on layout updates (LP: #545026)
+ * Resetting sync versions on disconnection
+ * Removing useless warning
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 01 Apr 2010 09:14:36 -0500
+
+libdbusmenu (0.2.8-0ubuntu2) lucid; urgency=low
+
+ * debian/control:
+ - restore vcs location, we move back to the non import version, the other
+ one don't allow merging trunk changes
+
+ [ Ted Gould ]
+ * Upstream Merge
+ * Changing the parse function to get_children instead of
+ taking them. (LP: #471044)
+ * Supporting AboutToShow in event callbacks to catch up
+ with QT implementation.
+ * Unrefing on layout updates (LP: #545026)
+ * Resetting sync versions on disconnection
+ * Removing useless warning
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Thu, 01 Apr 2010 12:36:06 +0200
+
+libdbusmenu (0.2.8-0ubuntu1) lucid; urgency=low
+
+ * debian/control
+ - Dropped Vcs-Bzr and Vcs-Browser
+ - Added extended description for gir1.0-dbusmenu-gtk-0.2 and
+ gir1.0-dbusmenu-glib-0.2
+
+ * debian/rules
+ - bumped shlibs version to 0.2.8 for libdbusmenu-glib1
+
+ [Ted Gould]
+ * Upstream release 0.2.8
+ * Adding support for blank icons (LP: #534854)
+ * Remove unneeded warning (LP: #537312)
+ * Fix typo in documentation
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 25 Mar 2010 11:35:46 -0400
+
+libdbusmenu (0.2.7-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.7
+ * Adding in building of the GObject Introspection details
+ * Adding in building of VAPI files
+ * debian/control:
+ * Adding dependency on valac
+ * Adding in gir's as build dependencies.
+ * Adding in build dependencies for GIR dev
+ * Adding dependencies for gir-repository-dev and
+ gobject-introspection to ensure we get all the GI goodies.
+ * debian/control, debian/gir1.0-dbusmenu-glib-0.2.install,
+ debian/gir1.0-dbusmenu-gtk-0.2.install: Adding new packages to
+ hold the typelib files generated by GObject introspection.
+ * debian/libdbusmenu-glib-dev.install,
+ debian/libdbusmenu-gtk-dev.install:
+ * Added VAPI files to the packages.
+ * Added GIR files to the packages.
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 04 Mar 2010 11:13:43 -0600
+
+libdbusmenu (0.2.6-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.6
+ * Fix testing to make it more reliable
+ * Remove delayed property queueing as it was causing properties to not
+ get updated. (lp: #524308)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 25 Feb 2010 10:23:49 -0600
+
+libdbusmenu (0.2.5-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.5
+ * Adding in menuitem proxy object.
+ * Adding ID to default <menu> item.
+ * debian/rules: Updating shlibs
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 18 Feb 2010 11:00:24 -0600
+
+libdbusmenu (0.2.4-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.4
+ * Remove uneccessary reference to stop duplication of menus
+ * Handle dbus method errors better
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 11 Feb 2010 10:13:56 -0600
+
+libdbusmenu (0.2.3-0ubuntu3) lucid; urgency=low
+
+ * Backported lp:~ted/dbusmenu/dbus-error-handling to fix the
+ indicator-applet crashing sometime on softwares close
+ (lp: #518900, #519019)
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Wed, 10 Feb 2010 00:12:35 +0100
+
+libdbusmenu (0.2.3-0ubuntu2) lucid; urgency=low
+
+ * Upstream Merge
+ * Removing the ref to root and a setting of root
+
+ -- Ted Gould <ted@ubuntu.com> Tue, 09 Feb 2010 08:53:00 -0600
+
+libdbusmenu (0.2.3-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.3
+ * Fixing handing of root IDs being zero
+ * Handling syncing of properties when reusing items
+ * Shipping new JSON files and READMEs for testing.
+ * libdbusmenu-tools.install: Add in json file and README so
+ that they're put in the right directories.
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 05 Feb 2010 11:24:58 -0800
+
+libdbusmenu (0.2.2-0ubuntu3) lucid; urgency=low
+
+ * debian/control:
+ - let libdbusmenu-glib1 breaks libdbusmenu-glib0 since they are create
+ issues at runtime if both got loaded
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Thu, 04 Feb 2010 18:10:56 -0800
+
+libdbusmenu (0.2.2-0ubuntu2) lucid; urgency=low
+
+ * debian/control: fix a typo in the tools depends
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Thu, 04 Feb 2010 14:18:47 -0800
+
+libdbusmenu (0.2.2-0ubuntu1) lucid; urgency=low
+
+ * Updated for the soname changes
+
+ [ Ted Gould ]
+ * Upstream Release 0.2.2
+ * Interoperability fixes
+ * Adding timestamps to events
+ * Better handling of XML
+ * Adding tools for timing dbusmenu
+ * debian/libdbusmenu-tools.install: Adding a wildcard to get
+ all of the tools in libexec
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Thu, 04 Feb 2010 13:56:49 -0800
+
+libdbusmenu (0.2.1-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.1
+ - Fix to not destroy the image if we're still using it.
+ - Adding code to support icon names that have an implied direction in them.
+ - Fix to put a small amount of padding between the icon and the label.
+
+ -- Ken VanDine <ken.vandine@canonical.com> Tue, 12 Jan 2010 11:03:39 -0500
+
+libdbusmenu (0.2.0-0ubuntu3) lucid; urgency=low
+
+ * debian/rules:
+ - updated shlibs version (lp: #505258)
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Mon, 11 Jan 2010 16:04:11 +0100
+
+libdbusmenu (0.2.0-0ubuntu2) lucid; urgency=low
+
+ * Added debian/libdbusmenu-tools.install
+ * debian/control
+ - improved description for libdbusmenu-tools
+
+ -- Ken VanDine <ken.vandine@canonical.com> Sat, 09 Jan 2010 09:05:47 -0500
+
+libdbusmenu (0.2.0-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.2.0
+ - Remove unused libdbusmenu-qt
+ - Changing API to be V0.2 for reals
+ - Adding underline support
+ - Test suite fixes and automation support
+ - dbus-dumper tool
+ - Switch to org.ayatana
+ - Fixing the handling of typed properties, especially bools.
+ - Adding GetChildren function for getting a single submenu
+ - Starting to watch DBus if the proxy builds fail.
+ - Test suite fixes
+ - Fixing the consistency between the #defines and what
+ was used in the code.
+ * debian/control, debian/libdbusmenu-tools.install: Setting
+ up a package for the new dbusmenu-dumper tool.
+ * debian/control: Mentioning nicely that this will cause
+ indicator-messages << 0.3 and indicator-session << 0.2 to
+ break.
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 08 Jan 2010 08:42:59 -0600
+
+libdbusmenu (0.1.8-0ubuntu1) lucid; urgency=low
+
+ * Upstream release 0.1.8
+ * Changing the name to org.ayatana
+ * Underline fixes
+ * Documenation of the DBus API
+ * Adding the GPL v3 Copying file so that we're all legal.
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 10 Dec 2009 12:55:07 -0600
+
+libdbusmenu (0.1.6-0ubuntu1) karmic; urgency=low
+
+ * Upstream release 0.1.6 (LP: #442822)
+ * Managing the life-cycle of the GTK Menu item better to
+ ensure that it is positioned correctly and dies
+ appropriately. (LP: #430904) and (LP: #419953)
+ * Checking returned properties to ensure that there wasn't
+ DBus errors. (LP: #433719)
+
+ -- Ted Gould <ted@ubuntu.com> Fri, 02 Oct 2009 17:00:45 -0500
+
+libdbusmenu (0.1.5-0ubuntu1) karmic; urgency=low
+
+ * New upstream release (LP: #436185)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Thu, 24 Sep 2009 17:12:25 -0400
+
+libdbusmenu (0.1.4-0ubuntu1) karmic; urgency=low
+
+ * Upstream release (LP: #432003)
+ - Applying a fix by not blocking if we're calling for the root. Everyone
+ should be listening for root changes anyway (lp: #427819)
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 17 Sep 2009 11:29:40 -0500
+
+libdbusmenu (0.1.3-0ubuntu1) karmic; urgency=low
+
+ * Upstream update 0.1.3 (LP: #427360)
+ * Fixes reordering of menu item issue
+
+ -- Ted Gould <ted@ubuntu.com> Thu, 10 Sep 2009 08:43:47 -0500
+
+libdbusmenu (0.1.2-0ubuntu1) karmic; urgency=low
+
+ * debian/rules:
+ - updated shlib version
+
+ [ Ted Gould ]
+ * Upstream release 0.1.2 (LP: #423958)
+
+ [ Ken VanDine ]
+ * debian/control
+ - Specify full urls for Vcs-Bzr
+
+ -- Sebastien Bacher <seb128@ubuntu.com> Fri, 04 Sep 2009 11:12:38 +0200
+
+libdbusmenu (0.1.0-0ubuntu1) karmic; urgency=low
+
+ [ Ted Gould ]
+ * Upstream release 0.1.0
+ * debian/watch: Added for tarball
+ * debian/control:
+ - Specify both Vcs-Bzr and Vcs-Browser
+ - Fixed the project name
+
+ [ Martin Pitt ]
+ * Add bzr-builddep configuration for merge mode.
+ * debian/control: Fix Vcs-* links.
+
+ -- Martin Pitt <martin.pitt@ubuntu.com> Thu, 27 Aug 2009 20:55:55 +0200
+
+libdbusmenu (0.1~bzr5-0ubuntu1) karmic; urgency=low
+
+ * First version.
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 05 Aug 2009 00:46:41 +0100
+
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..23a70f8
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,243 @@
+Source: libdbusmenu
+Section: gnome
+Priority: optional
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: The Ayatana Packagers <pkg-ayatana-devel@lists.alioth.debian.org>
+Uploaders: Evgeni Golov <evgeni@debian.org>
+Build-Depends: debhelper (>= 9),
+ quilt,
+ dh-autoreconf,
+ libtool,
+ intltool,
+ gnome-doc-utils,
+ gtk-doc-tools,
+ valgrind,
+ dbus-test-runner,
+ xvfb,
+ libglib2.0-dev (>= 2.35.4),
+ libgtk2.0-dev (>= 2.24.4-1~),
+ libgtk-3-dev (>= 2.99.2-1ubuntu2),
+ libgdk-pixbuf2.0-dev (>= 2.22.1-0ubuntu4),
+ libdbus-glib-1-dev,
+ libatk1.0-dev,
+ libjson-glib-dev (>= 0.13.4),
+ gobject-introspection,
+ libgirepository1.0-dev (>= 0.9.3),
+ libx11-dev (>= 1.3),
+ valac (>= 0.16),
+Standards-Version: 3.9.2
+Homepage: https://launchpad.net/dbusmenu
+# If you aren't a member of ~dbusmenu-team but need to upload
+# packaging changes, just go ahead. ~dbusmenu-team will notice
+# and sync up the code again.
+Vcs-Bzr: https://code.launchpad.net/~dbusmenu-team/dbusmenu/trunk.13.04
+Vcs-Browser: https://bazaar.launchpad.net/~dbusmenu-team/dbusmenu/trunk.13.04/files
+
+Package: libdbusmenu-glib4
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+Pre-Depends: ${misc:Pre-Depends},
+Multi-Arch: same
+Description: library for passing menus over DBus
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains shared libraries to be used by applications.
+
+Package: libdbusmenu-glib-dev
+Section: libdevel
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ gir1.2-dbusmenu-glib-0.4 (= ${binary:Version}),
+ libdbusmenu-glib4 (= ${binary:Version}),
+ libdbus-glib-1-dev (>= 0.76),
+ libgtk2.0-dev (>= 2.12.0),
+Multi-Arch: same
+Description: library for passing menus over DBus - development files
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains files that are needed to build applications.
+
+Package: libdbusmenu-gtk4
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+Pre-Depends: ${misc:Pre-Depends},
+Multi-Arch: same
+Description: library for passing menus over DBus - GTK+ version
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains shared libraries to be used by GTK+ applications.
+
+Package: libdbusmenu-gtk-dev
+Section: libdevel
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ gir1.2-dbusmenu-gtk-0.4 (= ${binary:Version}),
+ libdbusmenu-gtk4 (= ${binary:Version}),
+ libdbus-glib-1-dev (>= 0.76),
+ libgtk2.0-dev (>= 2.12.0),
+ libdbusmenu-glib-dev,
+Multi-Arch: same
+Description: library for passing menus over DBus - GTK+ version developement files
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains files that are needed to build GTK+ applications.
+
+Package: libdbusmenu-tools
+Section: devel
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ python,
+ libdbusmenu-glib4 (= ${binary:Version}),
+Multi-Arch: foreign
+Description: tools useful during development with libdbusmenu
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains tools that are useful when developing and building
+ applications with libdbusmenu.
+
+Package: gir1.2-dbusmenu-glib-0.4
+Section: introspection
+Architecture: any
+Depends: ${misc:Depends},
+ libdbusmenu-glib4 (= ${binary:Version}),
+ ${gir:Depends},
+Description: typelib file for libdbusmenu-glib4
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package can be used by other packages using the GIRepository format to
+ generate dynamic bindings for libdbusmenu-glib4.
+
+Package: gir1.2-dbusmenu-gtk-0.4
+Section: introspection
+Architecture: any
+Depends: ${misc:Depends},
+ libdbusmenu-gtk4 (= ${binary:Version}),
+ ${gir:Depends},
+Description: typelib file for libdbusmenu-gtk4
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package can be used by other packages using the GIRepository format to
+ generate dynamic bindings for libdbusmenu-gtk4.
+
+Package: libdbusmenu-glib-doc
+Section: doc
+Architecture: all
+Depends: ${misc:Depends},
+Description: library for passing menus over DBus - documentation
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains developer documentation for libdbusmenu-glib.
+
+Package: libdbusmenu-gtk-doc
+Section: doc
+Architecture: all
+Depends: ${misc:Depends},
+Description: library for passing menus over DBus - GTK+ version documentation
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains developer documentation for libdbusmenu-gtk.
+
+Package: libdbusmenu-jsonloader4
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+Pre-Depends: ${misc:Pre-Depends},
+Multi-Arch: same
+Description: library for passing menus over DBus - Test lib
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains shared libraries to be used by test suites in
+ applications or libraries using dbusmenu.
+
+Package: libdbusmenu-jsonloader-dev
+Section: libdevel
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ libdbusmenu-jsonloader4 (= ${binary:Version}),
+ libdbus-glib-1-dev (>= 0.76),
+ libdbusmenu-glib-dev (= ${binary:Version}),
+ libjson-glib-dev,
+Multi-Arch: same
+Description: library for passing menus over DBus - Test lib development files
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains files that are needed to build test suites in
+ applications or libraries using dbusmenu.
+
+Package: libdbusmenu-gtk3-4
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+Pre-Depends: ${misc:Pre-Depends},
+Multi-Arch: same
+Description: library for passing menus over DBus - GTK+ version
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains shared libraries to be used by GTK+ applications.
+
+Package: libdbusmenu-gtk3-dev
+Section: libdevel
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ gir1.2-dbusmenu-gtk3-0.4 (= ${binary:Version}),
+ libdbusmenu-gtk3-4 (= ${binary:Version}),
+ libdbus-glib-1-dev (>= 0.76),
+ libgtk-3-dev (>= 2.91.4-0ubuntu1),
+ libdbusmenu-glib-dev,
+Multi-Arch: same
+Description: library for passing menus over DBus - GTK+ version developement files
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package contains files that are needed to build GTK+ applications.
+
+Package: gir1.2-dbusmenu-gtk3-0.4
+Section: introspection
+Architecture: any
+Depends: ${misc:Depends},
+ libdbusmenu-gtk3-4 (= ${binary:Version}),
+ ${gir:Depends},
+Description: typelib file for libdbusmenu-gtk3-4
+ libdbusmenu passes a menu structure across DBus so that a program can
+ create a menu simply without worrying about how it is displayed on the
+ other side of the bus.
+ .
+ This package can be used by other packages using the GIRepository format to
+ generate dynamic bindings for libdbusmenu-gtk4.
+
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..6d7c11b
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,40 @@
+Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=135
+Name: libdbusmenu
+Maintainer: Ted Gould <ted@canonical.com>
+Source: https://launchpad.net/dbusmenu
+
+Files: *
+Copyright: 2009-2010 Ted Gould <ted@canonical.com>, Canonical Ltd.
+License: GPL-3
+
+Files: libdbusmenu-{glib,gtk}/*
+Copyright: 2009-2010 Ted Gould <ted@canonical.com>, Canonical Ltd.
+License: LGPL-2.1 | LGPL-3
+
+Files: libdbusmenu-glib/dbus-menu.xml
+Copyright: 2009-2010 Ted Gould <ted@canonical.com>, Canonical Ltd.
+Copyright: 2009-2010 Aurélien Gâteau <aurelien.gateau@canonical.com>
+License: LGPL-2.1 | LGPL-3
+
+Files: tools/{dbusmenu-bench,testapp/main.c}
+Copyright: 2009-2010 Aurélien Gâteau <aurelien.gateau@canonical.com>
+License: LGPL-2.1 | LGPL-3
+
+Files: debian/*
+Copyright: 2009-2010 Evgeni Golov <evgeni@debian.org>
+Copyright: 2009-2010 Ted Gould <ted@canonical.com>, Canonical Ltd.
+Copyright: 2009-2010 Sebastien Bacher <seb128@ubuntu.com>
+Copyright: 2009-2010 Ken VanDine <ken.vandine@canonical.com>
+License: GPL-3
+
+License: GPL-3
+ On Debian systems, the complete text of the GNU General
+ Public License version 3 can be found in `/usr/share/common-licenses/GPL-3'.
+
+License: LGPL-2.1
+ On Debian systems, the complete text of the GNU Lesser General
+ Public License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
+License: LGPL-3
+ On Debian systems, the complete text of the GNU Lesser General
+ Public License version 3 can be found in `/usr/share/common-licenses/LGPL-3'.
diff --git a/debian/gir1.2-dbusmenu-glib-0.4.install b/debian/gir1.2-dbusmenu-glib-0.4.install
new file mode 100644
index 0000000..da62142
--- /dev/null
+++ b/debian/gir1.2-dbusmenu-glib-0.4.install
@@ -0,0 +1 @@
+usr/lib/*/girepository-1.0/Dbusmenu-0.4.typelib /usr/lib/girepository-1.0/
diff --git a/debian/gir1.2-dbusmenu-gtk-0.4.install b/debian/gir1.2-dbusmenu-gtk-0.4.install
new file mode 100644
index 0000000..1a62fd5
--- /dev/null
+++ b/debian/gir1.2-dbusmenu-gtk-0.4.install
@@ -0,0 +1 @@
+usr/lib/*/girepository-1.0/DbusmenuGtk-0.4.typelib /usr/lib/girepository-1.0/
diff --git a/debian/gir1.2-dbusmenu-gtk3-0.4.install b/debian/gir1.2-dbusmenu-gtk3-0.4.install
new file mode 100644
index 0000000..4c56230
--- /dev/null
+++ b/debian/gir1.2-dbusmenu-gtk3-0.4.install
@@ -0,0 +1 @@
+usr/lib/*/girepository-1.0/DbusmenuGtk3-0.4.typelib /usr/lib/girepository-1.0/
diff --git a/debian/libdbusmenu-glib-dev.install b/debian/libdbusmenu-glib-dev.install
new file mode 100644
index 0000000..bc5b5b1
--- /dev/null
+++ b/debian/libdbusmenu-glib-dev.install
@@ -0,0 +1,6 @@
+usr/include/libdbusmenu-glib-0.4/libdbusmenu-glib
+usr/lib/*/pkgconfig/dbusmenu-glib-0.4.pc
+usr/lib/*/libdbusmenu-glib.a
+usr/lib/*/libdbusmenu-glib.so
+usr/share/gir-1.0/Dbusmenu-0.4.gir
+usr/share/vala/vapi/Dbusmenu-0.4.vapi
diff --git a/debian/libdbusmenu-glib-doc.install b/debian/libdbusmenu-glib-doc.install
new file mode 100644
index 0000000..5d99d73
--- /dev/null
+++ b/debian/libdbusmenu-glib-doc.install
@@ -0,0 +1 @@
+usr/share/gtk-doc/html/libdbusmenu-glib /usr/share/gtk-doc/html/
diff --git a/debian/libdbusmenu-glib4.install b/debian/libdbusmenu-glib4.install
new file mode 100644
index 0000000..4c05f07
--- /dev/null
+++ b/debian/libdbusmenu-glib4.install
@@ -0,0 +1 @@
+usr/lib/*/libdbusmenu-glib.so.*
diff --git a/debian/libdbusmenu-glib4.symbols b/debian/libdbusmenu-glib4.symbols
new file mode 100644
index 0000000..0004172
--- /dev/null
+++ b/debian/libdbusmenu-glib4.symbols
@@ -0,0 +1,81 @@
+libdbusmenu-glib.so.4 libdbusmenu-glib4 #MINVER#
+ dbus_menu_clean_xml@Base 0.4.2
+ dbusmenu_client_add_type_handler@Base 0.4.2
+ dbusmenu_client_add_type_handler_full@Base 0.4.2
+ dbusmenu_client_get_icon_paths@Base 0.4.2
+ dbusmenu_client_get_root@Base 0.4.2
+ dbusmenu_client_get_status@Base 0.4.2
+ dbusmenu_client_get_text_direction@Base 0.4.2
+ dbusmenu_client_get_type@Base 0.4.2
+ dbusmenu_client_menuitem_get_type@Base 0.4.2
+ dbusmenu_client_menuitem_new@Base 0.4.2
+ dbusmenu_client_new@Base 0.4.2
+ dbusmenu_client_send_about_to_show@Base 0.4.2
+ dbusmenu_client_send_event@Base 0.4.2
+ dbusmenu_defaults_default_get@Base 0.4.2
+ dbusmenu_defaults_default_get_type@Base 0.4.2
+ dbusmenu_defaults_default_set@Base 0.4.2
+ dbusmenu_defaults_get_type@Base 0.4.2
+ dbusmenu_defaults_ref_default@Base 0.4.2
+ dbusmenu_menuitem_build_variant@Base 0.4.2
+ dbusmenu_menuitem_child_add_position@Base 0.4.2
+ dbusmenu_menuitem_child_append@Base 0.4.2
+ dbusmenu_menuitem_child_delete@Base 0.4.2
+ dbusmenu_menuitem_child_find@Base 0.4.2
+ dbusmenu_menuitem_child_prepend@Base 0.4.2
+ dbusmenu_menuitem_child_reorder@Base 0.4.2
+ dbusmenu_menuitem_exposed@Base 0.4.2
+ dbusmenu_menuitem_find_id@Base 0.4.2
+ dbusmenu_menuitem_foreach@Base 0.4.2
+ dbusmenu_menuitem_get_children@Base 0.4.2
+ dbusmenu_menuitem_get_id@Base 0.4.2
+ dbusmenu_menuitem_get_parent@Base 0.4.2
+ dbusmenu_menuitem_get_position@Base 0.4.2
+ dbusmenu_menuitem_get_position_realized@Base 0.4.2
+ dbusmenu_menuitem_get_root@Base 0.4.2
+ dbusmenu_menuitem_get_type@Base 0.4.2
+ dbusmenu_menuitem_handle_event@Base 0.4.2
+ dbusmenu_menuitem_new@Base 0.4.2
+ dbusmenu_menuitem_new_with_id@Base 0.4.2
+ dbusmenu_menuitem_properties_copy@Base 0.4.2
+ dbusmenu_menuitem_properties_list@Base 0.4.2
+ dbusmenu_menuitem_properties_variant@Base 0.4.2
+ dbusmenu_menuitem_property_exist@Base 0.4.2
+ dbusmenu_menuitem_property_get@Base 0.4.2
+ dbusmenu_menuitem_property_get_bool@Base 0.4.2
+ dbusmenu_menuitem_property_get_byte_array@Base 0.5.90
+ dbusmenu_menuitem_property_get_int@Base 0.4.2
+ dbusmenu_menuitem_property_get_variant@Base 0.4.2
+ dbusmenu_menuitem_property_is_default@Base 0.4.2
+ dbusmenu_menuitem_property_remove@Base 0.4.2
+ dbusmenu_menuitem_property_set@Base 0.4.2
+ dbusmenu_menuitem_property_set_bool@Base 0.4.2
+ dbusmenu_menuitem_property_set_byte_array@Base 0.5.90
+ dbusmenu_menuitem_property_set_int@Base 0.4.2
+ dbusmenu_menuitem_property_set_variant@Base 0.4.2
+ dbusmenu_menuitem_proxy_get_type@Base 0.4.2
+ dbusmenu_menuitem_proxy_get_wrapped@Base 0.4.2
+ dbusmenu_menuitem_proxy_new@Base 0.4.2
+ dbusmenu_menuitem_realized@Base 0.4.2
+ dbusmenu_menuitem_send_about_to_show@Base 0.4.2
+ dbusmenu_menuitem_set_parent@Base 0.4.2
+ dbusmenu_menuitem_set_realized@Base 0.4.2
+ dbusmenu_menuitem_set_root@Base 0.4.2
+ dbusmenu_menuitem_show_to_user@Base 0.4.2
+ dbusmenu_menuitem_take_children@Base 0.4.2
+ dbusmenu_menuitem_unparent@Base 0.4.2
+ dbusmenu_server_get_icon_paths@Base 0.4.2
+ dbusmenu_server_get_status@Base 0.4.2
+ dbusmenu_server_get_text_direction@Base 0.4.2
+ dbusmenu_server_get_type@Base 0.4.2
+ dbusmenu_server_new@Base 0.4.2
+ dbusmenu_server_set_icon_paths@Base 0.4.2
+ dbusmenu_server_set_root@Base 0.4.2
+ dbusmenu_server_set_status@Base 0.4.2
+ dbusmenu_server_set_text_direction@Base 0.4.2
+ dbusmenu_status_get_nick@Base 0.4.2
+ dbusmenu_status_get_type@Base 0.4.2
+ dbusmenu_status_get_value_from_nick@Base 0.4.2
+ dbusmenu_text_direction_get_nick@Base 0.4.2
+ dbusmenu_text_direction_get_type@Base 0.4.2
+ dbusmenu_text_direction_get_value_from_nick@Base 0.4.2
diff --git a/debian/libdbusmenu-gtk-dev.install b/debian/libdbusmenu-gtk-dev.install
new file mode 100644
index 0000000..a17a99f
--- /dev/null
+++ b/debian/libdbusmenu-gtk-dev.install
@@ -0,0 +1,6 @@
+usr/include/libdbusmenu-gtk-0.4/libdbusmenu-gtk
+usr/lib/*/pkgconfig/dbusmenu-gtk-0.4.pc
+usr/lib/*/libdbusmenu-gtk.a
+usr/lib/*/libdbusmenu-gtk.so
+usr/share/gir-1.0/DbusmenuGtk-0.4.gir
+usr/share/vala/vapi/DbusmenuGtk-0.4.vapi
diff --git a/debian/libdbusmenu-gtk-doc.install b/debian/libdbusmenu-gtk-doc.install
new file mode 100644
index 0000000..d772ba5
--- /dev/null
+++ b/debian/libdbusmenu-gtk-doc.install
@@ -0,0 +1,2 @@
+usr/share/gtk-doc/html/libdbusmenu-gtk /usr/share/gtk-doc/html/
+usr/share/doc/libdbusmenu/examples/glib-server-nomenu.c
diff --git a/debian/libdbusmenu-gtk3-4.install b/debian/libdbusmenu-gtk3-4.install
new file mode 100644
index 0000000..a425da7
--- /dev/null
+++ b/debian/libdbusmenu-gtk3-4.install
@@ -0,0 +1 @@
+usr/lib/*/libdbusmenu-gtk3.so.*
diff --git a/debian/libdbusmenu-gtk3-4.symbols b/debian/libdbusmenu-gtk3-4.symbols
new file mode 100644
index 0000000..efc696c
--- /dev/null
+++ b/debian/libdbusmenu-gtk3-4.symbols
@@ -0,0 +1,36 @@
+libdbusmenu-gtk3.so.4 libdbusmenu-gtk3-4 #MINVER#
+ dbusmenu_gtk_parse_get_cached_item@Base 0.4.2
+ dbusmenu_gtk_parse_menu_structure@Base 0.4.2
+ dbusmenu_gtkclient_get_accel_group@Base 0.4.2
+ dbusmenu_gtkclient_get_type@Base 0.4.2
+ dbusmenu_gtkclient_menuitem_get@Base 0.4.2
+ dbusmenu_gtkclient_menuitem_get_submenu@Base 0.4.2
+ dbusmenu_gtkclient_new@Base 0.4.2
+ dbusmenu_gtkclient_newitem_base@Base 0.4.2
+ dbusmenu_gtkclient_set_accel_group@Base 0.4.2
+ dbusmenu_gtkmenu_get_client@Base 0.4.2
+ dbusmenu_gtkmenu_get_type@Base 0.4.2
+ dbusmenu_gtkmenu_new@Base 0.4.2
+ dbusmenu_menuitem_property_get_image@Base 0.4.2
+ dbusmenu_menuitem_property_get_shortcut@Base 0.4.2
+ dbusmenu_menuitem_property_set_image@Base 0.4.2
+ dbusmenu_menuitem_property_set_shortcut@Base 0.4.2
+ dbusmenu_menuitem_property_set_shortcut_menuitem@Base 0.4.2
+ dbusmenu_menuitem_property_set_shortcut_string@Base 0.4.2
+ genericmenuitem_check_type_get_nick@Base 0.4.92
+ genericmenuitem_check_type_get_type@Base 0.4.92
+ genericmenuitem_check_type_get_value_from_nick@Base 0.4.92
+ genericmenuitem_disposition_get_nick@Base 0.4.92
+ genericmenuitem_disposition_get_type@Base 0.4.92
+ genericmenuitem_disposition_get_value_from_nick@Base 0.4.92
+ genericmenuitem_get_disposition@Base 0.4.92
+ genericmenuitem_get_image@Base 0.4.2
+ genericmenuitem_get_type@Base 0.4.2
+ genericmenuitem_set_check_type@Base 0.4.2
+ genericmenuitem_set_disposition@Base 0.4.92
+ genericmenuitem_set_image@Base 0.4.2
+ genericmenuitem_set_state@Base 0.4.2
+ genericmenuitem_state_get_nick@Base 0.4.92
+ genericmenuitem_state_get_type@Base 0.4.92
+ genericmenuitem_state_get_value_from_nick@Base 0.4.92
+ theme_dir_db@Base 0.4.2
diff --git a/debian/libdbusmenu-gtk3-dev.install b/debian/libdbusmenu-gtk3-dev.install
new file mode 100644
index 0000000..782f5c8
--- /dev/null
+++ b/debian/libdbusmenu-gtk3-dev.install
@@ -0,0 +1,6 @@
+usr/include/libdbusmenu-gtk3-0.4/libdbusmenu-gtk
+usr/lib/*/pkgconfig/dbusmenu-gtk3-0.4.pc
+usr/lib/*/libdbusmenu-gtk3.a
+usr/lib/*/libdbusmenu-gtk3.so
+usr/share/gir-1.0/DbusmenuGtk3-0.4.gir
+usr/share/vala/vapi/DbusmenuGtk3-0.4.vapi
diff --git a/debian/libdbusmenu-gtk4.install b/debian/libdbusmenu-gtk4.install
new file mode 100644
index 0000000..546d698
--- /dev/null
+++ b/debian/libdbusmenu-gtk4.install
@@ -0,0 +1 @@
+usr/lib/*/libdbusmenu-gtk.so.*
diff --git a/debian/libdbusmenu-gtk4.symbols b/debian/libdbusmenu-gtk4.symbols
new file mode 100644
index 0000000..eacb806
--- /dev/null
+++ b/debian/libdbusmenu-gtk4.symbols
@@ -0,0 +1,36 @@
+libdbusmenu-gtk.so.4 libdbusmenu-gtk4 #MINVER#
+ dbusmenu_gtk_parse_get_cached_item@Base 0.4.2
+ dbusmenu_gtk_parse_menu_structure@Base 0.4.2
+ dbusmenu_gtkclient_get_accel_group@Base 0.4.2
+ dbusmenu_gtkclient_get_type@Base 0.4.2
+ dbusmenu_gtkclient_menuitem_get@Base 0.4.2
+ dbusmenu_gtkclient_menuitem_get_submenu@Base 0.4.2
+ dbusmenu_gtkclient_new@Base 0.4.2
+ dbusmenu_gtkclient_newitem_base@Base 0.4.2
+ dbusmenu_gtkclient_set_accel_group@Base 0.4.2
+ dbusmenu_gtkmenu_get_client@Base 0.4.2
+ dbusmenu_gtkmenu_get_type@Base 0.4.2
+ dbusmenu_gtkmenu_new@Base 0.4.2
+ dbusmenu_menuitem_property_get_image@Base 0.4.2
+ dbusmenu_menuitem_property_get_shortcut@Base 0.4.2
+ dbusmenu_menuitem_property_set_image@Base 0.4.2
+ dbusmenu_menuitem_property_set_shortcut@Base 0.4.2
+ dbusmenu_menuitem_property_set_shortcut_menuitem@Base 0.4.2
+ dbusmenu_menuitem_property_set_shortcut_string@Base 0.4.2
+ genericmenuitem_check_type_get_nick@Base 0.4.92
+ genericmenuitem_check_type_get_type@Base 0.4.92
+ genericmenuitem_check_type_get_value_from_nick@Base 0.4.92
+ genericmenuitem_disposition_get_nick@Base 0.4.92
+ genericmenuitem_disposition_get_type@Base 0.4.92
+ genericmenuitem_disposition_get_value_from_nick@Base 0.4.92
+ genericmenuitem_get_disposition@Base 0.4.92
+ genericmenuitem_get_image@Base 0.4.2
+ genericmenuitem_get_type@Base 0.4.2
+ genericmenuitem_set_check_type@Base 0.4.2
+ genericmenuitem_set_disposition@Base 0.4.92
+ genericmenuitem_set_image@Base 0.4.2
+ genericmenuitem_set_state@Base 0.4.2
+ genericmenuitem_state_get_nick@Base 0.4.92
+ genericmenuitem_state_get_type@Base 0.4.92
+ genericmenuitem_state_get_value_from_nick@Base 0.4.92
+ theme_dir_db@Base 0.4.2
diff --git a/debian/libdbusmenu-jsonloader-dev.install b/debian/libdbusmenu-jsonloader-dev.install
new file mode 100644
index 0000000..1554085
--- /dev/null
+++ b/debian/libdbusmenu-jsonloader-dev.install
@@ -0,0 +1,4 @@
+usr/include/libdbusmenu-glib-0.4/libdbusmenu-jsonloader
+usr/lib/*/pkgconfig/dbusmenu-jsonloader-0.4.pc
+usr/lib/*/libdbusmenu-jsonloader.a
+usr/lib/*/libdbusmenu-jsonloader.so
diff --git a/debian/libdbusmenu-jsonloader4.install b/debian/libdbusmenu-jsonloader4.install
new file mode 100644
index 0000000..67976fd
--- /dev/null
+++ b/debian/libdbusmenu-jsonloader4.install
@@ -0,0 +1 @@
+usr/lib/*/libdbusmenu-jsonloader.so.*
diff --git a/debian/libdbusmenu-jsonloader4.symbols b/debian/libdbusmenu-jsonloader4.symbols
new file mode 100644
index 0000000..38a6868
--- /dev/null
+++ b/debian/libdbusmenu-jsonloader4.symbols
@@ -0,0 +1,3 @@
+libdbusmenu-jsonloader.so.4 libdbusmenu-jsonloader4 #MINVER#
+ dbusmenu_json_build_from_file@Base 0.4.2
+ dbusmenu_json_build_from_node@Base 0.4.2
diff --git a/debian/libdbusmenu-tools.install b/debian/libdbusmenu-tools.install
new file mode 100644
index 0000000..68962f8
--- /dev/null
+++ b/debian/libdbusmenu-tools.install
@@ -0,0 +1,3 @@
+usr/lib/*/dbusmenu-*
+usr/share/libdbusmenu/* /usr/share/libdbusmenu-tools/
+usr/share/doc/libdbusmenu/README.dbusmenu-bench /usr/share/doc/libdbusmenu-tools/
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..68f2b81
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,64 @@
+#!/usr/bin/make -f
+
+FLAVORS = gtk2 gtk3
+
+CONFIGURE_FLAGS_gtk2 = --with-gtk=2
+CONFIGURE_FLAGS_gtk3 = --with-gtk=3
+
+CONFIGURE_COMMON_FLAGS += --disable-scrollkeeper --enable-gtk-doc --enable-introspection --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
+
+INSTALL_COMMON_FLAGS = --fail-missing
+
+LDFLAGS += -Wl,-z,defs -Wl,--as-needed
+
+%:
+ dh $@ --with autoreconf
+
+override_dh_autoreconf:
+ NOCONFIGURE=1 dh_autoreconf ./autogen.sh
+
+override_dh_auto_configure: $(FLAVORS:%=doconfigure-%)
+
+doconfigure-%:
+ DH_VERBOSE=1 dh_auto_configure --builddirectory=builddir/$* -- $(CONFIGURE_FLAGS_$*) $(CONFIGURE_COMMON_FLAGS)
+
+override_dh_auto_build: $(FLAVORS:%=dobuild-%)
+
+dobuild-%:
+ dh_auto_build --builddirectory=builddir/$*
+
+override_dh_auto_install: $(FLAVORS:%=doinstall-%)
+
+doinstall-%:
+ dh_auto_install --builddirectory=builddir/$* --destdir=debian/tmp/$*
+
+override_dh_auto_test: $(FLAVORS:%=dotest-%)
+
+dotest-%:
+ xvfb-run -a dh_auto_test --builddirectory=builddir/$*
+
+override_dh_install:
+ find debian/tmp -name \*.la -delete
+ # Remove gtk2 copies of dbusmenu-tools (we use the gtk3 build)
+ rm -f debian/tmp/gtk2/usr/lib/x86_64-linux-gnu/dbusmenu-testapp
+ rm -f debian/tmp/gtk2/usr/lib/x86_64-linux-gnu/dbusmenu-dumper
+ rm -f debian/tmp/gtk2/usr/lib/x86_64-linux-gnu/dbusmenu-bench
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-gtk4 --sourcedir=debian/tmp/gtk2
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-gtk-dev --sourcedir=debian/tmp/gtk2
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-gtk-doc --sourcedir=debian/tmp/gtk2
+ dh_install $(INSTALL_COMMON_FLAGS) -pgir1.2-dbusmenu-gtk-0.4 --sourcedir=debian/tmp/gtk2
+ dh_install $(INSTALL_COMMON_FLAGS) -pgir1.2-dbusmenu-glib-0.4 --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -pgir1.2-dbusmenu-gtk3-0.4 --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-glib4 --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-glib-dev --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-glib-doc --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-gtk3-4 --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-gtk3-dev --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-jsonloader4 --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-jsonloader-dev --sourcedir=debian/tmp/gtk3
+ dh_install $(INSTALL_COMMON_FLAGS) -plibdbusmenu-tools --sourcedir=debian/tmp/gtk3
+
+override_dh_shlibdeps:
+ dh_shlibdeps -plibdbusmenu-gtk4 -- -xlibgtk2.0-0
+ dh_shlibdeps -plibdbusmenu-gtk3-4 -- -xlibgtk-3-0
+
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..d3827e7
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+1.0
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..9f089a5
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://launchpad.net/dbusmenu/+download .*/libdbusmenu-([0-9.]+)\.tar\.gz
diff --git a/docs/libdbusmenu-glib/reference/Makefile.am b/docs/libdbusmenu-glib/reference/Makefile.am
index 2af5ec3..bdc0b22 100644
--- a/docs/libdbusmenu-glib/reference/Makefile.am
+++ b/docs/libdbusmenu-glib/reference/Makefile.am
@@ -18,10 +18,10 @@ DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
# gtk-doc will search all .c & .h files beneath here for inline comments
# documenting the functions and macros.
# e.g. DOC_SOURCE_DIR=../../../gtk
-DOC_SOURCE_DIR=../../../libdbusmenu-glib
+DOC_SOURCE_DIR=$(abs_top_srcdir)/libdbusmenu-glib $(abs_top_builddir)/libdbusmenu-glib
# Extra options to pass to gtkdoc-scangobj. Not normally needed.
-SCANGOBJ_OPTIONS=--nogtkinit --type-init-func="g_type_init()"
+SCANGOBJ_OPTIONS=--nogtkinit
# Extra options to supply to gtkdoc-scan.
# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
@@ -78,7 +78,7 @@ INCLUDES=-I$(top_srcdir) $(DBUSMENUGLIB_CFLAGS) $(DBUSMENUGTK_CFLAGS)
GTKDOC_LIBS=$(top_builddir)/libdbusmenu-glib/libdbusmenu-glib.la
# This includes the standard gtk-doc make rules, copied by gtkdocize.
-include $(top_srcdir)/gtk-doc.local.make
+include $(top_srcdir)/gtk-doc.make
# Other files to distribute
# e.g. EXTRA_DIST += version.xml.in
@@ -89,14 +89,8 @@ EXTRA_DIST += version.xml.in
# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
#DISTCLEANFILES +=
-# Comment this out if you want your docs-status tested during 'make check'
-TESTS = gtkdoc-in-srcdir
-
-gtkdoc-in-srcdir: Makefile.am
- @echo "#!/bin/sh" > $@
- @echo "cd \"$(srcdir)\"" >> $@
- @echo "$(GTKDOC_CHECK)" >> $@
- @chmod +x $@
-
-DISTCLEANFILES = gtkdoc-in-srcdir
-
+if ENABLE_GTK_DOC
+ TESTS_ENVIRONMENT = cd $(srcdir) && \
+ DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
+ SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
+endif
diff --git a/docs/libdbusmenu-glib/reference/libdbusmenu-glib-docs.sgml b/docs/libdbusmenu-glib/reference/libdbusmenu-glib-docs.sgml
index 53a0ceb..76258e5 100644
--- a/docs/libdbusmenu-glib/reference/libdbusmenu-glib-docs.sgml
+++ b/docs/libdbusmenu-glib/reference/libdbusmenu-glib-docs.sgml
@@ -15,9 +15,6 @@
<xi:include href="xml/menuitem-proxy.xml"/>
<xi:include href="xml/menuitem.xml"/>
<xi:include href="xml/client.xml"/>
- <xi:include href="xml/client-menuitem.xml"/>
- <xi:include href="xml/dbusmenu-client.xml"/>
- <xi:include href="xml/dbusmenu-server.xml"/>
<xi:include href="xml/types.xml"/>
</chapter>
diff --git a/docs/libdbusmenu-glib/reference/tmpl/dummy.sgml b/docs/libdbusmenu-glib/reference/tmpl/dummy.sgml
deleted file mode 100644
index e69de29..0000000
--- a/docs/libdbusmenu-glib/reference/tmpl/dummy.sgml
+++ /dev/null
diff --git a/docs/libdbusmenu-gtk/reference/Makefile.am b/docs/libdbusmenu-gtk/reference/Makefile.am
index 62f80ba..7902a09 100644
--- a/docs/libdbusmenu-gtk/reference/Makefile.am
+++ b/docs/libdbusmenu-gtk/reference/Makefile.am
@@ -25,10 +25,10 @@ DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
# gtk-doc will search all .c & .h files beneath here for inline comments
# documenting the functions and macros.
# e.g. DOC_SOURCE_DIR=../../../gtk
-DOC_SOURCE_DIR=../../../libdbusmenu-gtk
+DOC_SOURCE_DIR=$(abs_top_srcdir)/libdbusmenu-gtk
# Extra options to pass to gtkdoc-scangobj. Not normally needed.
-SCANGOBJ_OPTIONS=--nogtkinit --type-init-func="g_type_init()"
+SCANGOBJ_OPTIONS=--nogtkinit
# Extra options to supply to gtkdoc-scan.
# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
@@ -78,7 +78,7 @@ INCLUDES=-I$(top_srcdir) $(DBUSMENUGLIB_CFLAGS) $(DBUSMENUGTK_CFLAGS)
GTKDOC_LIBS=$(top_builddir)/libdbusmenu-gtk/libdbusmenu-gtk$(VER).la $(DBUSMENUGLIB_LIBS) $(DBUSMENUGTK_LIBS)
# This includes the standard gtk-doc make rules, copied by gtkdocize.
-include $(top_srcdir)/gtk-doc.local.make
+include $(top_srcdir)/gtk-doc.make
# Other files to distribute
# e.g. EXTRA_DIST += version.xml.in
@@ -89,13 +89,9 @@ EXTRA_DIST += version.xml.in
# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
#DISTCLEANFILES +=
-# Comment this out if you want your docs-status tested during 'make check'
-TESTS = gtkdoc-in-srcdir
-
-gtkdoc-in-srcdir: Makefile.am
- @echo "#!/bin/sh" > $@
- @echo "cd \"$(srcdir)\"" >> $@
- @echo "$(GTKDOC_CHECK)" >> $@
- @chmod +x $@
+if ENABLE_GTK_DOC
+ TESTS_ENVIRONMENT = cd $(srcdir) && \
+ DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
+ SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
+endif
-DISTCLEANFILES = gtkdoc-in-srcdir
diff --git a/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-docs.sgml b/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-docs.sgml
index e9020de..e2e3c9f 100644
--- a/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-docs.sgml
+++ b/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-docs.sgml
@@ -15,7 +15,6 @@
<xi:include href="xml/menuitem.xml"/>
<xi:include href="xml/client.xml"/>
<xi:include href="xml/parser.xml"/>
- <xi:include href="xml/serializablemenuitem.xml"/>
</chapter>
<chapter id="object-tree">
diff --git a/docs/libdbusmenu-gtk/reference/tmpl/dummy.sgml b/docs/libdbusmenu-gtk/reference/tmpl/dummy.sgml
deleted file mode 100644
index e69de29..0000000
--- a/docs/libdbusmenu-gtk/reference/tmpl/dummy.sgml
+++ /dev/null
diff --git a/gtk-doc.local.make b/gtk-doc.local.make
deleted file mode 100644
index 3dcda60..0000000
--- a/gtk-doc.local.make
+++ /dev/null
@@ -1,194 +0,0 @@
-# -*- mode: makefile -*-
-
-####################################
-# Everything below here is generic #
-####################################
-
-if GTK_DOC_USE_LIBTOOL
-GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
-GTKDOC_RUN = $(LIBTOOL) --mode=execute
-else
-GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
-GTKDOC_RUN = sh -c
-endif
-
-# We set GPATH here; this gives us semantics for GNU make
-# which are more like other make's VPATH, when it comes to
-# whether a source that is a target of one rule is then
-# searched for in VPATH/GPATH.
-#
-GPATH = $(srcdir)
-
-TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
-
-EXTRA_DIST = \
- $(content_files) \
- $(HTML_IMAGES) \
- $(DOC_MAIN_SGML_FILE)
-
-DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
- $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
-
-SCANOBJ_FILES = \
- $(DOC_MODULE).args \
- $(DOC_MODULE).hierarchy \
- $(DOC_MODULE).interfaces \
- $(DOC_MODULE).prerequisites \
- $(DOC_MODULE).signals
-
-REPORT_FILES = \
- $(DOC_MODULE)-undocumented.txt \
- $(DOC_MODULE)-undeclared.txt \
- $(DOC_MODULE)-unused.txt
-
-CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
-
-if ENABLE_GTK_DOC
-all-local: html-build.stamp
-else
-all-local:
-endif
-
-docs: html-build.stamp
-
-$(REPORT_FILES): sgml-build.stamp
-
-#### scan ####
-
-scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
- @echo 'gtk-doc: Scanning header files'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && \
- gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
- if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \
- CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
- else \
- cd $(srcdir) ; \
- for i in $(SCANOBJ_FILES) ; do \
- test -f $$i || touch $$i ; \
- done \
- fi
- touch scan-build.stamp
-
-$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
- @true
-
-#### templates ####
-
-tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
- @echo 'gtk-doc: Rebuilding template files'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
- touch tmpl-build.stamp
-
-tmpl.stamp: tmpl-build.stamp
- @true
-
-tmpl/*.sgml:
- @true
-
-
-#### xml ####
-
-sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
- @echo 'gtk-doc: Building XML'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && \
- gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS)
- touch sgml-build.stamp
-
-sgml.stamp: sgml-build.stamp
- @true
-
-#### html ####
-
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
- @echo 'gtk-doc: Building HTML'
- @-chmod -R u+w $(srcdir)
- rm -rf $(srcdir)/html
- mkdir $(srcdir)/html
- mkhtml_options=""; \
- gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \
- if test "$(?)" = "0"; then \
- mkhtml_options=--path="$(srcdir)"; \
- fi
- cd $(srcdir)/html && gtkdoc-mkhtml $(mkhtml_options) $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
- test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
- @echo 'gtk-doc: Fixing cross-references'
- cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
- touch html-build.stamp
-
-##############
-
-clean-local:
- rm -f *~ *.bak
- rm -rf .libs
-
-distclean-local:
- cd $(srcdir) && \
- rm -rf xml $(REPORT_FILES) \
- $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
-
-maintainer-clean-local: clean
- cd $(srcdir) && rm -rf xml html
-
-install-data-local:
- installfiles=`echo $(srcdir)/html/*`; \
- if test "$$installfiles" = '$(srcdir)/html/*'; \
- then echo '-- Nothing to install' ; \
- else \
- if test -n "$(DOC_MODULE_VERSION)"; then \
- installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
- else \
- installdir="$(DESTDIR)$(TARGET_DIR)"; \
- fi; \
- $(mkinstalldirs) $${installdir} ; \
- for i in $$installfiles; do \
- echo '-- Installing '$$i ; \
- $(INSTALL_DATA) $$i $${installdir}; \
- done; \
- if test -n "$(DOC_MODULE_VERSION)"; then \
- mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
- $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
- mv -f $${installdir}/$(DOC_MODULE).devhelp \
- $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \
- fi; \
- ! which gtkdoc-rebase >/dev/null 2>&1 || \
- gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir} ; \
- fi
-
-uninstall-local:
- if test -n "$(DOC_MODULE_VERSION)"; then \
- installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
- else \
- installdir="$(DESTDIR)$(TARGET_DIR)"; \
- fi; \
- rm -rf $${installdir}
-
-#
-# Require gtk-doc when making dist
-#
-if ENABLE_GTK_DOC
-dist-check-gtkdoc:
-else
-dist-check-gtkdoc:
- @echo "*** gtk-doc must be installed and enabled in order to make dist"
- @false
-endif
-
-dist-hook: dist-check-gtkdoc dist-hook-local
- mkdir $(distdir)/tmpl
- mkdir $(distdir)/xml
- mkdir $(distdir)/html
- -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
- -cp $(srcdir)/xml/*.xml $(distdir)/xml
- -cp $(srcdir)/html/* $(distdir)/html
- -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/
- -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/
- cd $(distdir) && rm -f $(DISTCLEANFILES)
- ! which gtkdoc-rebase >/dev/null 2>&1 || \
- gtkdoc-rebase --online --relative --html-dir=$(distdir)/html
-
-.PHONY : dist-hook-local docs
diff --git a/libdbusmenu-glib/Makefile.am b/libdbusmenu-glib/Makefile.am
index 36b5152..26d900c 100644
--- a/libdbusmenu-glib/Makefile.am
+++ b/libdbusmenu-glib/Makefile.am
@@ -213,10 +213,10 @@ if HAVE_VALA
if HAVE_INTROSPECTION
vapidir = $(datadir)/vala/vapi
-vapi_DATA = dbusmenu-glib-0.4.vapi
+vapi_DATA = Dbusmenu-0.4.vapi
-dbusmenu-glib-0.4.vapi: Dbusmenu-0.4.gir
- $(VALA_API_GEN) --library=dbusmenu-glib-0.4 $<
+Dbusmenu-0.4.vapi: Dbusmenu-0.4.gir
+ $(VALA_API_GEN) --library=Dbusmenu-0.4 $<
CLEANFILES += $(vapi_DATA)
diff --git a/libdbusmenu-glib/client.c b/libdbusmenu-glib/client.c
index b6e7204..4bb3217 100644
--- a/libdbusmenu-glib/client.c
+++ b/libdbusmenu-glib/client.c
@@ -2160,8 +2160,29 @@ parse_layout_xml(DbusmenuClient * client, GVariant * layout, DbusmenuMenuitem *
for (childsearch = oldchildren; childsearch != NULL; childsearch = g_list_next(childsearch)) {
DbusmenuMenuitem * cs_mi = DBUSMENU_MENUITEM(childsearch->data);
if (childid == dbusmenu_menuitem_get_id(cs_mi)) {
- oldchildren = g_list_remove(oldchildren, cs_mi);
- childmi = cs_mi;
+ GVariantIter iter;
+ gchar * prop;
+ GVariant * value;
+ GVariant * child_props;
+ GVariant * new_type = NULL;
+ GVariant * old_type = NULL;
+
+ child_props = g_variant_get_child_value(child, 1);
+ g_variant_iter_init(&iter, child_props);
+ while (g_variant_iter_loop(&iter, "{sv}", &prop, &value)) {
+ if (g_strcmp0(prop, DBUSMENU_MENUITEM_PROP_TYPE) == 0) {
+ new_type = value;
+ break;
+ }
+ }
+ g_variant_unref(child_props);
+
+ old_type = dbusmenu_menuitem_property_get_variant(cs_mi, DBUSMENU_MENUITEM_PROP_TYPE);
+ if ((old_type == NULL && new_type == NULL) || (old_type != NULL && new_type != NULL && g_variant_compare(old_type, new_type) == 0)) {
+ // Only recycle the menu item if it's of the same type
+ oldchildren = g_list_remove(oldchildren, cs_mi);
+ childmi = cs_mi;
+ }
break;
}
}
@@ -2511,7 +2532,7 @@ type_handler_destroy (gpointer user_data)
* items when they come in.
*
* This function connects into the type handling of the #DbusmenuClient.
- * Every new menuitem that comes in immediately gets asked for it's
+ * Every new menuitem that comes in immediately gets asked for its
* properties. When we get those properties we check the 'type'
* property and look to see if it matches a handler that is known
* by the client. If so, the @newfunc function is executed on that
@@ -2542,7 +2563,7 @@ dbusmenu_client_add_type_handler (DbusmenuClient * client, const gchar * type, D
* the resources in @user_data.
*
* This function connects into the type handling of the #DbusmenuClient.
- * Every new menuitem that comes in immediately gets asked for it's
+ * Every new menuitem that comes in immediately gets asked for its
* properties. When we get those properties we check the 'type'
* property and look to see if it matches a handler that is known
* by the client. If so, the @newfunc function is executed on that
diff --git a/libdbusmenu-glib/defaults.c b/libdbusmenu-glib/defaults.c
index d6ee7cc..a0a78a5 100644
--- a/libdbusmenu-glib/defaults.c
+++ b/libdbusmenu-glib/defaults.c
@@ -228,7 +228,7 @@ dbusmenu_defaults_default_set (DbusmenuDefaults * defaults, const gchar * type,
* Gets an entry in the database for a give @property and @type.
*
* Return value: (transfer none): Returns a variant that does not
- * have it's ref count increased. If you want to keep it, you should
+ * have its ref count increased. If you want to keep it, you should
* do that.
*/
GVariant *
diff --git a/libdbusmenu-glib/enum-types.h.in b/libdbusmenu-glib/enum-types.h.in
index 5758438..afd9132 100644
--- a/libdbusmenu-glib/enum-types.h.in
+++ b/libdbusmenu-glib/enum-types.h.in
@@ -43,7 +43,7 @@ G_END_DECLS
/*** END file-tail ***/
/*** BEGIN file-production ***/
-/* Enumerations from file: "@filename@" */
+/* Enumerations from file: "@basename@" */
#include "@basename@"
/*** END file-production ***/
diff --git a/libdbusmenu-glib/menuitem.c b/libdbusmenu-glib/menuitem.c
index c81c36e..0b85193 100644
--- a/libdbusmenu-glib/menuitem.c
+++ b/libdbusmenu-glib/menuitem.c
@@ -192,7 +192,7 @@ dbusmenu_menuitem_class_init (DbusmenuMenuitemClass *klass)
@arg2: The position that the child is being moved to.
@arg3: The position that the child is was in.
- Signaled when the child menuitem has had it's location
+ Signaled when the child menuitem has had its location
in the list change.
*/
signals[CHILD_MOVED] = g_signal_new(DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED,
@@ -270,7 +270,7 @@ dbusmenu_menuitem_class_init (DbusmenuMenuitemClass *klass)
g_object_class_install_property (object_class, PROP_ID,
g_param_spec_int(PROP_ID_S, "ID for the menu item",
"This is a unique indentifier for the menu item.",
- -1, 30000, -1,
+ -1, G_MAXINT, -1,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS));
/* Check transfer functions for GValue */
@@ -391,7 +391,11 @@ set_property (GObject * obj, guint id, const GValue * value, GParamSpec * pspec)
case PROP_ID:
priv->id = g_value_get_int(value);
if (priv->id > menuitem_next_id) {
- menuitem_next_id = priv->id + 1;
+ if (priv->id == G_MAXINT) {
+ menuitem_next_id = 1;
+ } else {
+ menuitem_next_id = priv->id + 1;
+ }
}
break;
default:
@@ -410,7 +414,12 @@ get_property (GObject * obj, guint id, GValue * value, GParamSpec * pspec)
switch (id) {
case PROP_ID:
if (priv->id == -1) {
- priv->id = menuitem_next_id++;
+ priv->id = menuitem_next_id;
+ if (menuitem_next_id == G_MAXINT) {
+ menuitem_next_id = 1;
+ } else {
+ menuitem_next_id += 1;
+ }
}
if (dbusmenu_menuitem_get_root(DBUSMENU_MENUITEM(obj))) {
g_value_set_int(value, 0);
@@ -463,7 +472,7 @@ send_about_to_show (DbusmenuMenuitem * mi, void (*cb) (DbusmenuMenuitem * mi, gp
/* A helper function to get the type of the menuitem, this might
be a candidate for optimization in the future. */
static const gchar *
-menuitem_get_type (DbusmenuMenuitem * mi)
+menuitem_get_type (const DbusmenuMenuitem * mi)
{
DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(mi);
GVariant * currentval = (GVariant *)g_hash_table_lookup(priv->properties, DBUSMENU_MENUITEM_PROP_TYPE);
@@ -800,7 +809,7 @@ dbusmenu_menuitem_child_delete (DbusmenuMenuitem * mi, DbusmenuMenuitem * child)
g_return_val_if_fail(DBUSMENU_IS_MENUITEM(child), FALSE);
if (dbusmenu_menuitem_get_parent(child) != mi) {
- g_warning("Trying to remove a child that doesn't believe we're it's parent.");
+ g_warning("Trying to remove a child that doesn't believe we're its parent.");
return FALSE;
}
@@ -974,7 +983,7 @@ dbusmenu_menuitem_find_id (DbusmenuMenuitem * mi, gint id)
}
return mi;
}
- find_id_t find_id = {mi: NULL, id: id};
+ find_id_t find_id = {.mi=NULL, .id=id};
find_id_helper(mi, &find_id);
return find_id.mi;
}
@@ -1287,7 +1296,7 @@ dbusmenu_menuitem_property_set_variant (DbusmenuMenuitem * mi, const gchar * pro
* is not set or is not a string.
*/
const gchar *
-dbusmenu_menuitem_property_get (DbusmenuMenuitem * mi, const gchar * property)
+dbusmenu_menuitem_property_get (const DbusmenuMenuitem * mi, const gchar * property)
{
GVariant * variant = dbusmenu_menuitem_property_get_variant(mi, property);
if (variant == NULL) return NULL;
@@ -1307,7 +1316,7 @@ dbusmenu_menuitem_property_get (DbusmenuMenuitem * mi, const gchar * property)
* Return value: (transfer none): A GVariant for the property.
*/
GVariant *
-dbusmenu_menuitem_property_get_variant (DbusmenuMenuitem * mi, const gchar * property)
+dbusmenu_menuitem_property_get_variant (const DbusmenuMenuitem * mi, const gchar * property)
{
g_return_val_if_fail(DBUSMENU_IS_MENUITEM(mi), NULL);
g_return_val_if_fail(property != NULL, NULL);
@@ -1334,7 +1343,7 @@ dbusmenu_menuitem_property_get_variant (DbusmenuMenuitem * mi, const gchar * pro
* Return value: The value of the property or #FALSE.
*/
gboolean
-dbusmenu_menuitem_property_get_bool (DbusmenuMenuitem * mi, const gchar * property)
+dbusmenu_menuitem_property_get_bool (const DbusmenuMenuitem * mi, const gchar * property)
{
GVariant * variant = dbusmenu_menuitem_property_get_variant(mi, property);
if (variant == NULL) return FALSE;
@@ -1368,7 +1377,7 @@ dbusmenu_menuitem_property_get_bool (DbusmenuMenuitem * mi, const gchar * proper
* Return value: The value of the property or zero.
*/
gint
-dbusmenu_menuitem_property_get_int (DbusmenuMenuitem * mi, const gchar * property)
+dbusmenu_menuitem_property_get_int (const DbusmenuMenuitem * mi, const gchar * property)
{
GVariant * variant = dbusmenu_menuitem_property_get_variant(mi, property);
if (variant == NULL) return 0;
@@ -1401,7 +1410,7 @@ dbusmenu_menuitem_property_get_int (DbusmenuMenuitem * mi, const gchar * propert
* is not set or is not a byte array.
*/
const guchar *
-dbusmenu_menuitem_property_get_byte_array (DbusmenuMenuitem * mi, const gchar * property, gsize * nelements)
+dbusmenu_menuitem_property_get_byte_array (const DbusmenuMenuitem * mi, const gchar * property, gsize * nelements)
{
GVariant * variant = dbusmenu_menuitem_property_get_variant(mi, property);
if (variant == NULL) {
@@ -1423,7 +1432,7 @@ dbusmenu_menuitem_property_get_byte_array (DbusmenuMenuitem * mi, const gchar *
* Return value: A boolean checking to see if the property is available
*/
gboolean
-dbusmenu_menuitem_property_exist (DbusmenuMenuitem * mi, const gchar * property)
+dbusmenu_menuitem_property_exist (const DbusmenuMenuitem * mi, const gchar * property)
{
g_return_val_if_fail(DBUSMENU_IS_MENUITEM(mi), FALSE);
g_return_val_if_fail(property != NULL, FALSE);
@@ -1590,8 +1599,6 @@ dbusmenu_menuitem_properties_variant (DbusmenuMenuitem * mi, const gchar ** prop
*
* This function sets the internal value of whether this is a
* root node or not.
- *
- * Return value: None
*/
void
dbusmenu_menuitem_set_root (DbusmenuMenuitem * mi, gboolean root)
@@ -1628,7 +1635,7 @@ dbusmenu_menuitem_get_root (DbusmenuMenuitem * mi)
*
* This function will put at least one entry if this menu item has no children.
* If it has children it will put two for this entry, one representing the
- * start tag and one that is a closing tag. It will allow it's
+ * start tag and one that is a closing tag. It will allow its
* children to place their own tags in the array in between those two.
*
* Return value: (transfer full): Variant representing @properties
@@ -1658,7 +1665,9 @@ dbusmenu_menuitem_build_variant (DbusmenuMenuitem * mi, const gchar ** propertie
if (props != NULL) {
g_variant_builder_add_value(&tupleb, props);
} else {
- g_variant_builder_add_value(&tupleb, g_variant_parse(G_VARIANT_TYPE("a{sv}"), "[ ]", NULL, NULL, NULL));
+ GVariant *empty_props = g_variant_parse(G_VARIANT_TYPE("a{sv}"), "[ ]", NULL, NULL, NULL);
+ g_variant_builder_add_value(&tupleb, empty_props);
+ g_variant_unref(empty_props);
}
/* Pillage the children */
@@ -1712,7 +1721,7 @@ dbusmenu_menuitem_foreach (DbusmenuMenuitem * mi, void (*func) (DbusmenuMenuitem
func(mi, data);
GList * children = dbusmenu_menuitem_get_children(mi);
- foreach_struct_t foreach_data = {func: func, data: data};
+ foreach_struct_t foreach_data = {.func=func, .data=data};
g_list_foreach(children, foreach_helper, &foreach_data);
return;
}
diff --git a/libdbusmenu-glib/menuitem.h b/libdbusmenu-glib/menuitem.h
index 76422f9..97682db 100644
--- a/libdbusmenu-glib/menuitem.h
+++ b/libdbusmenu-glib/menuitem.h
@@ -409,9 +409,9 @@ typedef void (*dbusmenu_menuitem_about_to_show_cb) (DbusmenuMenuitem * mi, gpoin
* @properties: (allow-none): A list of properties that should be the only ones in the resulting variant structure
*
* This is the function that is called to represent this menu item
- * as a variant. Should call it's own children.
+ * as a variant. Should call its own children.
*
- * Return value: (transfer full): A variant representing this item and it's children
+ * Return value: (transfer full): A variant representing this item and its children
*/
typedef GVariant * (*dbusmenu_menuitem_buildvariant_slot_t) (DbusmenuMenuitem * mi, gchar ** properties);
@@ -455,7 +455,7 @@ struct _DbusmenuMenuitemClass
/* Virtual functions */
dbusmenu_menuitem_buildvariant_slot_t buildvariant;
void (*handle_event) (DbusmenuMenuitem * mi, const gchar * name, GVariant * variant, guint timestamp);
- void (*send_about_to_show) (DbusmenuMenuitem * mi, void (*cb) (DbusmenuMenuitem * mi, gpointer user_data), gpointer cb_data);
+ void (*send_about_to_show) (DbusmenuMenuitem * mi, dbusmenu_menuitem_about_to_show_cb cb, gpointer cb_data);
void (*show_to_user) (DbusmenuMenuitem * mi, guint timestamp, gpointer cb_data);
gboolean (*about_to_show) (void);
@@ -498,12 +498,12 @@ gboolean dbusmenu_menuitem_property_set_variant (DbusmenuMenuitem * mi, const gc
gboolean dbusmenu_menuitem_property_set_bool (DbusmenuMenuitem * mi, const gchar * property, const gboolean value);
gboolean dbusmenu_menuitem_property_set_int (DbusmenuMenuitem * mi, const gchar * property, const gint value);
gboolean dbusmenu_menuitem_property_set_byte_array (DbusmenuMenuitem * mi, const gchar * property, const guchar * value, gsize nelements);
-const gchar * dbusmenu_menuitem_property_get (DbusmenuMenuitem * mi, const gchar * property);
-GVariant * dbusmenu_menuitem_property_get_variant (DbusmenuMenuitem * mi, const gchar * property);
-gboolean dbusmenu_menuitem_property_get_bool (DbusmenuMenuitem * mi, const gchar * property);
-gint dbusmenu_menuitem_property_get_int (DbusmenuMenuitem * mi, const gchar * property);
-const guchar * dbusmenu_menuitem_property_get_byte_array (DbusmenuMenuitem * mi, const gchar * property, gsize * nelements);
-gboolean dbusmenu_menuitem_property_exist (DbusmenuMenuitem * mi, const gchar * property);
+const gchar * dbusmenu_menuitem_property_get (const DbusmenuMenuitem * mi, const gchar * property);
+GVariant * dbusmenu_menuitem_property_get_variant (const DbusmenuMenuitem * mi, const gchar * property);
+gboolean dbusmenu_menuitem_property_get_bool (const DbusmenuMenuitem * mi, const gchar * property);
+gint dbusmenu_menuitem_property_get_int (const DbusmenuMenuitem * mi, const gchar * property);
+const guchar * dbusmenu_menuitem_property_get_byte_array (const DbusmenuMenuitem * mi, const gchar * property, gsize * nelements);
+gboolean dbusmenu_menuitem_property_exist (const DbusmenuMenuitem * mi, const gchar * property);
GList * dbusmenu_menuitem_properties_list (DbusmenuMenuitem * mi) G_GNUC_WARN_UNUSED_RESULT;
GHashTable * dbusmenu_menuitem_properties_copy (DbusmenuMenuitem * mi);
void dbusmenu_menuitem_property_remove (DbusmenuMenuitem * mi, const gchar * property);
@@ -528,7 +528,7 @@ void dbusmenu_menuitem_show_to_user (DbusmenuMenuitem * mi, guint timestamp);
* and copied over to the client side where it gets rendered. As
* the server starts to change it, and grow it, and do all kinds
* of fun stuff that information is transfered over DBus and the
- * client updates it's understanding of the object model.
+ * client updates its understanding of the object model.
*
* Most people using either the client or the server should be
* able to deal mostly with #DbusmenuMenuitem objects. These
diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c
index f47bb5d..e07af27 100644
--- a/libdbusmenu-glib/server.c
+++ b/libdbusmenu-glib/server.c
@@ -215,9 +215,9 @@ static gboolean layout_update_idle (gpointer user_data);
static GDBusNodeInfo * dbusmenu_node_info = NULL;
static GDBusInterfaceInfo * dbusmenu_interface_info = NULL;
static const GDBusInterfaceVTable dbusmenu_interface_table = {
- method_call: bus_method_call,
- get_property: bus_get_prop,
- set_property: NULL /* No properties that can be set */
+ .method_call = bus_method_call,
+ .get_property = bus_get_prop,
+ .set_property = NULL /* No properties that can be set */
};
static method_table_t dbusmenu_method_table[METHOD_COUNT];
@@ -292,7 +292,7 @@ dbusmenu_server_class_init (DbusmenuServerClass *class)
@arg2: The timestamp of when the event happened
This is signaled when a menuitem under this server
- sends it's activate signal.
+ sends its activate signal.
*/
signals[ITEM_ACTIVATION] = g_signal_new(DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION,
G_TYPE_FROM_CLASS(class),
@@ -1070,8 +1070,6 @@ menuitem_property_idle (gpointer user_data)
g_error_free(error);
megadata[0] = NULL;
error_nosend = TRUE;
- } else {
- g_variant_ref_sink(megadata[0]);
}
}
@@ -1088,8 +1086,6 @@ menuitem_property_idle (gpointer user_data)
g_error_free(error);
megadata[1] = NULL;
error_nosend = TRUE;
- } else {
- g_variant_ref_sink(megadata[1]);
}
}
@@ -1331,6 +1327,9 @@ bus_get_layout (DbusmenuServer * server, GVariant * params, GDBusMethodInvocatio
if (mi != NULL) {
items = dbusmenu_menuitem_build_variant(mi, props, recurse);
+ if (items) {
+ g_variant_ref_sink(items);
+ }
}
}
g_free(props);
@@ -1360,6 +1359,8 @@ bus_get_layout (DbusmenuServer * server, GVariant * params, GDBusMethodInvocatio
g_variant_builder_add_value(&tuplebuilder, g_variant_new_uint32(revision));
g_variant_builder_add_value(&tuplebuilder, items);
+ g_variant_unref(items);
+
GVariant * retval = g_variant_builder_end(&tuplebuilder);
// g_debug("Sending layout type: %s", g_variant_get_type_string(retval));
g_dbus_method_invocation_return_value(invocation,
@@ -1504,6 +1505,9 @@ bus_get_group_properties (DbusmenuServer * server, GVariant * params, GDBusMetho
g_variant_builder_init(&wbuilder, G_VARIANT_TYPE_TUPLE);
g_variant_builder_add(&wbuilder, "i", id);
GVariant * props = dbusmenu_menuitem_properties_variant(mi, NULL);
+ if (props != NULL) {
+ g_variant_ref(props);
+ }
if (props == NULL) {
GError * error = NULL;
@@ -1516,6 +1520,7 @@ bus_get_group_properties (DbusmenuServer * server, GVariant * params, GDBusMetho
}
g_variant_builder_add_value(&wbuilder, props);
+ g_variant_unref(props);
GVariant * mi_data = g_variant_builder_end(&wbuilder);
g_variant_builder_add_value(&builder, mi_data);
@@ -1613,6 +1618,7 @@ bus_get_children (DbusmenuServer * server, GVariant * params, GDBusMethodInvocat
GVariant * end = g_variant_builder_end(&builder);
ret = g_variant_new_tuple(&end, 1);
+ g_variant_ref_sink(ret);
} else {
GError * error = NULL;
ret = g_variant_parse(G_VARIANT_TYPE("(a(ia{sv}))"), "([(0, {})],)", NULL, NULL, &error);
@@ -1624,6 +1630,7 @@ bus_get_children (DbusmenuServer * server, GVariant * params, GDBusMethodInvocat
}
g_dbus_method_invocation_return_value(invocation, ret);
+ g_variant_unref(ret);
return;
}
@@ -1705,6 +1712,8 @@ bus_event (DbusmenuServer * server, GVariant * params, GDBusMethodInvocation * i
} else {
if (~g_dbus_message_get_flags (g_dbus_method_invocation_get_message (invocation)) & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED) {
g_dbus_method_invocation_return_value(invocation, NULL);
+ } else {
+ g_object_unref(invocation);
}
}
@@ -1755,6 +1764,8 @@ bus_event_group (DbusmenuServer * server, GVariant * params, GDBusMethodInvocati
if (gotone) {
if (~g_dbus_message_get_flags (g_dbus_method_invocation_get_message (invocation)) & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED) {
g_dbus_method_invocation_return_value(invocation, g_variant_new_tuple(&errors, 1));
+ } else {
+ g_object_unref(invocation);
}
} else {
gchar * ids = g_variant_print(errors, FALSE);
@@ -1867,6 +1878,8 @@ bus_about_to_show_group (DbusmenuServer * server, GVariant * params, GDBusMethod
g_variant_builder_add_value(&tuple, errors);
g_dbus_method_invocation_return_value(invocation, g_variant_builder_end(&tuple));
+ } else {
+ g_object_unref(invocation);
}
} else {
gchar * ids = g_variant_print(errors, FALSE);
diff --git a/libdbusmenu-gtk/Makefile.am b/libdbusmenu-gtk/Makefile.am
index b10bea0..ff8555e 100644
--- a/libdbusmenu-gtk/Makefile.am
+++ b/libdbusmenu-gtk/Makefile.am
@@ -157,14 +157,14 @@ if HAVE_VALA
if HAVE_INTROSPECTION
vapidir = $(datadir)/vala/vapi
-vapi_DATA = dbusmenu-gtk$(VER)-0.4.vapi
+vapi_DATA = DbusmenuGtk$(VER)-0.4.vapi
-dbusmenu-gtk$(VER)-0.4.vapi: DbusmenuGtk$(VER)-0.4.tmp.gir Makefile.am
- $(VALA_API_GEN) --library=dbusmenu-gtk$(VER)-0.4 \
+DbusmenuGtk$(VER)-0.4.vapi: DbusmenuGtk$(VER)-0.4.tmp.gir Makefile.am
+ $(VALA_API_GEN) --library=DbusmenuGtk$(VER)-0.4 \
--pkg gdk-pixbuf-2.0 \
--pkg $(GTKVALA) \
--pkg atk \
- --pkg dbusmenu-glib-0.4 \
+ --pkg Dbusmenu-0.4 \
--vapidir=$(top_builddir)/libdbusmenu-glib \
$<
diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c
index 60af93f..d345313 100644
--- a/libdbusmenu-gtk/client.c
+++ b/libdbusmenu-gtk/client.c
@@ -130,16 +130,31 @@ dbusmenu_gtkclient_init (DbusmenuGtkClient *self)
return;
}
+static void
+clear_shortcut_foreach (DbusmenuMenuitem *mi, gpointer gclient)
+{
+ guint key = 0;
+ GtkMenuItem * gmi;
+ GdkModifierType mod = 0;
+ DbusmenuGtkClient * client = DBUSMENU_GTKCLIENT (gclient);
+
+ gmi = dbusmenu_gtkclient_menuitem_get (client, mi);
+ dbusmenu_gtkclient_menuitem_get (client, mi);
+ dbusmenu_menuitem_property_get_shortcut (mi, &key, &mod);
+ if (key)
+ gtk_widget_remove_accelerator (GTK_WIDGET (gmi), client->priv->agroup, key, mod);
+}
+
/* Just calling the super class. Future use. */
static void
dbusmenu_gtkclient_dispose (GObject *object)
{
- DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(object);
+ DbusmenuMenuitem * root;
+ DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT(object)->priv;
- if (priv->agroup != NULL) {
- g_object_unref(priv->agroup);
- priv->agroup = NULL;
- }
+ if ((root = dbusmenu_client_get_root (DBUSMENU_CLIENT(object))))
+ dbusmenu_menuitem_foreach (root, clear_shortcut_foreach, object);
+ g_clear_object (&priv->agroup);
if (priv->old_themedirs) {
remove_theme_dirs(gtk_icon_theme_get_default(), priv->old_themedirs);
@@ -161,7 +176,6 @@ dbusmenu_gtkclient_dispose (GObject *object)
static void
dbusmenu_gtkclient_finalize (GObject *object)
{
-
G_OBJECT_CLASS (dbusmenu_gtkclient_parent_class)->finalize (object);
return;
}
@@ -193,7 +207,7 @@ theme_dir_ref (GtkIconTheme * theme, GHashTable * db, const gchar * dir)
return;
}
-/* Unreference the theme directory, and if it's count goes to zero then
+/* Unreference the theme directory, and if its count goes to zero then
we need to remove it from the search path. */
static void
theme_dir_unref (GtkIconTheme * theme, GHashTable * db, const gchar * dir)
@@ -361,8 +375,6 @@ do_swap_agroup (DbusmenuMenuitem * mi, gpointer userdata) {
static void
swap_agroup (DbusmenuMenuitem *mi, gpointer userdata) {
do_swap_agroup (mi, userdata);
-
- return; /* See what I did here, Ted? :) */
}
/* Refresh the shortcut for an entry */
@@ -462,7 +474,7 @@ static const gchar * data_delayed_close = "dbusmenugtk-data-delayed-close";
static void
menu_item_start_activating(DbusmenuMenuitem * mi)
{
- /* Mark this item and all it's parents as activating */
+ /* Mark this item and all its parents as activating */
DbusmenuMenuitem * parent = mi;
do {
g_object_set_data(G_OBJECT(parent), data_activating,
@@ -485,7 +497,7 @@ menu_item_stop_activating(DbusmenuMenuitem * mi)
if (!menu_item_is_activating(mi))
return;
- /* Mark this item and all it's parents as not activating and finally
+ /* Mark this item and all its parents as not activating and finally
send their queued close event. */
g_object_set_data(G_OBJECT(mi), data_activating, GINT_TO_POINTER(FALSE));
@@ -1180,7 +1192,11 @@ image_property_handle (DbusmenuMenuitem * item, const gchar * property, GVariant
/* If we have an image already built from a name that is
way better than a pixbuf. Keep it. */
if (gtkimage != NULL && (gtk_image_get_storage_type(GTK_IMAGE(gtkimage)) == GTK_IMAGE_ICON_NAME || gtk_image_get_storage_type(GTK_IMAGE(gtkimage)) == GTK_IMAGE_EMPTY)) {
- return;
+ const gchar *icon_name = NULL;
+ gtk_image_get_icon_name (GTK_IMAGE(gtkimage), &icon_name, NULL);
+ if ((icon_name != NULL) && gtk_icon_theme_has_icon(gtk_icon_theme_get_default(), icon_name)) {
+ return;
+ }
}
}
diff --git a/libdbusmenu-gtk/genericmenuitem-enum-types.h.in b/libdbusmenu-gtk/genericmenuitem-enum-types.h.in
index 5758438..afd9132 100644
--- a/libdbusmenu-gtk/genericmenuitem-enum-types.h.in
+++ b/libdbusmenu-gtk/genericmenuitem-enum-types.h.in
@@ -43,7 +43,7 @@ G_END_DECLS
/*** END file-tail ***/
/*** BEGIN file-production ***/
-/* Enumerations from file: "@filename@" */
+/* Enumerations from file: "@basename@" */
#include "@basename@"
/*** END file-production ***/
diff --git a/libdbusmenu-gtk/genericmenuitem.c b/libdbusmenu-gtk/genericmenuitem.c
index 75bdbbd..9707ba3 100644
--- a/libdbusmenu-gtk/genericmenuitem.c
+++ b/libdbusmenu-gtk/genericmenuitem.c
@@ -1,6 +1,6 @@
/*
A menuitem subclass that has the ability to do lots of different
-things depending on it's settings.
+things depending on its settings.
Copyright 2009 Canonical Ltd.
@@ -279,7 +279,7 @@ set_label (GtkMenuItem * menu_item, const gchar * in_label)
gchar * local_label = NULL;
switch (GENERICMENUITEM(menu_item)->priv->disposition) {
case GENERICMENUITEM_DISPOSITION_NORMAL:
- local_label = g_strdup(in_label);
+ local_label = g_markup_escape_text(in_label, -1);
break;
case GENERICMENUITEM_DISPOSITION_INFORMATIONAL:
case GENERICMENUITEM_DISPOSITION_WARNING:
diff --git a/libdbusmenu-gtk/genericmenuitem.h b/libdbusmenu-gtk/genericmenuitem.h
index 0b7df55..0164f13 100644
--- a/libdbusmenu-gtk/genericmenuitem.h
+++ b/libdbusmenu-gtk/genericmenuitem.h
@@ -1,6 +1,6 @@
/*
A menuitem subclass that has the ability to do lots of different
-things depending on it's settings.
+things depending on its settings.
Copyright 2009 Canonical Ltd.
diff --git a/libdbusmenu-gtk/menu.c b/libdbusmenu-gtk/menu.c
index 236a596..3ec419a 100644
--- a/libdbusmenu-gtk/menu.c
+++ b/libdbusmenu-gtk/menu.c
@@ -296,7 +296,7 @@ root_child_delete (DbusmenuMenuitem * root, DbusmenuMenuitem * child, DbusmenuGt
return;
}
-/* Called when the child is realized, and thus has all of it's
+/* Called when the child is realized, and thus has all of its
properties and GTK-isms. We can put it in our menu here. */
static void
child_realized (DbusmenuMenuitem * child, gpointer userdata)
diff --git a/libdbusmenu-gtk/parser.c b/libdbusmenu-gtk/parser.c
index 2f7277c..b09e984 100644
--- a/libdbusmenu-gtk/parser.c
+++ b/libdbusmenu-gtk/parser.c
@@ -60,6 +60,10 @@ typedef struct _ParserData
gulong widget_accel_handler_id;
gulong widget_toggle_handler_id;
gulong widget_visible_handler_id;
+ gulong widget_screen_changed_handler_id;
+
+ GtkSettings *settings;
+ gulong settings_notify_handler_id;
} ParserData;
@@ -116,6 +120,12 @@ static void widget_notify_cb (GtkWidget * widget,
static void widget_add_cb (GtkWidget * widget,
GtkWidget * child,
gpointer data);
+static void widget_screen_changed_cb (GtkWidget * widget,
+ GdkScreen * old_screen,
+ gpointer data);
+static void settings_notify_cb (GtkSettings * settings,
+ GParamSpec * pspec,
+ gpointer data);
static gboolean should_show_image (GtkImage * image);
static void menuitem_notify_cb (GtkWidget * widget,
GParamSpec * pspec,
@@ -130,6 +140,7 @@ static const char * interned_str_active = NULL;
static const char * interned_str_always_show_image = NULL;
static const char * interned_str_file = NULL;
static const char * interned_str_gicon = NULL;
+static const char * interned_str_gtk_menu_images = NULL;
static const char * interned_str_icon_name = NULL;
static const char * interned_str_icon_set = NULL;
static const char * interned_str_image = NULL;
@@ -155,6 +166,7 @@ ensure_interned_strings_loaded (void)
interned_str_always_show_image = g_intern_static_string ("always-show-image");
interned_str_file = g_intern_static_string ("file");
interned_str_gicon = g_intern_static_string ("gicon");
+ interned_str_gtk_menu_images = g_intern_static_string ("gtk-menu-images");
interned_str_icon_name = g_intern_static_string ("icon-name");
interned_str_icon_set = g_intern_static_string ("icon-set");
interned_str_image = g_intern_static_string ("image");
@@ -261,10 +273,47 @@ dbusmenu_gtk_parse_menu_structure (GtkWidget * widget)
DbusmenuMenuitem *
dbusmenu_gtk_parse_get_cached_item (GtkWidget * widget)
{
- if (!GTK_IS_MENU_ITEM(widget)) {
- return NULL;
- }
- return DBUSMENU_MENUITEM(g_object_get_data(G_OBJECT(widget), CACHED_MENUITEM));
+ GObject * o = NULL;
+ DbusmenuMenuitem * ret = NULL;
+
+ if (GTK_IS_MENU_ITEM (widget))
+ o = g_object_get_data (G_OBJECT(widget), CACHED_MENUITEM);
+
+ if (o && DBUSMENU_IS_MENUITEM(o))
+ ret = DBUSMENU_MENUITEM (o);
+
+ return ret;
+}
+
+/* remove our dbusmenuitem's hooks to a GtkWidget,
+ such as when either of them are being destroyed */
+static void
+disconnect_from_widget (GtkWidget * widget)
+{
+ ParserData * pdata = parser_data_get_from_widget (widget);
+
+ if (pdata && pdata->widget)
+ {
+ GObject * o;
+
+ g_assert (pdata->widget == widget);
+
+ /* stop listening to signals from the widget */
+ o = G_OBJECT (pdata->widget);
+ dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_notify_handler_id);
+ dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_add_handler_id);
+ dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_accel_handler_id);
+ dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_toggle_handler_id);
+ dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_visible_handler_id);
+ dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_screen_changed_handler_id);
+
+ /* clear the menuitem's widget pointer */
+ g_object_remove_weak_pointer (o, (gpointer*)&pdata->widget);
+ pdata->widget = NULL;
+
+ /* clear the widget's menuitem pointer */
+ g_object_set_data(o, CACHED_MENUITEM, NULL);
+ }
}
static void
@@ -285,16 +334,13 @@ parser_data_free (ParserData * pdata)
}
if (pdata->widget != NULL) {
- GObject * o = G_OBJECT(pdata->widget);
- dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_notify_handler_id);
- dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_add_handler_id);
- dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_accel_handler_id);
- dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_toggle_handler_id);
- dbusmenu_gtk_clear_signal_handler (o, &pdata->widget_visible_handler_id);
- g_object_remove_weak_pointer(o, (gpointer*)&pdata->widget);
-
- /* since the DbusmenuMenuitem is being destroyed, uncache it from the GtkWidget */
- g_object_steal_data(o, CACHED_MENUITEM);
+ disconnect_from_widget (pdata->widget);
+ }
+
+ if (pdata->settings != NULL) {
+ dbusmenu_gtk_clear_signal_handler (pdata->settings,
+ &pdata->settings_notify_handler_id);
+ g_object_unref (pdata->settings);
}
if (pdata->shell != NULL) {
@@ -321,7 +367,7 @@ parser_data_free (ParserData * pdata)
return;
}
-/* Gets the positon of the child with its' parent if it has one.
+/* Gets the positon of the child with its parent if it has one.
Returns -1 if the position is unable to be calculated. */
static gint
get_child_position (GtkWidget * child)
@@ -360,7 +406,7 @@ new_menuitem (GtkWidget * widget)
pdata->widget = widget;
g_object_add_weak_pointer(G_OBJECT (widget), (gpointer*)&pdata->widget);
- g_object_set_data(G_OBJECT(widget), CACHED_MENUITEM, item);
+ g_object_set_data_full(G_OBJECT(widget), CACHED_MENUITEM, g_object_ref(item), g_object_unref);
return item;
}
@@ -746,6 +792,10 @@ construct_dbusmenu_for_widget (GtkWidget * widget)
pdata->widget_add_handler_id = g_signal_connect (widget, "add",
G_CALLBACK (widget_add_cb), mi);
+ pdata->widget_screen_changed_handler_id = g_signal_connect (widget, "screen-changed",
+ G_CALLBACK (widget_screen_changed_cb), mi);
+ widget_screen_changed_cb (widget, NULL, mi);
+
return mi;
}
@@ -1098,6 +1148,14 @@ item_activated (DbusmenuMenuitem *item, guint timestamp, gpointer user_data)
if (GTK_IS_MENU_ITEM (child))
{
+ GtkWidget *parent = gtk_widget_get_parent(child);
+ if (GTK_IS_MENU (parent))
+ {
+ gint pos = get_child_position (child);
+ if (pos >= 0)
+ gtk_menu_set_active (GTK_MENU(parent), pos);
+ }
+
gdk_threads_enter ();
gtk_menu_item_activate (GTK_MENU_ITEM (child));
gdk_threads_leave ();
@@ -1282,6 +1340,56 @@ widget_add_cb (GtkWidget *widget,
handle_first_label (data);
}
+/* Pass NULL for pspec to update all settings at once */
+static void
+widget_screen_changed_cb (GtkWidget * widget, GdkScreen * old_screen, gpointer data)
+{
+ DbusmenuMenuitem * mi = DBUSMENU_MENUITEM(data);
+ g_return_if_fail (mi != NULL);
+
+ ParserData *pdata = (ParserData *)g_object_get_data(G_OBJECT(mi), PARSER_DATA);
+
+ if (pdata->settings != NULL)
+ {
+ dbusmenu_gtk_clear_signal_handler (pdata->settings,
+ &pdata->settings_notify_handler_id);
+ g_object_unref (pdata->settings);
+ }
+
+ pdata->settings = g_object_ref (gtk_widget_get_settings (widget));
+ pdata->settings_notify_handler_id = g_signal_connect (pdata->settings, "notify",
+ G_CALLBACK (settings_notify_cb), mi);
+
+ /* And update widget now that we have a new GtkSettings */
+ settings_notify_cb (gtk_widget_get_settings (widget), NULL, mi);
+}
+
+/* Pass NULL for pspec to update all settings at once */
+static void
+settings_notify_cb (GtkSettings * settings, GParamSpec * pspec, gpointer data)
+{
+ GValue prop_value = {0};
+ DbusmenuMenuitem * mi = DBUSMENU_MENUITEM(data);
+ g_return_if_fail (mi != NULL);
+
+ ensure_interned_strings_loaded ();
+
+ if (pspec != NULL)
+ {
+ g_value_init (&prop_value, pspec->value_type);
+ g_object_get_property (G_OBJECT (settings), pspec->name, &prop_value);
+ }
+
+ if (pspec == NULL || pspec->name == interned_str_gtk_menu_images)
+ {
+ ParserData *pdata = (ParserData *)g_object_get_data(G_OBJECT(mi), PARSER_DATA);
+ update_icon (mi, pdata, GTK_IMAGE(pdata->image));
+ }
+
+ if (pspec != NULL)
+ g_value_unset (&prop_value);
+}
+
/* A child item was added to a menu we're watching. Let's try to integrate it. */
static void
item_inserted_cb (GtkContainer *menu,
@@ -1306,24 +1414,19 @@ item_inserted_cb (GtkContainer *menu,
/* A child item was removed from a menu we're watching. */
static void
-item_removed_cb (GtkContainer *menu, GtkWidget *widget, gpointer data)
+item_removed_cb (GtkContainer *parent_w, GtkWidget *child_w, gpointer data)
{
- gpointer pmi = g_object_get_data(G_OBJECT(widget), CACHED_MENUITEM);
- if (pmi == NULL) {
- return;
- }
-
- DbusmenuMenuitem * child = DBUSMENU_MENUITEM(pmi);
+ DbusmenuMenuitem * child_mi;
- pmi = g_object_get_data(G_OBJECT(menu), CACHED_MENUITEM);
- if (pmi == NULL) {
- return;
- }
+ if ((child_mi = dbusmenu_gtk_parse_get_cached_item (child_w)))
+ {
+ DbusmenuMenuitem * parent_mi;
- DbusmenuMenuitem * parent = DBUSMENU_MENUITEM(pmi);
+ if ((parent_mi = dbusmenu_gtk_parse_get_cached_item (GTK_WIDGET(parent_w))))
+ dbusmenu_menuitem_child_delete (parent_mi, child_mi);
- dbusmenu_menuitem_child_delete(parent, child);
- return;
+ disconnect_from_widget (child_w);
+ }
}
static gboolean
diff --git a/tests/Makefile.am b/tests/Makefile.am
index df87dc8..c1918eb 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,4 +1,3 @@
-
DBUS_RUNNER=dbus-test-runner --max-wait=0
CLEANFILES=
@@ -16,10 +15,12 @@ TESTS = \
test-glib-submenu
if WANT_DBUSMENUDUMPER
+if HAVE_VALGRIND
TESTS += \
test-json \
test-json-instruction
endif
+endif
if WANT_LIBDBUSMENUGTK
TESTS += \
@@ -27,12 +28,19 @@ TESTS += \
test-gtk-label \
test-gtk-shortcut \
test-gtk-reorder \
+ test-gtk-remove \
test-gtk-parser-test
# Not working with GTK3 and a critical grab that is in
# the GTK3 code.
# test-gtk-submenu
endif
+if ENABLE_GTK_DOC
+TESTS += \
+ test_libdbusmenu_glib_gtkdoc \
+ test_libdbusmenu_gtk_gtkdoc
+endif
+
# The Python test only work on the system copy of
# dbusmenu, so while they can be usefule they're not
# good tests of what you're currently building. Handy
@@ -59,10 +67,12 @@ check_PROGRAMS = \
test-glib-simple-items
if WANT_DBUSMENUDUMPER
+if HAVE_VALGRIND
check_PROGRAMS += \
test-json-client \
test-json-server
endif
+endif
if WANT_LIBDBUSMENUGTK
check_PROGRAMS += \
@@ -71,6 +81,7 @@ check_PROGRAMS += \
test-gtk-label-server \
test-gtk-shortcut-client \
test-gtk-shortcut-server \
+ test-gtk-remove-server \
test-gtk-reorder-server \
test-gtk-submenu-server \
test-gtk-submenu-client \
@@ -82,6 +93,22 @@ XVFB_RUN=". $(srcdir)/run-xvfb.sh"
# for the GI tests, prefer/use the typelibs from the local build tree
TESTS_ENVIRONMENT = env GI_TYPELIB_PATH=$(top_builddir)/libdbusmenu-glib:$(top_builddir)/libdbusmenu-gtk:$(GI_TYPELIB_PATH)
+############################################
+# Shared vars for the dbusmenu-glib tests
+############################################
+
+DBUSMENU_GLIB_TEST_CFLAGS = \
+ -Wall -Werror \
+ -DG_DISABLE_DEPRECATED \
+ -I$(top_srcdir) \
+ $(DBUSMENUTESTS_CFLAGS) \
+ $(DBUSMENUGLIB_CFLAGS)
+
+DBUSMENU_GLIB_TEST_LDADD = \
+ $(top_builddir)/libdbusmenu-glib/libdbusmenu-glib.la \
+ $(DBUSMENUGLIB_LIBS) \
+ $(DBUSMENUTESTS_LIBS)
+
######################
# JSON Loader lib
######################
@@ -103,18 +130,11 @@ libdbusmenu_jsonloader_la_LDFLAGS = \
-export-symbols-regex "^[^_].*"
libdbusmenu_jsonloader_la_CFLAGS = \
- $(DBUSMENUGLIB_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- -I $(srcdir)/.. \
- -Wall \
- -Werror \
- -DG_DISABLE_DEPRECATED \
+ $(DBUSMENU_GLIB_TEST_CFLAGS) \
-DG_LOG_DOMAIN="\"LIBDBUSMENU-JSONLOADER\""
libdbusmenu_jsonloader_la_LIBADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS) \
- $(DBUSMENUTESTS_LIBS)
+ $(DBUSMENU_GLIB_TEST_LDADD)
pkgconfig_DATA = dbusmenu-jsonloader-0.4.pc
pkgconfigdir = $(libdir)/pkgconfig
@@ -123,16 +143,9 @@ pkgconfigdir = $(libdir)/pkgconfig
# Test GLib server
######################
-glib_server_nomenu_SOURCES = \
- glib-server-nomenu.c
-
-glib_server_nomenu_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-glib_server_nomenu_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+glib_server_nomenu_SOURCES = glib-server-nomenu.c
+glib_server_nomenu_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+glib_server_nomenu_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
######################
# Test Glib Layout
@@ -145,29 +158,13 @@ test-glib-layout: test-glib-layout-client test-glib-layout-server Makefile.am
@echo $(DBUS_RUNNER) --task ./test-glib-layout-client --task-name Client --task ./test-glib-layout-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_glib_layout_server_SOURCES = \
- test-glib-layout.h \
- test-glib-layout-server.c
-
-test_glib_layout_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_layout_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
-
-test_glib_layout_client_SOURCES = \
- test-glib-layout.h \
- test-glib-layout-client.c
-
-test_glib_layout_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
+test_glib_layout_server_SOURCES = test-glib-layout.h test-glib-layout-server.c
+test_glib_layout_server_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_layout_server_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
-test_glib_layout_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_layout_client_SOURCES = test-glib-layout.h test-glib-layout-client.c
+test_glib_layout_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_layout_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
######################
# Test Glib Events
@@ -180,27 +177,13 @@ test-glib-events: test-glib-events-client test-glib-events-server Makefile.am
@echo $(DBUS_RUNNER) --task ./test-glib-events-client --task-name Client --task ./test-glib-events-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_glib_events_server_SOURCES = \
- test-glib-events-server.c
+test_glib_events_server_SOURCES = test-glib-events-server.c
+test_glib_events_server_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_events_server_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
-test_glib_events_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_events_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
-
-test_glib_events_client_SOURCES = \
- test-glib-events-client.c
-
-test_glib_events_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_events_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_events_client_SOURCES = test-glib-events-client.c
+test_glib_events_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_events_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
################################
# Test Glib Events No Grouping
@@ -213,16 +196,9 @@ test-glib-events-nogroup: test-glib-events-nogroup-client test-glib-events-serve
@echo $(DBUS_RUNNER) --task ./test-glib-events-nogroup-client --task-name Client --task ./test-glib-events-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_glib_events_nogroup_client_SOURCES = \
- test-glib-events-nogroup-client.c
-
-test_glib_events_nogroup_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_events_nogroup_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_events_nogroup_client_SOURCES = test-glib-events-nogroup-client.c
+test_glib_events_nogroup_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_events_nogroup_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
######################
# Test JSON
@@ -233,7 +209,7 @@ test-json: test-json-client test-json-server Makefile.am
@echo export UBUNTU_MENUPROXY="" >> $@
@echo export G_DEBUG=fatal_criticals >> $@
@echo $(XVFB_RUN) >> $@
- @echo $(DBUS_RUNNER) --task ./test-json-client --wait-for org.dbusmenu.test --task-name Client --parameter $(top_builddir)/tools/dbusmenu-dumper --parameter test-json-01.output.json --ignore-return --task ./test-json-server --task-name Server --parameter $(srcdir)/test-json-01.json --ignore-return >> $@
+ @echo $(DBUS_RUNNER) --task ./test-json-client --wait-for org.dbusmenu.test --task-name Client --parameter $(top_builddir)/tools/dbusmenu-dumper --parameter test-json-01.output.json --task ./test-json-server --task-name Server --parameter $(srcdir)/test-json-01.json >> $@
@echo diff $(srcdir)/test-json-01.json test-json-01.output.json \> /dev/null >> $@
@chmod +x $@
@@ -243,30 +219,17 @@ test_json_server_SOURCES = \
test-json-server.c
test_json_server_CFLAGS = \
- -I $(srcdir)/.. \
- -I $(srcdir) \
- $(DBUSMENUGLIB_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUTESTSVALGRIND_CFLAGS) \
- -Wall -Werror
+ $(DBUSMENU_GLIB_TEST_CFLAGS) \
+ -I$(srcdir) \
+ $(DBUSMENUTESTSVALGRIND_CFLAGS)
test_json_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
libdbusmenu-jsonloader.la \
- $(DBUSMENUTESTS_LIBS) \
- $(DBUSMENUGLIB_LIBS)
+ $(DBUSMENU_GLIB_TEST_LDADD)
-test_json_client_SOURCES = \
- test-json-client.c
-
-test_json_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_json_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUTESTS_LIBS) \
- $(DBUSMENUGLIB_LIBS)
+test_json_client_SOURCES = test-json-client.c
+test_json_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_json_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
#########################
# Test JSON Instructions
@@ -277,7 +240,7 @@ test-json-instruction: test-json-client test-json-server test-json-instruction-c
@echo export UBUNTU_MENUPROXY="" >> $@
@echo export G_DEBUG=fatal_criticals >> $@
@echo $(XVFB_RUN) >> $@
- @echo $(DBUS_RUNNER) --task $(builddir)/test-json-client --wait-for org.dbusmenu.test --task-name Client --parameter $(top_builddir)/tools/dbusmenu-dumper --parameter /dev/null --ignore-return --task libtool --parameter --mode=execute --parameter $(srcdir)/test-json-instruction-count --parameter $(builddir)/test-json-server --task-name Server --parameter $(srcdir)/test-json-01.json --ignore-return >> $@
+ @echo $(DBUS_RUNNER) --task $(builddir)/test-json-client --wait-for org.dbusmenu.test --task-name Client --parameter $(top_builddir)/tools/dbusmenu-dumper --parameter /dev/null --task libtool --parameter --mode=execute --parameter $(srcdir)/test-json-instruction-count --parameter $(builddir)/test-json-server --task-name Server --parameter $(srcdir)/test-json-01.json >> $@
@chmod +x $@
EXTRA_DIST += \
@@ -298,29 +261,13 @@ test-glib-submenu: test-glib-submenu-client test-glib-submenu-server Makefile.am
@echo $(DBUS_RUNNER) --task ./test-glib-submenu-client --task-name Client --task ./test-glib-submenu-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_glib_submenu_server_SOURCES = \
- test-glib-submenu.h \
- test-glib-submenu-server.c
-
-test_glib_submenu_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_submenu_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_submenu_server_SOURCES = test-glib-submenu.h test-glib-submenu-server.c
+test_glib_submenu_server_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_submenu_server_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
-test_glib_submenu_client_SOURCES = \
- test-glib-submenu.h \
- test-glib-submenu-client.c
-
-test_glib_submenu_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_submenu_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_submenu_client_SOURCES = test-glib-submenu.h test-glib-submenu-client.c
+test_glib_submenu_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_submenu_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
######################
# Test Glib Object
@@ -335,16 +282,9 @@ test-glib-objects-test: test-glib-objects Makefile.am
@echo $(DBUS_RUNNER) --task gtester --task-name test --parameter --verbose --parameter -k --parameter -o --parameter $(OBJECT_XML_REPORT) --parameter ./test-glib-objects >> $@
@chmod +x $@
-test_glib_objects_SOURCES = \
- test-glib-objects.c
-
-test_glib_objects_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_objects_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_objects_SOURCES = test-glib-objects.c
+test_glib_objects_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_objects_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
DISTCLEANFILES += $(OBJECT_XML_REPORT)
@@ -359,29 +299,13 @@ test-glib-properties: test-glib-properties-client test-glib-properties-server Ma
@echo $(DBUS_RUNNER) --task ./test-glib-properties-client --task-name Client --task ./test-glib-properties-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_glib_properties_server_SOURCES = \
- test-glib-properties.h \
- test-glib-properties-server.c
+test_glib_properties_server_SOURCES = test-glib-properties.h test-glib-properties-server.c
+test_glib_properties_server_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_properties_server_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
-test_glib_properties_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_properties_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
-
-test_glib_properties_client_SOURCES = \
- test-glib-properties.h \
- test-glib-properties-client.c
-
-test_glib_properties_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_properties_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_properties_client_SOURCES = test-glib-properties.h test-glib-properties-client.c
+test_glib_properties_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_properties_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
######################
# Test Glib Proxy
@@ -399,58 +323,40 @@ test-glib-proxy: test-glib-proxy-client test-glib-proxy-server test-glib-proxy-p
@echo --task ./test-glib-proxy-proxy --parameter test.proxy.last_proxy --parameter test.proxy.server --task-name Proxy05 --ignore-return >> $@
@chmod +x $@
-test_glib_proxy_server_SOURCES = \
- test-glib-proxy.h \
- test-glib-proxy-server.c
-
-test_glib_proxy_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_proxy_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
-
-test_glib_proxy_client_SOURCES = \
- test-glib-proxy.h \
- test-glib-proxy-client.c
+test_glib_proxy_server_SOURCES = test-glib-proxy.h test-glib-proxy-server.c
+test_glib_proxy_server_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_proxy_server_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
-test_glib_proxy_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
+test_glib_proxy_client_SOURCES = test-glib-proxy.h test-glib-proxy-client.c
+test_glib_proxy_client_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_proxy_client_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
-test_glib_proxy_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
-
-test_glib_proxy_proxy_SOURCES = \
- test-glib-proxy.h \
- test-glib-proxy-proxy.c
-
-test_glib_proxy_proxy_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_glib_proxy_proxy_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+test_glib_proxy_proxy_SOURCES = test-glib-proxy.h test-glib-proxy-proxy.c
+test_glib_proxy_proxy_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_proxy_proxy_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
#########################
# Test Glib Simple Items
#########################
-test_glib_simple_items_SOURCES = \
- test-glib-simple-items.c
+test_glib_simple_items_SOURCES = test-glib-simple-items.c
+test_glib_simple_items_CFLAGS = $(DBUSMENU_GLIB_TEST_CFLAGS)
+test_glib_simple_items_LDADD = $(DBUSMENU_GLIB_TEST_LDADD)
+
+EXTRA_DIST += test-glib-simple-items.py
-test_glib_simple_items_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
+############################################
+# Shared vars for the dbusmenu-gtk tests
+############################################
-test_glib_simple_items_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- $(DBUSMENUGLIB_LIBS)
+DBUSMENU_GTK_TEST_CFLAGS = \
+ $(DBUSMENUGTK_CFLAGS) \
+ $(DBUSMENU_GLIB_TEST_CFLAGS)
-EXTRA_DIST += test-glib-simple-items.py
+DBUSMENU_GTK_TEST_LDADD = \
+ $(top_builddir)/libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
+ $(DBUSMENUGTK_LIBS) \
+ $(DBUSMENU_GLIB_TEST_LDADD)
######################
# Test GTK Object
@@ -466,21 +372,9 @@ test-gtk-objects-test: test-gtk-objects Makefile.am
@echo $(DBUS_RUNNER) --task gtester --task-name test --parameter --verbose --parameter -k --parameter -o --parameter $(GTK_OBJECT_XML_REPORT) --parameter ./test-gtk-objects >> $@
@chmod +x $@
-test_gtk_objects_SOURCES = \
- test-gtk-objects.c
-
-test_gtk_objects_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) \
- $(DBUSMENUGTK_CFLAGS) \
- -DSRCDIR="\"$(srcdir)\"" \
- -Wall -Werror
-
-test_gtk_objects_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGLIB_LIBS) \
- $(DBUSMENUGTK_LIBS)
+test_gtk_objects_SOURCES = test-gtk-objects.c
+test_gtk_objects_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS) -DSRCDIR="\"$(srcdir)\""
+test_gtk_objects_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
DISTCLEANFILES += $(GTK_OBJECT_XML_REPORT)
@@ -498,21 +392,9 @@ test-gtk-parser-test: test-gtk-parser Makefile.am
@echo gtester --verbose -k -o $(GTK_PARSER_XML_REPORT) ./test-gtk-parser >> $@
@chmod +x $@
-test_gtk_parser_SOURCES = \
- test-gtk-parser.c
-
-test_gtk_parser_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGLIB_CFLAGS) \
- $(DBUSMENUGTK_CFLAGS) \
- -DSRCDIR="\"$(srcdir)\"" \
- -Wall -Werror
-
-test_gtk_parser_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGLIB_LIBS) \
- $(DBUSMENUGTK_LIBS)
+test_gtk_parser_SOURCES = test-gtk-parser.c
+test_gtk_parser_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS) -DSRCDIR="\"$(srcdir)\""
+test_gtk_parser_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
DISTCLEANFILES += $(GTK_PARSER_XML_REPORT)
@@ -528,36 +410,13 @@ test-gtk-label: test-gtk-label-client test-gtk-label-server test-gtk-label.json
@echo $(DBUS_RUNNER) --task ./test-gtk-label-client --task-name Client --task ./test-gtk-label-server --parameter $(srcdir)/test-gtk-label.json --task-name Server --ignore-return >> $@
@chmod +x $@
-test_gtk_label_server_SOURCES = \
- test-gtk-label-server.c
-
-test_gtk_label_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_label_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- libdbusmenu-jsonloader.la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
+test_gtk_label_server_SOURCES = test-gtk-label-server.c
+test_gtk_label_server_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_label_server_LDADD = libdbusmenu-jsonloader.la $(DBUSMENU_GTK_TEST_LDADD)
-test_gtk_label_client_SOURCES = \
- test-gtk-label-client.c
-
-test_gtk_label_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_label_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
+test_gtk_label_client_SOURCES = test-gtk-label-client.c
+test_gtk_label_client_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_label_client_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
#########################
# Test GTK Shortcut
@@ -571,35 +430,13 @@ test-gtk-shortcut: test-gtk-shortcut-client test-gtk-shortcut-server Makefile.am
@echo $(DBUS_RUNNER) --task ./test-gtk-shortcut-client --task-name Client --task ./test-gtk-shortcut-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_gtk_shortcut_server_SOURCES = \
- test-gtk-shortcut-server.c
-
-test_gtk_shortcut_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_shortcut_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
-
-test_gtk_shortcut_client_SOURCES = \
- test-gtk-shortcut-client.c
+test_gtk_shortcut_server_SOURCES = test-gtk-shortcut-server.c
+test_gtk_shortcut_server_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_shortcut_server_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
-test_gtk_shortcut_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_shortcut_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
+test_gtk_shortcut_client_SOURCES = test-gtk-shortcut-client.c
+test_gtk_shortcut_client_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_shortcut_client_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
#########################
# Test GTK Shortcut Python
@@ -617,6 +454,22 @@ EXTRA_DIST += test-gtk-shortcut-client.py
CLEANFILES += test-gtk-shortcut-client.pyc
#########################
+# Test GTK Remove
+#########################
+
+test-gtk-remove: test-gtk-remove-server Makefile.am
+ @echo "#!/bin/bash" > $@
+ @echo export UBUNTU_MENUPROXY="" >> $@
+ @echo export G_DEBUG=fatal_criticals >> $@
+ @echo $(XVFB_RUN) >> $@
+ @echo $(DBUS_RUNNER) --task ./test-gtk-remove-server --parameter $(srcdir)/test-gtk-label.json --task-name Server --ignore-return >> $@
+ @chmod +x $@
+
+test_gtk_remove_server_SOURCES = test-gtk-remove-server.c
+test_gtk_remove_server_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_remove_server_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
+
+#########################
# Test GTK Reorder
#########################
@@ -628,20 +481,9 @@ test-gtk-reorder: test-gtk-label-client test-gtk-reorder-server Makefile.am
@echo $(DBUS_RUNNER) --task ./test-gtk-label-client --task-name Client --task ./test-gtk-reorder-server --parameter $(srcdir)/test-gtk-label.json --task-name Server --ignore-return >> $@
@chmod +x $@
-test_gtk_reorder_server_SOURCES = \
- test-gtk-reorder-server.c
-
-test_gtk_reorder_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_reorder_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
+test_gtk_reorder_server_SOURCES = test-gtk-reorder-server.c
+test_gtk_reorder_server_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_reorder_server_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
#########################
# Test GTK Submenu
@@ -655,35 +497,13 @@ test-gtk-submenu: test-gtk-submenu-client test-gtk-submenu-server Makefile.am
@echo $(DBUS_RUNNER) --task ./test-gtk-submenu-client --task-name Client --task ./test-gtk-submenu-server --task-name Server --ignore-return >> $@
@chmod +x $@
-test_gtk_submenu_server_SOURCES = \
- test-gtk-submenu-server.c
-
-test_gtk_submenu_server_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_submenu_server_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
-
-test_gtk_submenu_client_SOURCES = \
- test-gtk-submenu-client.c
+test_gtk_submenu_server_SOURCES = test-gtk-submenu-server.c
+test_gtk_submenu_server_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_submenu_server_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
-test_gtk_submenu_client_CFLAGS = \
- -I $(srcdir)/.. \
- $(DBUSMENUGTK_CFLAGS) \
- $(DBUSMENUTESTS_CFLAGS) \
- $(DBUSMENUGLIB_CFLAGS) -Wall -Werror
-
-test_gtk_submenu_client_LDADD = \
- ../libdbusmenu-glib/libdbusmenu-glib.la \
- ../libdbusmenu-gtk/libdbusmenu-gtk$(VER).la \
- $(DBUSMENUGTK_LIBS) \
- $(DBUSMENUTESTS_LIBS)
+test_gtk_submenu_client_SOURCES = test-gtk-submenu-client.c
+test_gtk_submenu_client_CFLAGS = $(DBUSMENU_GTK_TEST_CFLAGS)
+test_gtk_submenu_client_LDADD = $(DBUSMENU_GTK_TEST_LDADD)
#########################
# Test Mago
@@ -706,6 +526,18 @@ test-mago: test-gtk-label-client test-gtk-label-server $(srcdir)/dbusmenu-gtk/ma
# Other
#########################
+test_libdbusmenu_glib_gtkdoc:
+ @echo "#!/bin/bash" > $@
+ @echo cd $(abs_top_builddir)/docs/libdbusmenu-glib/reference >> $@
+ @echo gtester --verbose -k $(GTKDOC_CHECK) >> $@
+ @chmod +x $@
+
+test_libdbusmenu_gtk_gtkdoc:
+ @echo "#!/bin/bash" > $@
+ @echo cd $(abs_top_builddir)/docs/libdbusmenu-gtk/reference >> $@
+ @echo gtester --verbose -k $(GTKDOC_CHECK) >> $@
+ @chmod +x $@
+
examplesdir = $(docdir)/examples/
examples_DATA = \
diff --git a/tests/glib-server-nomenu.c b/tests/glib-server-nomenu.c
index fb2c61e..e2bd48f 100644
--- a/tests/glib-server-nomenu.c
+++ b/tests/glib-server-nomenu.c
@@ -27,8 +27,6 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuServer * server = dbusmenu_server_new("/org/test");
DbusmenuMenuitem * menuitem = dbusmenu_menuitem_new();
dbusmenu_menuitem_property_set(menuitem, "test", "test");
diff --git a/tests/test-glib-events-client.c b/tests/test-glib-events-client.c
index 2cc5439..a284760 100644
--- a/tests/test-glib-events-client.c
+++ b/tests/test-glib-events-client.c
@@ -114,8 +114,6 @@ timer_func (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuClient * client = dbusmenu_client_new("org.dbusmenu.test", "/org/test");
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED, G_CALLBACK(layout_updated), NULL);
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT, G_CALLBACK(event_status), GINT_TO_POINTER(USER_VALUE));
diff --git a/tests/test-glib-events-nogroup-client.c b/tests/test-glib-events-nogroup-client.c
index f87660b..b0fbc9f 100644
--- a/tests/test-glib-events-nogroup-client.c
+++ b/tests/test-glib-events-nogroup-client.c
@@ -118,8 +118,6 @@ timer_func (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuClient * client = dbusmenu_client_new("org.dbusmenu.test", "/org/test");
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED, G_CALLBACK(layout_updated), NULL);
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT, G_CALLBACK(event_status), GINT_TO_POINTER(USER_VALUE));
diff --git a/tests/test-glib-events-server.c b/tests/test-glib-events-server.c
index ab72c6b..148af29 100644
--- a/tests/test-glib-events-server.c
+++ b/tests/test-glib-events-server.c
@@ -68,8 +68,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"org.dbusmenu.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-glib-layout-client.c b/tests/test-glib-layout-client.c
index 3afe042..83b47ee 100644
--- a/tests/test-glib-layout-client.c
+++ b/tests/test-glib-layout-client.c
@@ -114,8 +114,6 @@ timer_func (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuClient * client = dbusmenu_client_new("org.dbusmenu.test", "/org/test");
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED, G_CALLBACK(layout_updated), NULL);
diff --git a/tests/test-glib-layout-server.c b/tests/test-glib-layout-server.c
index e289349..f92a18c 100644
--- a/tests/test-glib-layout-server.c
+++ b/tests/test-glib-layout-server.c
@@ -90,8 +90,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"org.dbusmenu.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-glib-objects.c b/tests/test-glib-objects.c
index 9c99280..ff97e6f 100644
--- a/tests/test-glib-objects.c
+++ b/tests/test-glib-objects.c
@@ -324,7 +324,6 @@ test_glib_objects_suite (void)
gint
main (gint argc, gchar * argv[])
{
- g_type_init();
g_test_init(&argc, &argv, NULL);
/* Test suites */
diff --git a/tests/test-glib-properties-client.c b/tests/test-glib-properties-client.c
index ae7b80b..3d6aa9d 100644
--- a/tests/test-glib-properties-client.c
+++ b/tests/test-glib-properties-client.c
@@ -152,8 +152,6 @@ layout_verify_timer (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
/* Make sure the server starts up and all that */
g_usleep(500000);
diff --git a/tests/test-glib-properties-server.c b/tests/test-glib-properties-server.c
index 4248ea2..283a05f 100644
--- a/tests/test-glib-properties-server.c
+++ b/tests/test-glib-properties-server.c
@@ -86,8 +86,6 @@ timer_func (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
server = dbusmenu_server_new("/org/test");
timer_func(NULL);
diff --git a/tests/test-glib-proxy-client.c b/tests/test-glib-proxy-client.c
index d20c27c..8f760a2 100644
--- a/tests/test-glib-proxy-client.c
+++ b/tests/test-glib-proxy-client.c
@@ -159,8 +159,6 @@ layout_verify_timer (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuClient * client = dbusmenu_client_new("test.proxy.first_proxy", "/org/test");
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED, G_CALLBACK(layout_updated), NULL);
diff --git a/tests/test-glib-proxy-proxy.c b/tests/test-glib-proxy-proxy.c
index 8a17ead..f5acc92 100644
--- a/tests/test-glib-proxy-proxy.c
+++ b/tests/test-glib-proxy-proxy.c
@@ -49,8 +49,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
if (argc != 3) {
g_error ("Need two params");
return 1;
diff --git a/tests/test-glib-proxy-server.c b/tests/test-glib-proxy-server.c
index a5dfd4e..6823cec 100644
--- a/tests/test-glib-proxy-server.c
+++ b/tests/test-glib-proxy-server.c
@@ -120,8 +120,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"test.proxy.server",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-glib-simple-items.c b/tests/test-glib-simple-items.c
index 3ea5480..f4086a4 100644
--- a/tests/test-glib-simple-items.c
+++ b/tests/test-glib-simple-items.c
@@ -25,15 +25,13 @@ dummy_users (DbusmenuMenuitem * root) {
static gboolean
quititall (gpointer data)
{
- g_main_quit(mainloop);
+ g_main_loop_quit(mainloop);
return FALSE;
}
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuServer * server = dbusmenu_server_new("/test/object");
root_menuitem = dbusmenu_menuitem_new();
dbusmenu_server_set_root(server, root_menuitem);
diff --git a/tests/test-glib-submenu-client.c b/tests/test-glib-submenu-client.c
index 57762cd..29d7720 100644
--- a/tests/test-glib-submenu-client.c
+++ b/tests/test-glib-submenu-client.c
@@ -97,8 +97,6 @@ timer_func (gpointer data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
DbusmenuClient * client = dbusmenu_client_new("org.dbusmenu.test", "/org/test");
g_signal_connect(G_OBJECT(client), DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED, G_CALLBACK(layout_updated), NULL);
diff --git a/tests/test-glib-submenu-server.c b/tests/test-glib-submenu-server.c
index 73362c1..ece2527 100644
--- a/tests/test-glib-submenu-server.c
+++ b/tests/test-glib-submenu-server.c
@@ -90,8 +90,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"org.dbusmenu.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-gtk-label-server.c b/tests/test-gtk-label-server.c
index ddf8fcf..d7fe622 100644
--- a/tests/test-gtk-label-server.c
+++ b/tests/test-gtk-label-server.c
@@ -71,8 +71,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
JsonParser * parser = json_parser_new();
GError * error = NULL;
if (!json_parser_load_from_file(parser, argv[1], &error)) {
diff --git a/tests/test-gtk-remove-server.c b/tests/test-gtk-remove-server.c
new file mode 100644
index 0000000..0655fc0
--- /dev/null
+++ b/tests/test-gtk-remove-server.c
@@ -0,0 +1,118 @@
+/*
+ Confirm that no warnings/criticals get generated by including
+ multiple add/removes in a match w/o waiting on the mainloop to iterate.
+
+ Copyright 2013 Canonical Ltd.
+
+ Original sample code by Drew Bliss <drewb@valvesoftware.com>
+ Modified for automatic testing by Charles Kerr <charles.kerr@canonical.com>
+ */
+
+#include <stdlib.h> /* exit() */
+#include <gtk/gtk.h>
+#include <libdbusmenu-glib/server.h>
+#include <libdbusmenu-gtk/menu.h>
+#include <libdbusmenu-gtk/parser.h>
+
+static GMainLoop * loop = NULL;
+static GtkWidget * top_gtk = NULL;
+static DbusmenuMenuitem * top_dbusmenu = NULL;
+static DbusmenuServer * menuservice = NULL;
+
+static void
+rebuild_menu (void)
+{
+ GList * l;
+ GList * children;
+ int i;
+ const int n = 10;
+ static int count = 0;
+
+ if (top_gtk == NULL)
+ {
+ top_gtk = gtk_menu_new ();
+ gtk_widget_show (top_gtk);
+ top_dbusmenu = dbusmenu_gtk_parse_menu_structure (top_gtk);
+ menuservice = dbusmenu_server_new ("/org/ayatana/NotificationItem/test/Menu");
+ dbusmenu_server_set_root (menuservice, top_dbusmenu);
+ }
+
+ // remove all the previous children
+ children = gtk_container_get_children (GTK_CONTAINER(top_gtk));
+ for (l=children; l!=NULL; l=l->next)
+ gtk_widget_destroy (GTK_WIDGET (l->data));
+
+ // add a handful of new children
+ for (i=0; i<n; ++i)
+ {
+ char buf[80];
+ GtkWidget * child;
+
+ g_snprintf (buf, sizeof(buf), "Test item %d", ++count);
+ child = gtk_menu_item_new_with_label (buf);
+ gtk_menu_shell_append (GTK_MENU_SHELL(top_gtk), child);
+ gtk_widget_show (child);
+ }
+}
+
+/*
+ * Periodically rebuild the menu.
+ *
+ * After we've looped a couple of times with only one rebuild,
+ * attempt to reproduce the bug Drew reported by rebuilding multiple
+ * times before returning control to the main loop.
+ *
+ * If we survive doing this a handful of times without encountering
+ * a g_warning or g_critical, pass the test.
+ */
+static gint
+on_timer (gpointer unused G_GNUC_UNUSED)
+{
+ static int iteration = 0;
+
+ ++iteration;
+
+ if (iteration > 5)
+ {
+ g_main_loop_quit (loop);
+ return G_SOURCE_REMOVE;
+ }
+
+ if (iteration <= 2)
+ {
+ rebuild_menu ();
+ }
+ else
+ {
+ int i;
+
+ for (i=0; i<iteration; ++i)
+ rebuild_menu ();
+ }
+
+ return G_SOURCE_CONTINUE;
+}
+
+static void
+warning_counter (const gchar * log_domain,
+ GLogLevelFlags log_level G_GNUC_UNUSED,
+ const gchar * message,
+ gpointer user_data G_GNUC_UNUSED)
+{
+ g_message ("Failing the test due to warning: %s %s", log_domain, message);
+ exit (EXIT_FAILURE);
+}
+
+int
+main (int argc, char ** argv)
+{
+ g_log_set_handler ("LIBDBUSMENU-GLIB", G_LOG_LEVEL_WARNING|G_LOG_LEVEL_CRITICAL, warning_counter, NULL);
+
+
+ gtk_init (&argc, &argv);
+ loop = g_main_loop_new (NULL, FALSE);
+ g_timeout_add (200, on_timer, NULL);
+ g_main_loop_run (loop);
+
+ return 0;
+}
diff --git a/tests/test-gtk-reorder-server.c b/tests/test-gtk-reorder-server.c
index 44209f1..560820e 100644
--- a/tests/test-gtk-reorder-server.c
+++ b/tests/test-gtk-reorder-server.c
@@ -52,7 +52,7 @@ static gboolean
timer_func (gpointer data)
{
if (test == NUMBER_TESTS) {
- g_main_quit(mainloop);
+ g_main_loop_quit(mainloop);
return FALSE;
}
@@ -99,8 +99,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"glib.label.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-gtk-shortcut-server.c b/tests/test-gtk-shortcut-server.c
index 5df4881..55974aa 100644
--- a/tests/test-gtk-shortcut-server.c
+++ b/tests/test-gtk-shortcut-server.c
@@ -83,8 +83,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"glib.label.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-gtk-submenu-server.c b/tests/test-gtk-submenu-server.c
index 1d38a44..a705900 100644
--- a/tests/test-gtk-submenu-server.c
+++ b/tests/test-gtk-submenu-server.c
@@ -92,8 +92,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"glib.label.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tests/test-json-client.c b/tests/test-json-client.c
index 8900902..d7933ce 100644
--- a/tests/test-json-client.c
+++ b/tests/test-json-client.c
@@ -53,8 +53,6 @@ timeout_func (gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_timeout_add_seconds(1, timeout_func, argv);
mainloop = g_main_loop_new(NULL, FALSE);
diff --git a/tests/test-json-server.c b/tests/test-json-server.c
index 7165838..9a2dd8e 100644
--- a/tests/test-json-server.c
+++ b/tests/test-json-server.c
@@ -76,8 +76,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int
main (int argc, char ** argv)
{
- g_type_init();
-
g_bus_own_name(G_BUS_TYPE_SESSION,
"org.dbusmenu.test",
G_BUS_NAME_OWNER_FLAGS_NONE,
diff --git a/tools/dbusmenu-dumper.c b/tools/dbusmenu-dumper.c
index 6dcdb2f..d8512f2 100644
--- a/tools/dbusmenu-dumper.c
+++ b/tools/dbusmenu-dumper.c
@@ -112,7 +112,7 @@ decrement_count (void)
}
/* Checks whether we need to watch a menu item, and recurses down to
- it's children as well */
+ its children as well */
static void
check_realizations (DbusmenuMenuitem * item)
{
@@ -388,7 +388,6 @@ static GOptionEntry general_options[] = {
int
main (int argc, char ** argv)
{
- g_type_init();
GError * error = NULL;
GOptionContext * context;
diff --git a/tools/testapp/main.c b/tools/testapp/main.c
index 67e962d..1fbcf4b 100644
--- a/tools/testapp/main.c
+++ b/tools/testapp/main.c
@@ -135,8 +135,6 @@ name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
int main (int argc, char ** argv)
{
- g_type_init();
-
if (argc != 2) {
g_warning(USAGE);
return 1;