diff options
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 @@ -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 @@ -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; |