aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS11
-rw-r--r--ChangeLog2302
-rw-r--r--Makefile.am27
-rw-r--r--Makefile.in35
-rw-r--r--aclocal.m44
-rwxr-xr-xconfigure84
-rw-r--r--configure.ac19
-rw-r--r--src/Makefile.am30
-rw-r--r--src/Makefile.in60
-rw-r--r--src/app-menu-item.c8
-rw-r--r--src/dbus-data.h8
-rw-r--r--src/gen-messages-service.xml.c27
-rw-r--r--src/gen-messages-service.xml.h1
-rw-r--r--src/im-menu-item.c14
-rw-r--r--src/indicator-messages.c217
-rw-r--r--src/messages-service-client.h139
-rw-r--r--src/messages-service-dbus.c144
-rw-r--r--src/messages-service-server.h126
-rw-r--r--src/messages-service.c1
-rw-r--r--src/messages-service.xml2
20 files changed, 2793 insertions, 466 deletions
diff --git a/AUTHORS b/AUTHORS
index b6c2e7d..4f272a2 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1 +1,10 @@
-Ted Gould <ted@canonical.com>
+# Generated by Makefile. Do not edit.
+
+ Andrea Cimitan
+ cody
+ David Barth
+ James Westby
+ Kees Cook
+ Michael Terry
+ Sebstien Bacher
+ Ted Gould
diff --git a/ChangeLog b/ChangeLog
index e69de29..d15094c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -0,0 +1,2302 @@
+# Generated by Makefile. Do not edit.
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ 0.3.90
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ ayatana.org to canonical.com
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ ayatana.org to canonical.com
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Switching dbusmenu and indicator messages
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Prototype changes
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Emitting signals for the connections
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Saving the connection
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Swiching to our method function.. woot!
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Setting up the vtable and making it connect in
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Get the connection in the cool new style
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Switching how we get our interface info
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Switch to new dbusmenu signal prototype
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Type to session
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Switching the function callbacks
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Changing the signal callbacks
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Changing the creation of the proxy
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Changing to get the interface from the included XML file
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Switching over from using dbus-binding-tool to sed
+
+2011-01-14 Ted Gould <ted@gould.cx>
+
+ Switching the pkgconfig files that are used.
+
+2010-10-08 Ted Gould <ted@gould.cx>
+
+ Fix deprecations and ensure they're part of distcheck
+
+2010-10-06 Michael Terry <mike@mterry.name>
+
+ avoid deprecated API
+
+2010-09-21 Ted Gould <ted@gould.cx>
+
+ Building ChangeLog and AUTHORS from makefile
+
+2010-09-09 Ted Gould <ted@gould.cx>
+
+ 0.3.11
+
+2010-09-03 Ted Gould <ted@gould.cx>
+
+ Pass the dbusmenu menuitem to the expose callback.
+
+2010-09-03 Ted Gould <ted@gould.cx>
+
+ Making sure to put the dbusmenu item in the callback
+
+2010-08-26 Ted Gould <ted@gould.cx>
+
+ 0.3.10
+
+2010-08-26 Ted Gould <ted@gould.cx>
+
+ Shifting the locations of the triangles and the icons.
+
+2010-08-26 David Barth <david.barth@canonical.com>
+
+ adjusted position of the left icons and triangle overlay
+
+2010-08-24 Ted Gould <ted@gould.cx>
+
+ Removing some extra code that's not needed and ensuring the icon is always shown.
+
+2010-08-24 Ted Gould <ted@gould.cx>
+
+ Only show the avatar if it is sent
+
+2010-08-24 Ted Gould <ted@gould.cx>
+
+ Removing the blank menu items
+
+2010-08-24 Ted Gould <ted@gould.cx>
+
+ Set the image menu icon
+
+2010-08-12 Ted Gould <ted@gould.cx>
+
+ 0.3.9
+
+2010-08-12 Ted Gould <ted@gould.cx>
+
+ Removing the parenthesis
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ 0.3.8
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ running apps triangle indicator overlay from Cimi
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ merged dbarth's branch
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ better aspect ratio for the triangle
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ adjust the triangle size
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ remove the old running app. icon
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ fix typos to build and clean up comments
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ remove the previous icon
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ trailing whitespace
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ Draw a triangle on the left
+
+2010-07-29 David Barth <david.barth@canonical.com>
+
+ message counters are now rendered with a nice rounded background
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ check if widget is really a widget before getting its style (from dbarth)
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ Ops, readded the label :P
+
+2010-07-29 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ Added rounded rectangles on the right
+
+2010-07-22 Andrea Cimitan <andrea.cimitan@gmail.com>
+
+ Fixed position of sub menu indicators (the one with the counter on the right)
+
+2010-07-22 Andrea Cimitan <cimi@gemini>
+
+ Added triangles on the left and new label design on the right.
+ We still need to align not-active services but I don't have any clue on how to do this
+
+2010-05-21 Ted Gould <ted@gould.cx>
+
+ Dummy commit
+
+2010-05-21 Ted Gould <ted@gould.cx>
+
+ 0.3.7
+
+2010-04-28 Ted Gould <ted@gould.cx>
+
+ Patch from Kees to ensure the hashtable keeps its memory
+
+2010-04-28 Kees Cook <kees@outflux.net>
+
+ Allocate memory for hash table items (LP: #533021)
+
+2010-04-17 Ted Gould <ted@gould.cx>
+
+ Check for whether a desktop file is eclipsed when loaded.
+
+2010-04-16 Ted Gould <ted@gould.cx>
+
+ When adding a desktop file look through teh applications we have to check for eclipsing
+
+2010-04-17 Ted Gould <ted@gould.cx>
+
+ Ensure that we cleanup proxy items as shortcuts.
+
+2010-04-16 Ted Gould <ted@gould.cx>
+
+ Forgot to pass the object here.
+
+2010-04-16 Ted Gould <ted@gould.cx>
+
+ Handling the remove and add in separate functions.
+
+2010-04-16 Ted Gould <ted@gould.cx>
+
+ Changing the changed signal to be added/removed so that we can make things even more fun.
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Minor refactoring to make the logic clearer
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Some debug messages when removing shortcuts
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ It's possible the newroot could be NULL, and that's okay.
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Negative debugging
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Some debugging messages
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Deleteing shortcuts on update if they need to be
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Killing hte launcher shortcuts on exit as well.
+
+2010-04-15 Ted Gould <ted@gould.cx>
+
+ Removing the shortcuts when removing the application entry.
+
+2010-04-01 Ted Gould <ted@gould.cx>
+
+ 0.3.6
+
+2010-03-31 Ted Gould <ted@gould.cx>
+
+ Fixes to the placement of notifications and their visibility. Lots of lovely cleanups.
+
+2010-03-31 Ted Gould <ted@gould.cx>
+
+ We only want to increment the position if we didn't find an entry
+
+2010-03-31 Ted Gould <ted@gould.cx>
+
+ Dropping a useless warning
+
+2010-03-31 Ted Gould <ted@gould.cx>
+
+ Actually, more correctly, that should be a weak ref.
+
+2010-03-31 Ted Gould <ted@gould.cx>
+
+ Fixing a mixed up signal name. Small memory leak.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Making application items default to invisible, and only become visible if they get a valid desktop file.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Ensuring that the visibility property is set on the application entries.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Make the visibility of indictor items and separators follow the visibility of the application item.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Build the separator after checking to see which entry to use. That way we've always got one.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Making the messaging menu use the service architecture.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Making it so that we don't build two icon_proxies ever.
+
+2010-03-30 Ted Gould <ted@gould.cx>
+
+ Putting in a timeout to clear the icon if there were messages waiting when we lost the service.
+
+2010-03-29 Ted Gould <ted@gould.cx>
+
+ Making the service into an indicator service.
+
+2010-03-29 Ted Gould <ted@gould.cx>
+
+ Switching over to using an indicator service manager instead of setting up the proxies by hand.
+
+2010-03-29 Ted Gould <ted@gould.cx>
+
+ Comments and formatting.
+
+2010-03-25 Ted Gould <ted@gould.cx>
+
+ 0.3.5
+
+2010-03-25 Ted Gould <ted@gould.cx>
+
+ Tracking which applications we've seen before.
+
+2010-03-25 Ted Gould <ted@gould.cx>
+
+ Fail if we have init called more than once. Merge comment.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Give us a minute before we write it out.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ When we're being reshown eval the label
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Ah, classic failure
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Make this easier to test
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Building us a file.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ More comments
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Copyright headers.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Some comments
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Have a background process for writing out the seen DB
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Code to read in the keyfile
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Building a file name and checking if it exists.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Only build shortcuts if we've been seen before.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Checking to see if we've seen the application before choosing whether we have the name or the setup string.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Adding the new server to the seen database.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Building the seen db on init
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Changing to be more of a singleton type of thing. Really that makes more sense.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Making a basic interface for the seen database.
+
+2010-03-25 Ted Gould <ted@gould.cx>
+
+ Adding in support for shifting over command items
+
+2010-03-25 Ted Gould <ted@gould.cx>
+
+ Increasing the dbusmenu required version to 0.2.8
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Making sure command items are using blanks
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Set the blank icon on proxy objects
+
+2010-03-25 Ted Gould <ted@gould.cx>
+
+ Grab changes in app icons.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Allow for applications icons to change incase we haven't gotten the property yet.
+
+2010-03-24 Ted Gould <ted@gould.cx>
+
+ Making a small indicator on apps that are running.
+
+2010-03-23 Ted Gould <ted@gould.cx>
+
+ Removing app-gtk-menu-item as it really wasn't needed.
+
+2010-03-23 Ted Gould <ted@gould.cx>
+
+ Looking for the right property
+
+2010-03-23 Ted Gould <ted@gould.cx>
+
+ Changing to use the new app type
+
+2010-03-23 Ted Gould <ted@gould.cx>
+
+ Adds in an application menu item.
+
+2010-03-23 Ted Gould <ted@gould.cx>
+
+ Replacing the count with the icon
+
+2010-03-23 Ted Gould <ted@gould.cx>
+
+ updating to trunk
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Building a new base object for our menuitem
+
+2010-03-18 Ted Gould <ted@gould.cx>
+
+ 0.3.4
+
+2010-03-18 Ted Gould <ted@gould.cx>
+
+ Make the avatar spacing same as the other icons in the menu
+
+2010-03-17 Ted Gould <ted@gould.cx>
+
+ Setting the minimum allocation for the image to be the menu icon size even if there isn't any pixmap.
+
+2010-03-17 Ted Gould <ted@gould.cx>
+
+ Putting padding between the items to make them pretty like.
+
+2010-03-18 Ted Gould <ted@gould.cx>
+
+ Use the standard libindicator icon handling
+
+2010-03-17 Ted Gould <ted@gould.cx>
+
+ Switch to using the image helper and drop design team size
+
+2010-03-17 Ted Gould <ted@gould.cx>
+
+ Bumping libindicator version to 0.3.5
+
+2010-03-17 Ted Gould <ted@gould.cx>
+
+ Fix to use translated string.
+
+2010-03-17 Ted Gould <ted@gould.cx>
+
+ Grab translation for default name.
+
+2010-03-12 Ted Gould <ted@gould.cx>
+
+ Handling bools by getting a value for indicators requesting attention.
+
+2010-03-12 Ted Gould <ted@gould.cx>
+
+ Switching the attention callback to using a value so it can correctly handle booleans.
+
+2010-03-12 Ted Gould <ted@gould.cx>
+
+ String changes to match everyone else.
+
+2010-03-12 Ted Gould <ted@gould.cx>
+
+ Changing from microblogging to broadcast
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ 0.3.3
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Putting in default icons for the default apps that are panel themed
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Using the default icon in the application indicator as well.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Making it so that if the app is default, it uses a generic icon.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Adding in an icon lookup to the default apps db
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Adding in a base set of icons from the gnome theme.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Setting up default application names in the menu.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Checking the default name on application items
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Checking to see if we have a default name.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Keeping our desktop file paths safe.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Copyright headers.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Making the default applications strings translatable.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Adding in the setup function.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Refactoring into a helper
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Adding empathy and gwibber to the mix.
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Actually searching through the list
+
+2010-03-04 Ted Gould <ted@gould.cx>
+
+ Adding a small little function to find default applications.
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ 0.3.2
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Adding in an icon to show the application as running
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding in an application-running icon
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Changing the applications to have icons.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Put the icons into the active items.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Removing the launcher custom menu type
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Switch to having a launcher be a standard item with an icon.
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Getting dynamic items from libindicate and dbusmenu
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Upping dbusmenu dep to 0.2.5
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Adding protection from data fields by checking to ensure they're AppMenuItems
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Setting the listener to NULL after unrefing it.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Do a resort after adding new items.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Did I ever talk to you about why I hate while loops? I have to stop using them. They just lead to bugs.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Eh, forgot to flesh out the lists
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ If we already have children, make sure to process them right away.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding some debug messages
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Moving the shortcuts along with the app item
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Getting the shortcuts in, and handling changes of them.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Realized that we can't proxy the root as the items can't then have two parents, and they need to exist with a parent in the menu that we're building. So we have to leave the proxy items unparented until they get picked up in the service themselves.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding a list to put the shortcuts in
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Oops, wrong signal name for this function.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Emitting the new signal all over the place.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding in a shortcuts changed signal
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Handling root item changes. Mostly.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Init and cleanup the client and root private properties.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Fleshing out menu_cb, lots of avenues for expantion in other directions now.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding API for getting items
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Grabbing the static commands branch so we can build on it.
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Adding in the ability to take static commands from a desktop file
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Bumping libindicator to 0.3.3
+
+2010-02-18 Ted Gould <ted@gould.cx>
+
+ Use the string allocate by g_key_file instead of creating a new one
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Explicitly setting the visible property so we call pull it later.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Switching over to using _bool for the visible property
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding the shortcuts into the menuhandling code.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Fleshing out the get_items function
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Applying the eclipsed value to the shortcuts that are associted with this launcher.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Making visible use boolean properties.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Responding to clicking on the shortcuts
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Build us some shortcut menuitems
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding in shortcuts and ids private variables. Full lifecycle.
+
+2010-02-17 Ted Gould <ted@gould.cx>
+
+ Adding a function to get the items that are in the desktop file.
+
+2010-02-15 Ted Gould <ted@gould.cx>
+
+ If we see a keyfile, use the keyfile processing.
+
+2010-02-15 Ted Gould <ted@gould.cx>
+
+ Spliting out the launchers into the keyfiles
+
+2010-02-15 Ted Gould <ted@gould.cx>
+
+ Abstracting out the keyfile handling stuff.
+
+2010-02-15 Ted Gould <ted@gould.cx>
+
+ Adding in the ability to use keyfiles for the black list
+
+2010-02-09 Ted Gould <ted@gould.cx>
+
+ Property disconnect the count changed signal.
+
+2010-02-09 Ted Gould <ted@gould.cx>
+
+ Some comments.
+
+2010-02-09 Ted Gould <ted@gould.cx>
+
+ Disconnecting the signal handler attached to the listener when we go away.
+
+2010-02-09 Ted Gould <ted@gould.cx>
+
+ Removing the in brackets creation of a variable that also existed in the function, thus creating a NULL pointer.
+
+2010-02-08 Ted Gould <ted@gould.cx>
+
+ Kids, ignore pot
+
+2010-02-08 Ted Gould <ted@gould.cx>
+
+ Creating a local variable that was masking the one in the function.
+
+2010-02-08 Ted Gould <ted@gould.cx>
+
+ Fixing debug message
+
+2010-02-08 Ted Gould <ted@gould.cx>
+
+ I shouldn't have to have a ref there as it's got a ref count of one.
+
+2010-02-04 Ted Gould <ted@gould.cx>
+
+ 0.3.1
+
+2010-02-04 Ted Gould <ted@gould.cx>
+
+ Update to new dbusmenu 0.2.2
+
+2010-02-04 Ted Gould <ted@gould.cx>
+
+ Fixing one more timestamp
+
+2010-02-04 Ted Gould <ted@gould.cx>
+
+ Changing callback prototype and activate signals
+
+2010-02-04 Ted Gould <ted@gould.cx>
+
+ Upping to dbusmenu-gtk 0.2.2
+
+2010-01-08 Ted Gould <ted@gould.cx>
+
+ 0.3.0
+
+2009-12-22 Ted Gould <ted@gould.cx>
+
+ Updating to dbusmenu v0.2.0
+
+2009-12-18 Ted Gould <ted@gould.cx>
+
+ Switching type to use the #define
+
+2009-12-18 Ted Gould <ted@gould.cx>
+
+ Switching the property callback to be GValue
+
+2009-12-18 Ted Gould <ted@gould.cx>
+
+ Requiring the 0.2.x series of dbusmenu
+
+2009-11-05 Ted Gould <ted@canonical.com>
+
+ Apparently order matters.
+
+2009-11-05 Ted Gould <ted@canonical.com>
+
+ Disabling static builds because we don't need them, and they seem to cause errors on amd64.
+
+2009-11-05 Ted Gould <ted@canonical.com>
+
+ Moving to the libindicator 0.3.0 API
+
+2009-11-04 Ted Gould <ted@canonical.com>
+
+ Switching to the new indicator interface.
+
+2009-11-04 Ted Gould <ted@canonical.com>
+
+ Requiring the new libindicator
+
+2009-10-26 Ted Gould <ted@canonical.com>
+
+ Adding translator comments for the hours and minutes strings.
+
+2009-10-26 Ted Gould <ted@canonical.com>
+
+ Adding a translators comments for minutes and hours strings.
+
+2009-10-08 Ted Gould <ted@canonical.com>
+
+ 0.2.6
+
+2009-10-05 Ted Gould <ted@canonical.com>
+
+ Making sure that the menu is calculated after it is determined after the black list is checked.
+
+2009-10-04 Ted Gould <ted@canonical.com>
+
+ Resort the menu after the blacklist has been checked case we've black listed the last item in the menu.
+
+2009-10-01 Ted Gould <ted@canonical.com>
+
+ Stupid ordering, just asking for a memory leak.
+
+2009-10-01 Ted Gould <ted@canonical.com>
+
+ 0.2.5
+
+2009-09-30 Ted Gould <ted@canonical.com>
+
+ Adding in a check to see if the time was set, if not, don't display it in the menu item.
+
+2009-09-29 Ted Gould <ted@canonical.com>
+
+ Making sure we don't update the text for the time if it's zero.
+
+2009-09-29 Ted Gould <ted@canonical.com>
+
+ Adding in a creation seconds and returning that if seconds isn't set.
+
+2009-09-30 Ted Gould <ted@canonical.com>
+
+ Checking for icon status when adding launchers to ensure that we get the correct status.
+
+2009-09-29 Ted Gould <ted@canonical.com>
+
+ Checking to see if the menu should get un-hidden when we're installing new launchers.
+
+2009-09-25 Ted Gould <ted@canonical.com>
+
+ Getting the path for icons from pkgconfig and putting them in the right location.
+
+2009-09-24 Ted Gould <ted@canonical.com>
+
+ Using the new icon directory define.
+
+2009-09-24 Ted Gould <ted@canonical.com>
+
+ Adding in a variable for the icon directory.
+
+2009-09-24 Ted Gould <ted@canonical.com>
+
+ Making a 0.2.4
+
+2009-09-24 Ted Gould <ted@canonical.com>
+
+ Merging in the minimum width branch to fix descriptions getting truncated when they're a reasonable length.
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Adding in a resort after editing the blacklist
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Too big
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Putting in teh size request a minimum width
+
+2009-09-24 Ted Gould <ted@canonical.com>
+
+ Merging in the icon scaling branch
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Forgot to scale on icon changing.
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Putting in a little code to scale icons.
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Version to kick LP
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Merging in branch to add a path for indicators in /usr/share and make it so that invalid desktop files don't create visible menu items.
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ If we're not given a valid desktop file we should eclipse ourselves, and if we're eclipsed, we should hide the separator as well.
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Looking at the old system apps directory as well.
+
+2009-09-23 Ted Gould <ted@canonical.com>
+
+ Changing directory names
+
+2009-09-17 Ted Gould <ted@canonical.com>
+
+ Making a purdy 0.2.3
+
+2009-09-16 Ted Gould <ted@canonical.com>
+
+ Merging in i18n branch to add i18n.
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Forgot intltool
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Adding in header for gettext
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Adding in some encoding to make things fun.
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Oops, teach me to cut and paste :)
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Making it so the po directory is connected in.
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Adding configure stuff in to set up gettext
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Adding a po directory with a list of files.
+
+2009-09-15 Ted Gould <ted@canonical.com>
+
+ Setting up the gettext stuff.
+
+2009-09-15 Sebstien Bacher <seb128@ubuntu.com>
+
+ Patch from Seb to init localization
+
+2009-09-10 Ted Gould <ted@canonical.com>
+
+ Going 0.2.2
+
+2009-09-10 Ted Gould <ted@canonical.com>
+
+ Adding in the separators
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ When removing an application item we need to get rid of its separator as well.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Merging in the time init stuff into this branch so that it gets into this code review.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Setting the default seconds to be the current time.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Switch to checking the separator by keeping track of the last one incase there are a bunch of launchers that are eclipsed at the end of the list. We'll have too many cases, it's easier just to see who we unhide.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Check eclipse to see if we should make indicators visible or not.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Hiding the last item on the list depending on who is last.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ When eclipsing a launcher we're hiding it's separator as well.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Putting the separators into the resorting of the menu.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Handling separators on launchers.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Initializing local imList_t objects.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Forgot to initialize a separator. Also initializing the locally defined server objects to make it easier to find bugs with not setting stuff.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Making the server separator and putting it in.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Updated to current trunk.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Updating to latest trunk
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Merging in the menu update branch.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Adding indicator-messages.service to the clean files for distcheck.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Making 0.2.1
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Putting the dbus service (correctly) in the libexec directory instead of the bin directory.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Adding in the local install flag to make that distcheck passes.
+
+2009-09-09 Ted Gould <ted@canonical.com>
+
+ Update to the v2 API and getting the majority of 423013.
+
+2009-09-08 Ted Gould <ted@canonical.com>
+
+ Bother.
+
+2009-09-08 Ted Gould <ted@canonical.com>
+
+ Checking the wrong variable, let's not get caught by those legacy guys ;)
+
+2009-09-08 Ted Gould <ted@canonical.com>
+
+ Adding in support for properties changing on the indicator menu item on the visualization side of things.
+
+2009-09-05 Ted Gould <ted@canonical.com>
+
+ No atoi, no stdlib.h, that's how it is.
+
+2009-09-05 Ted Gould <ted@canonical.com>
+
+ Fixing as I fixed the libindicate API, we shouldn't have to do an atoi here.
+
+2009-09-05 Ted Gould <ted@canonical.com>
+
+ Setting up the listener signal to make it so that we know when the count changes. Using the property call back and just calling that function.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Replacing type with count
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Removing the count on the label boolean as we're detecting that differently now.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ We don't need to be tracking the added and removed signals for indicators anymore.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Fleshing out indicator changing the attention parameter.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Connecting into the attention signal.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Processing the attention when an indicator leaves the building.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Comments.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Fleshing out checking server attention by looking at all the indicators.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Initializing count
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Oops, a little silly before. We really need to check the indicators as well, we can't just clear the attention for the count value.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Reworking how we handle the server count changing and how that makes us check for attention now.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Adding an attention parameter to the server and initing it.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ If the item was shown, and we're in an overload case, we need to find someone else to show when we're dying.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Adding in a small function to access the show variable.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Hiding the items that go over our bounds. That's how it is. Hard, hard, limits.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Defining the max number of indicators and telling the server about it.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Setting the property on the dbusmenu menuitem as well
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Adding in a show state.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Fleshing out the attention_cb to make it record the value and signal on changes.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Adding an attention variable and a function to access it.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Adding in a signal for when the attention changes.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Fleshing out the count item
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Ask for all the properties up front.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ We're tracking count instead of whether we should show the time as a boolean.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Making the sender support the name attribute and clean up the code a bit.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ oops forgot to remove type from the modified one, oops.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Well, you know, Oholoh says that I don't comment enough. Better put some more in.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Changing the properties to be the indicate v2 ones. Mostly this involves adding extra properties at this point.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Removing the indicate-gtk headers.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Dropping dep on indicate-gtk, we don't need it now that we're just passing the image data on.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Converting this over to an indicator menuitem.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Fleshing out the indicator item. It's purdy.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Making sure these don't conflict with ones already in usage.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Adding properties for the new menuitems we need to build for showing applications and indicators.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Removing the type from the indicator_removed function.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ We have to drop show_time as a parameter as the caller doesn't really know if that's the case or not anymore.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Reshuffle. Now the creation of an indicator makes for a im-menu-item without looking at type and subtype at all. We'll have a bunch more now.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ libindicate dependency was already 0.2.0, but marking this as the case in the version history.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Merging in the dbusmenu011 branch. I think I got other trunk updates as well.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Bringing up to use some of the new features and defines in DBusmenu 0.1.1
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ A variable and a prototype. Such is life.
+
+2009-09-04 Ted Gould <ted@canonical.com>
+
+ Fixing a header and some defines.
+
+2009-09-03 Ted Gould <ted@canonical.com>
+
+ Using the defines fo dealing with the icons and using the generic image type. We're just passing along the PNGs right now.
+
+2009-09-03 Ted Gould <ted@canonical.com>
+
+ Using defines for visibility.
+
+2009-09-03 Ted Gould <ted@canonical.com>
+
+ Upping dbusmenu version
+
+2009-08-27 Ted Gould <ted@canonical.com>
+
+ Updating to dbusmenu 0.1.0 as a versioning snafu got involved.
+
+2009-08-27 Ted Gould <ted@canonical.com>
+
+ Changing to version 0.2.0. We need a release sometime.
+
+2009-08-27 Ted Gould <ted@canonical.com>
+
+ Merging in a branch that updates to the new dbusmenu but also uses it to add a custom launcher item.
+
+2009-08-27 Ted Gould <ted@canonical.com>
+
+ Checking args from libdbusmenu, stealing code from there. Comments by Neil.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Attaching a bug to a branch.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ This stuff is crashing big time now. Not sure why it worked before, but not going to look into it now.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Adding a little style to our labels. Hopefully making them look a little nicer.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Use that handy get_description function that we just merged in. Heh, wonder why we did that...
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Merging in the lift-and-separate branch to get the description function on there.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Adding a get_description function
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Merging in the dirwatch branch
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Setting the type of the item and app name
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Filling in the new launcher menu item
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Pulling the type and the properties into the shared DBus header.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Injecting in a type for the launchers.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Making ourselves a variable in the middle of everything.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Replacing the prop strings with defines
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Locking to version 0.0.2 to use some of the new nicities
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ show -> visible
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Merging in changes to make the green dot appear and the icon hide when no one is there.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Adding the green dot bug onto the branch.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Some debug messages and checking the list length, but most importantly, got the show/eclipsed logic backwards.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Checking hidden when servers are added and removed as well.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Putting in the hiding logic
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Adding in teh ability to count the number of launchers that are visable
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ The documentation clearly states that you don't need these if the client supports introspection. I thought I was being old school by still putting them in. But, THE DOCUMENTATION LIES, you need to add the signals no matter what.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Forgot to change to Ayatana
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Bad name, fixed.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Setting the attention parameter in the dbus interface.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Legal crap.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Oh, wow, now there's some flesh on these. Let's hide and show icons.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Setting up signals and callbacks, oh my! Watch for lions.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Building a proxy...
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Okay, now we're signaling change.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Making some signal lovin'
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Adding the basic set functions into the C files.
+
+2009-08-26 Ted Gould <ted@canonical.com>
+
+ Some comments.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Bringing up the object and having some variables to access.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Creating a real object and initing it.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Building an object to represent the service over DBus.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Adding in a new dbus interface.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Switching to ayatana.org and adding a new name for the service as a whole.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Merging in the directory watch branch.
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Checking to see if error is null before looking inside it.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Now we're really killing these puppies! Don't cry, they weren't cuddly puppies.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Fleshing out the first part of destroy, in that we're just removing an item from a list.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Relinking back to trunk.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ The launcher creation didn't test to see if it already exists. Now we keep one launcher per desktop file. Makes sense, eh? That's what we're going for.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Start responding to changes in the applications directories
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ I'd have to say that hash_table_find didn't do what I expected, and is pretty useless.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Fleshing out remove to try to get rid of all these blacklist items.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Turning blacklist dir changes into events
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Basic code to monitor the directories
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Adding in black list support
+
+2009-08-25 Ted Gould <ted@canonical.com>
+
+ Merging in the black list branch.
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Updating to trunk
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Adding the user APPS directory to the places where we can find applications
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Switching the build to take the directory as a parameter
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Some debug and fixing checking the desktop file. All good.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Now parsing the directory on start up. Getting this whole thing started up.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Writing the fairly extensive and complex check function. But, if that's the way it needs to be, I guess it needs to be that way.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ We're taking ownership of that variable as well
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Fleshing out the add function. Just a little.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ More of a basis for the black list stuff. Some functions and an interface.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Adding in some seperators to make things more clear.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Adding in a couple of blacklist check point.
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Merging in the launchers branch
+
+2009-08-21 Ted Gould <ted@canonical.com>
+
+ Adding in support for launchers
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Should be in milliseconds not micro
+
+2009-08-20 Ted Gould <ted@canonical.com>
+
+ Use a GDK app context. Not sure about the timestamp units though.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Oh, some debug messages to see what's going on.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Ah, where casting kills. You can cast anything to the right value even though it's not. Nice opaque errors you get for that.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Big commit. Trying to check for eclipses, but first both objects needed to track their desktop file paths. So I had to add that little nugget in as well.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding an eclipsed function for the LMI
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Clean up, clean up, everybody everywhere
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding in a couple function to deal with disappearing launchers.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding in the activate logic so that the menu items actually launch the application.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding the launcher list to the resorting function. This looks more complex than it is, it's just merging the two lists on the fly in alphabetical order.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Making this file a little more readable. Eh, I guess you never plan on them getting this big when you start do you? I remember when he was just a little automake file.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Missing a couple headers for distcheckness
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Getting launchers to add to the menu, and changing the function to do that so it's not all server based. We want everyone involved now.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Setting the label of the menu item.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Lots of debug, but also cleaning up the desktop file name path so it gets properly into the constructor.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Oops, forgot one level of redirection here
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Spliting out the building of the items as it'll read the desktop file off disk and parse it.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Go through the launchers and start building items
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Not sure why, but the naming of this file is really bugging me. Fixed now.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding in a new menu-item type. One for launchers! Woo Hoo!
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ No reason that all these should be linked into the loadable module. Err, fail.
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding the basis for launchers
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ Adding directories. Let's put them in one file so that they'll be changable easy :)
+
+2009-08-19 Ted Gould <ted@canonical.com>
+
+ AM 1.11 silent rule
+
+2009-08-05 Ted Gould <ted@canonical.com>
+
+ Fixing the messaging indicator to unref the menu item, which removes the signal handlers.
+
+2009-08-04 Ted Gould <ted@canonical.com>
+
+ indicate-gtk changes that are required
+
+2009-08-04 Ted Gould <ted@canonical.com>
+
+ Merging in the branch that pulls in the dbusmenu changes that change to using a service.
+
+2009-05-28 Ted Gould <ted@canonical.com>
+
+ Aw, bother, turns out I messed up the service file. Let's fix that.
+
+2009-05-28 Ted Gould <ted@canonical.com>
+
+ Building a simple little activator to find out if we can activate the service.
+
+2009-05-28 Ted Gould <ted@canonical.com>
+
+ Putting a little more error handling code in.
+
+2009-05-28 Ted Gould <ted@canonical.com>
+
+ Failing on warnings
+
+2009-05-27 Ted Gould <ted@canonical.com>
+
+ Switching to the better dbus service dir
+
+2009-05-27 Ted Gould <ted@canonical.com>
+
+ Starting the service if it isn't there
+
+2009-05-27 Ted Gould <ted@canonical.com>
+
+ Getting a name, and grabbing it, and loving it...
+
+2009-05-27 Ted Gould <ted@canonical.com>
+
+ Removing the child_reorder function as it's now upstream
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ First pass at moving everything to doing work with the DbusmenuMenuitem's instead of GTK
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Converting to a DbusmenuMenuitem instead of GtkMenuItem
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Converting to a DbusmenuMenuitem instead of GtkMenuItem
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ First pass, build the listener and do fun stuff like that.
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Building the indicator-messages-service
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ A simple main() to get things to compile
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Install the DBus Service
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Adding in a service descriptor for adding to DBUS
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Lookup the dbus services
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Linking in the dbus data
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Moving the complex code into the service and leaving the rest for the loadable module.
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Adding in dbus name and object
+
+2009-05-26 Ted Gould <ted@canonical.com>
+
+ Adding a dependency on the dbus menu library.
+
+2009-05-13 Ted Gould <ted@canonical.com>
+
+ Merging in fix for tracking the timers.
+
+2009-05-10 Ted Gould <ted@canonical.com>
+
+ Not setting the variable time_update_min when creating the source. Bug found by Ka-Hing Cheung
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Get rid of the main menu variable that we're not using. Hide the image.
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Setting the name to 'messages'
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ removing a warning by ref'ing the default
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Fixing return type
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Breaking out into libindicator style function calls.
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Including the indicator info
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Installing to indicator dir instead of other fun places
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Putting a 'dev' on the version number
+
+2009-04-22 Ted Gould <ted@canonical.com>
+
+ Increasing the version of indicate required and requiring indicator
+
+2009-04-20 Ted Gould <ted@canonical.com>
+
+ Some changes suggested by Cody Russell to make things a little bit safer.
+
+2009-04-20 Ted Gould <ted@canonical.com>
+
+ Freeing the appinfo and type from the application object on finalize
+
+2009-04-20 Ted Gould <ted@canonical.com>
+
+ Moving signal disconnecting and unref to the dispose function instead of finalize. Fix by Cody Russell on bug 362124.
+
+2009-04-20 Ted Gould <ted@canonical.com>
+
+ Adding a ref'ing and deref'ing of the listener to the application menu item to ensure it stays around while we hav signals attached to it. Fix by Code Russell on bug 362124.
+
+2009-04-13 Ted Gould <ted@canonical.com>
+
+ Fixes to the finalize function.
+
+2009-04-13 Ted Gould <ted@canonical.com>
+
+ Making a 6
+
+2009-04-13 Ted Gould <ted@canonical.com>
+
+ Merging in Cody's fix for 359018
+
+2009-04-13 cody <cody@raconteur>
+
+ move parent->finalize() to the end of the finalize function
+
+2009-04-08 Ted Gould <ted@canonical.com>
+
+ Including some cleanups from James Westby. Thanks
+
+2009-04-05 James Westby <james.westby@canonical.com>
+
+ Be aware that appinfo can be NULL.
+
+2009-04-05 James Westby <james.westby@canonical.com>
+
+ Fix PKG_NAME in autogen.sh.
+
+2009-04-07 Ted Gould <ted@canonical.com>
+
+ Require indicate version 0.1.5 or higher
+
+2009-04-07 Ted Gould <ted@canonical.com>
+
+ Trying to set this to also act like FUSA so that we get the same visual as the rest of the panel.
+
+2009-04-07 Ted Gould <ted@canonical.com>
+
+ Make sure we disconnect from all our signals and free from memory that really exists. Lots of little nasty bugs.
+
+2009-04-07 Ted Gould <ted@canonical.com>
+
+ Actually removing indicators when the server goes bye-bye and freeing up the indicator data. Wow, two biggie leaks.
+
+2009-04-07 Ted Gould <ted@canonical.com>
+
+ Should have been using g_strcmp0 all along. No reason not to use the safer one.
+
+2009-04-07 Ted Gould <ted@canonical.com>
+
+ Making these new0 to make sure that our lists are NULL
+
+2009-04-03 Ted Gould <ted@canonical.com>
+
+ Using the right symbol names now
+
+2009-04-03 Ted Gould <ted@canonical.com>
+
+ Using the correct way to find the DBus name and ids.
+
+2009-04-03 Ted Gould <ted@canonical.com>
+
+ Setting version 0.1.5
+
+2009-04-03 Ted Gould <ted@canonical.com>
+
+ Showing some interest in teh clients we talk to.
+
+2009-04-03 Ted Gould <ted@canonical.com>
+
+ Adding in some consts to match the new prototypes better
+
+2009-03-27 Ted Gould <ted@canonical.com>
+
+ Changing version number
+
+2009-03-27 Ted Gould <ted@canonical.com>
+
+ Making time more about it's own relative nature rather than a fixed time.
+
+2009-03-27 Ted Gould <ted@canonical.com>
+
+ Adding in a couple of statics
+
+2009-03-24 Ted Gould <ted@canonical.com>
+
+ Making it so that an indicator gets displayed when someone logs in, eventually it disappears.
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Setting version number to 0.1.3 to match all of the other indicator stuff. Probably should split things out more later.
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Making the truth correct
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Backwards sorting
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Adding in message.im, should have spec'd this better now there's some drift.
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Making the IM list sorted and handling the time changed signal
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Putting the seconds into the private structure, a function to get them, and a signal when they change.
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Fleshing out the reconsile function. And making sure it gets called everytime there is a name change on the server side.
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Wrong name
+
+2009-03-18 Ted Gould <ted@canonical.com>
+
+ Relaying out the data structures so that the indicators are sub to the servers
+
+2009-03-17 Ted Gould <ted@canonical.com>
+
+ Forgot to actually pass the value to the signal, ahhhh
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Switching the servers from a hash table to a list. Cleans things up a little, and sets us up for menu organization at a more complete level.
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Adding functions to make it so that we can get signaled on name changes and also query them in app-menu-items
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Putting in a sorting function to make sure that the individual indicators are always below the server that they're associated with.
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Bad truth
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Disconnecting our signals properly, avoids a crash
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Add simulation of zero count on server remove
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Setting up the library versioning to basically not have any, this is a module.
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Switching the icon to be based on whether or not the server is reporting indicators instead of counting the number of indicators items.
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Splitting the label updating into it's own function and making that called by the other functions that adjust how that happens.
+
+2009-03-15 Ted Gould <ted@canonical.com>
+
+ Adding in an unread count variable, and then a signal to show it chagned. Also, watching for the indicators on this server to make sure it stays correct.
+
+2009-03-13 Ted Gould <ted@canonical.com>
+
+ Changing the version number, but don't release it :)
+
+2009-03-09 Ted Gould <ted@canonical.com>
+
+ changing the size of the icon
+
+2009-02-16 Ted Gould <ted@canonical.com>
+
+ Turns out that in configure it was 'messaging' -- oops, fixed to be the same as everywhere else.
+
+2009-02-16 Ted Gould <ted@canonical.com>
+
+ Making this an upstream branch, no packaging.
+
+2009-02-15 Ted Gould <ted@canonical.com>
+
+ releasing version 0.1~ppa15
+
+2009-02-15 Ted Gould <ted@canonical.com>
+
+ Making the menu hide itself if there is no one around
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ releasing version 0.1~ppa14
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Forgot to change all the names.
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Making the image global, and changing it based on how many IMs we have.
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Add a callback to display the app
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Oh, I forgot these create log messages. Very annoying.
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Adding in desktop file support, which required configure changes to get the right headers.
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Adding in functions to get the desktop file and type of the application
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Adding a callback for when things like the time get modified.
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Adding in scaling of icons
+
+2009-02-13 Ted Gould <ted@canonical.com>
+
+ Setting up to use the icon and time helper functions and make icons update. Whoot!
+
+2009-02-11 Ted Gould <ted@canonical.com>
+
+ Adding in a copyright for the debian packaging and description of the package license
+
+2009-02-11 Ted Gould <ted@canonical.com>
+
+ Adding myself as an author
+
+2009-02-11 Ted Gould <ted@canonical.com>
+
+ Adding in license headers, GPL v3
+
+2009-02-07 Ted Gould <ted@canonical.com>
+
+ More debugging and temorarily showing the menu item ourselves
+
+2009-02-07 Ted Gould <ted@canonical.com>
+
+ Adding in some debug messages
+
+2009-02-07 Ted Gould <ted@canonical.com>
+
+ Adding in the basis for making a server based menu item
+
+2009-02-07 Ted Gould <ted@canonical.com>
+
+ Removing the need for an indicator
+
+2009-02-06 Ted Gould <ted@canonical.com>
+
+ Adding in an application menu item to start building those
+
+2009-02-06 Ted Gould <ted@canonical.com>
+
+ Making the activate callback static and putting in a prototype
+
+2009-02-05 Ted Gould <ted@canonical.com>
+
+ Removing warnings by getting the right pointer types
+
+2009-02-05 Ted Gould <ted@canonical.com>
+
+ Oh, two things. First is setting alignment of the two strings and also getting the time from an ISO8601 string
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ releasing version 0.1~ppa13
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ Using the right damn function
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ releasing version 0.1~ppa12
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ Installing to the wrong directory
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ Adding in data directory
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ releasing version 0.1~ppa11
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ Taking the icons from Evolution and GNOME icon themes. Some slight modifications.
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ releasing version 0.1~ppa10
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ Adding in dummy icons
+
+2009-02-04 Ted Gould <ted@canonical.com>
+
+ Adding in icons
+
+2009-02-03 Ted Gould <ted@canonical.com>
+
+ Changed libindicate name to libindicate0, so need to have
+ another build in the PPA.
+
+2009-02-02 Ted Gould <ted@canonical.com>
+
+ Bumping for PPA
+
+2009-01-30 Ted Gould <ted@canonical.com>
+
+ Adding in activate callback when the menu item is
+ clicked on.
+
+2009-01-30 Ted Gould <ted@canonical.com>
+
+ Adding in an activate callback
+
+2009-01-29 Ted Gould <ted@canonical.com>
+
+ Making things better, now menu items are created and
+ destroyed as they are, well, indicators are created
+ and destroyed. Also minor cleanups.
+
+2009-01-29 Ted Gould <ted@canonical.com>
+
+ Switching from a hash table to a list
+
+2009-01-29 Ted Gould <ted@canonical.com>
+
+ Putting a debug message on compare
+
+2009-01-29 Ted Gould <ted@canonical.com>
+
+ Warning on not removing something that should have been.
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Basically now indicators show up if someone puts an IM message
+ on the Bus. Way cool. No delete or anything fancy, but good
+ progress.
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ I always get the order of these backwards
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Changing the text to be a little shorter
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Adding in a show that I forgot :(
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Better debug message and getting the time callback to check for the right property
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Lots of debugging message to figure out that I hadn't passed
+ the return variable in _new :(
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ I hate me
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ It's truly amazing how many logic errors I make
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Make menu items for IM indicators
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Adding in some more warnings
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Forgot a _start
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Forgot to connect in the signal handler, oops.
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Get this to compile
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Linking together
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Fleshed this item out some
+
+2009-01-21 Ted Gould <ted@canonical.com>
+
+ Boiler plate IM menu items
+
+2009-01-20 Ted Gould <ted@canonical.com>
+
+ ifdef'ing out the mail stuff as we need to get IM working first
+
+2009-01-20 Ted Gould <ted@canonical.com>
+
+ Building the basis of what needs to be the indicator.
+
+2009-01-19 Ted Gould <ted@canonical.com>
+
+ Adding in libindicate as a dependency
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Ignore stuff
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Moving the directory
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Starting Debian Packaging
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Showing by default.
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Making the directory the same as the applet. Should have done that first, eh.
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Ignoring
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Actually getting this all to build reasonably.
+
+2008-12-04 Ted Gould <ted@canonical.com>
+
+ Checkmark checkin
+
diff --git a/Makefile.am b/Makefile.am
index 26c2a33..d6f6168 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4,5 +4,30 @@ SUBDIRS = \
data \
po
-DISTCHECK_CONFIGURE_FLAGS = --enable-localinstall
+DISTCHECK_CONFIGURE_FLAGS = --enable-localinstall --enable-deprecations
+dist-hook:
+ @if test -d "$(top_srcdir)/.bzr"; \
+ then \
+ echo Creating ChangeLog && \
+ ( cd "$(top_srcdir)" && \
+ echo '# Generated by Makefile. Do not edit.'; echo; \
+ $(top_srcdir)/missing --run bzr log --gnu-changelog ) > ChangeLog.tmp \
+ && mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
+ || (rm -f ChangeLog.tmp; \
+ echo Failed to generate ChangeLog >&2 ); \
+ else \
+ echo Failed to generate ChangeLog: not a branch >&2; \
+ fi
+ @if test -d "$(top_srcdir)/.bzr"; \
+ then \
+ echo Creating AUTHORS && \
+ ( cd "$(top_srcdir)" && \
+ echo '# Generated by Makefile. Do not edit.'; echo; \
+ $(top_srcdir)/missing --run bzr log --long --levels=0 | grep -e "^\s*author:" -e "^\s*committer:" | cut -d ":" -f 2 | cut -d "<" -f 1 | sort -u) > AUTHORS.tmp \
+ && mv -f AUTHORS.tmp $(top_distdir)/AUTHORS \
+ || (rm -f AUTHORS.tmp; \
+ echo Failed to generate AUTHORS >&2 ); \
+ else \
+ echo Failed to generate AUTHORS: not a branch >&2; \
+ fi
diff --git a/Makefile.in b/Makefile.in
index 800d03e..3417139 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -258,7 +258,7 @@ SUBDIRS = \
data \
po
-DISTCHECK_CONFIGURE_FLAGS = --enable-localinstall
+DISTCHECK_CONFIGURE_FLAGS = --enable-localinstall --enable-deprecations
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -519,6 +519,9 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
@@ -740,8 +743,8 @@ uninstall-am:
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am am--refresh check check-am clean clean-generic \
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
- dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
- distcheck distclean distclean-generic distclean-hdr \
+ dist-gzip dist-hook dist-lzma dist-shar dist-tarZ dist-xz \
+ dist-zip distcheck distclean distclean-generic distclean-hdr \
distclean-libtool distclean-tags distcleancheck distdir \
distuninstallcheck dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
@@ -754,6 +757,32 @@ uninstall-am:
ps ps-am tags tags-recursive uninstall uninstall-am
+dist-hook:
+ @if test -d "$(top_srcdir)/.bzr"; \
+ then \
+ echo Creating ChangeLog && \
+ ( cd "$(top_srcdir)" && \
+ echo '# Generated by Makefile. Do not edit.'; echo; \
+ $(top_srcdir)/missing --run bzr log --gnu-changelog ) > ChangeLog.tmp \
+ && mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
+ || (rm -f ChangeLog.tmp; \
+ echo Failed to generate ChangeLog >&2 ); \
+ else \
+ echo Failed to generate ChangeLog: not a branch >&2; \
+ fi
+ @if test -d "$(top_srcdir)/.bzr"; \
+ then \
+ echo Creating AUTHORS && \
+ ( cd "$(top_srcdir)" && \
+ echo '# Generated by Makefile. Do not edit.'; echo; \
+ $(top_srcdir)/missing --run bzr log --long --levels=0 | grep -e "^\s*author:" -e "^\s*committer:" | cut -d ":" -f 2 | cut -d "<" -f 1 | sort -u) > AUTHORS.tmp \
+ && mv -f AUTHORS.tmp $(top_distdir)/AUTHORS \
+ || (rm -f AUTHORS.tmp; \
+ echo Failed to generate AUTHORS >&2 ); \
+ else \
+ echo Failed to generate AUTHORS: not a branch >&2; \
+ fi
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/aclocal.m4 b/aclocal.m4
index 2df6026..e367271 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -8782,7 +8782,7 @@ $$1_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
-_PKG_TEXT])dnl
+_PKG_TEXT])[]dnl
])
elif test $pkg_failed = untried; then
AC_MSG_RESULT([no])
@@ -8793,7 +8793,7 @@ path to pkg-config.
_PKG_TEXT
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])dnl
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
diff --git a/configure b/configure
index e45b90b..f756aaf 100755
--- a/configure
+++ b/configure
@@ -918,6 +918,7 @@ enable_fast_install
with_gnu_ld
enable_libtool_lock
enable_silent_rules
+enable_deprecations
enable_localinstall
'
ac_precious_vars='build_alias
@@ -1564,6 +1565,7 @@ Optional Features:
--disable-libtool-lock avoid locking (might break parallel builds)
--enable-silent-rules less verbose build output (undo: `make V=1')
--disable-silent-rules verbose build output (undo: `make V=0')
+ --enable-deprecations allow deprecated API usage [default=yes]
--enable-localinstall install all of the files localy instead of system
directories (for distcheck)
@@ -2843,7 +2845,7 @@ fi
# Define the identity of the package.
PACKAGE=indicator-messages
- VERSION=0.3.11
+ VERSION=0.3.90
cat >>confdefs.h <<_ACEOF
@@ -6257,13 +6259,13 @@ if test "${lt_cv_nm_interface+set}" = set; then :
else
lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:6260: $ac_compile\"" >&5)
+ (eval echo "\"\$as_me:6262: $ac_compile\"" >&5)
(eval "$ac_compile" 2>conftest.err)
cat conftest.err >&5
- (eval echo "\"\$as_me:6263: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval echo "\"\$as_me:6265: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&5
- (eval echo "\"\$as_me:6266: output\"" >&5)
+ (eval echo "\"\$as_me:6268: output\"" >&5)
cat conftest.out >&5
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin"
@@ -7468,7 +7470,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 7471 "configure"' > conftest.$ac_ext
+ echo '#line 7473 "configure"' > conftest.$ac_ext
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -8713,11 +8715,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8716: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8718: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8720: \$? = $ac_status" >&5
+ echo "$as_me:8722: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -9052,11 +9054,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9055: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9057: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:9059: \$? = $ac_status" >&5
+ echo "$as_me:9061: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -9157,11 +9159,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9160: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9162: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:9164: \$? = $ac_status" >&5
+ echo "$as_me:9166: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -9212,11 +9214,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9215: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9217: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:9219: \$? = $ac_status" >&5
+ echo "$as_me:9221: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11596,7 +11598,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11599 "configure"
+#line 11601 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11692,7 +11694,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11695 "configure"
+#line 11697 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11936,6 +11938,18 @@ esac
AM_BACKSLASH='\'
+# Check whether --enable-deprecations was given.
+if test "${enable_deprecations+set}" = set; then :
+ enableval=$enable_deprecations;
+else
+ enable_deprecations=yes
+fi
+
+if test "x$enable_deprecations" = xno; then :
+ CFLAGS="$CFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGSEAL_ENABLE -DGTK_DISABLE_SINGLE_INCLUDES"
+
+fi
+
###########################
# Dependencies
###########################
@@ -11943,9 +11957,9 @@ AM_BACKSLASH='\'
GTK_REQUIRED_VERSION=2.12
GIO_UNIX_REQUIRED_VERSION=2.18
PANEL_REQUIRED_VERSION=2.0.0
-INDICATE_REQUIRED_VERSION=0.3.0
+INDICATE_REQUIRED_VERSION=0.4.90
INDICATOR_REQUIRED_VERSION=0.3.5
-DBUSMENUGTK_REQUIRED_VERSION=0.2.8
+DBUSMENUGTK_REQUIRED_VERSION=0.3.90
@@ -12078,21 +12092,21 @@ if test -n "$APPLET_CFLAGS"; then
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= \$GTK_REQUIRED_VERSION
gio-unix-2.0 >= \$GIO_UNIX_REQUIRED_VERSION
indicator >= \$INDICATOR_REQUIRED_VERSION
- indicate >= \$INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= \$DBUSMENUGTK_REQUIRED_VERSION\""; } >&5
+ indicate-0.5 >= \$INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= \$DBUSMENUGTK_REQUIRED_VERSION\""; } >&5
($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION") 2>&5
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_APPLET_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION" 2>/dev/null`
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -12106,21 +12120,21 @@ if test -n "$APPLET_LIBS"; then
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= \$GTK_REQUIRED_VERSION
gio-unix-2.0 >= \$GIO_UNIX_REQUIRED_VERSION
indicator >= \$INDICATOR_REQUIRED_VERSION
- indicate >= \$INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= \$DBUSMENUGTK_REQUIRED_VERSION\""; } >&5
+ indicate-0.5 >= \$INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= \$DBUSMENUGTK_REQUIRED_VERSION\""; } >&5
($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION") 2>&5
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_APPLET_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION" 2>/dev/null`
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -12143,14 +12157,14 @@ fi
APPLET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION" 2>&1`
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION" 2>&1`
else
APPLET_PKG_ERRORS=`$PKG_CONFIG --print-errors "gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION" 2>&1`
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$APPLET_PKG_ERRORS" >&5
@@ -12158,8 +12172,8 @@ fi
as_fn_error $? "Package requirements (gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION) were not met:
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION) were not met:
$APPLET_PKG_ERRORS
diff --git a/configure.ac b/configure.ac
index f41aff0..b20fade 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,7 +4,7 @@ AC_INIT(src/indicator-messages.c)
AC_PREREQ(2.53)
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(indicator-messages, 0.3.11)
+AM_INIT_AUTOMAKE(indicator-messages, 0.3.90)
AM_MAINTAINER_MODE
@@ -22,6 +22,15 @@ AC_CONFIG_MACRO_DIR([m4])
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
+AC_ARG_ENABLE([deprecations],
+ [AS_HELP_STRING([--enable-deprecations],
+ [allow deprecated API usage @<:@default=yes@:>@])],
+ [],
+ [enable_deprecations=yes])
+AS_IF([test "x$enable_deprecations" = xno],
+ [CFLAGS="$CFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGSEAL_ENABLE -DGTK_DISABLE_SINGLE_INCLUDES"]
+)
+
###########################
# Dependencies
###########################
@@ -29,15 +38,15 @@ m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
GTK_REQUIRED_VERSION=2.12
GIO_UNIX_REQUIRED_VERSION=2.18
PANEL_REQUIRED_VERSION=2.0.0
-INDICATE_REQUIRED_VERSION=0.3.0
+INDICATE_REQUIRED_VERSION=0.4.90
INDICATOR_REQUIRED_VERSION=0.3.5
-DBUSMENUGTK_REQUIRED_VERSION=0.2.8
+DBUSMENUGTK_REQUIRED_VERSION=0.3.90
PKG_CHECK_MODULES(APPLET, gtk+-2.0 >= $GTK_REQUIRED_VERSION
gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION
indicator >= $INDICATOR_REQUIRED_VERSION
- indicate >= $INDICATE_REQUIRED_VERSION
- dbusmenu-gtk >= $DBUSMENUGTK_REQUIRED_VERSION)
+ indicate-0.5 >= $INDICATE_REQUIRED_VERSION
+ dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION)
AC_SUBST(APPLET_CFLAGS)
AC_SUBST(APPLET_LIBS)
diff --git a/src/Makefile.am b/src/Makefile.am
index 7c9842a..dd09b8a 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -9,7 +9,8 @@ messaginglibdir = $(INDICATORDIR)
messaginglib_LTLIBRARIES = libmessaging.la
libmessaging_la_SOURCES = \
indicator-messages.c \
- messages-service-client.h \
+ gen-messages-service.xml.h \
+ gen-messages-service.xml.c \
dbus-data.h
libmessaging_la_CFLAGS = $(APPLET_CFLAGS) -Wall -Wl,-Bsymbolic-functions -Wl,-z,defs -Wl,--as-needed -Werror
libmessaging_la_LIBADD = $(APPLET_LIBS)
@@ -23,9 +24,10 @@ indicator_messages_service_SOURCES = \
default-applications.h \
default-applications.c \
messages-service.c \
- messages-service-server.h \
messages-service-dbus.c \
messages-service-dbus.h \
+ gen-messages-service.xml.h \
+ gen-messages-service.xml.c \
im-menu-item.c \
im-menu-item.h \
app-menu-item.c \
@@ -39,23 +41,19 @@ indicator_messages_service_SOURCES = \
indicator_messages_service_CFLAGS = $(APPLET_CFLAGS) -Wall -Wl,-Bsymbolic-functions -Wl,-z,defs -Wl,--as-needed -Werror
indicator_messages_service_LDADD = $(APPLET_LIBS)
-messages-service-client.h: $(srcdir)/messages-service.xml
- dbus-binding-tool \
- --prefix=_messages_service_client \
- --mode=glib-client \
- --output=messages-service-client.h \
- $(srcdir)/messages-service.xml
+gen-%.xml.h: %.xml
+ @echo "Building $@ from $<"
+ @echo "extern const char * _$(subst -,_,$(subst .,_,$(basename $(notdir $<))));" > $@
-messages-service-server.h: $(srcdir)/messages-service.xml
- dbus-binding-tool \
- --prefix=_messages_service_server \
- --mode=glib-server \
- --output=messages-service-server.h \
- $(srcdir)/messages-service.xml
+gen-%.xml.c: %.xml
+ @echo "Building $@ from $<"
+ echo "const char * _$(subst -,_,$(subst .,_,$(basename $(notdir $<)))) = " > $@
+ @sed -e "s:\":\\\\\":g" -e s:^:\": -e s:\$$:\\\\n\": $< >> $@
+ @echo ";" >> $@
BUILT_SOURCES = \
- messages-service-client.h \
- messages-service-server.h
+ gen-messages-service.xml.h \
+ gen-messages-service.xml.c
CLEANFILES = \
$(BUILT_SOURCES)
diff --git a/src/Makefile.in b/src/Makefile.in
index d0cd1eb..acc459e 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -72,7 +72,8 @@ am__installdirs = "$(DESTDIR)$(messaginglibdir)" \
LTLIBRARIES = $(messaginglib_LTLIBRARIES)
am__DEPENDENCIES_1 =
libmessaging_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am_libmessaging_la_OBJECTS = libmessaging_la-indicator-messages.lo
+am_libmessaging_la_OBJECTS = libmessaging_la-indicator-messages.lo \
+ libmessaging_la-gen-messages-service.xml.lo
libmessaging_la_OBJECTS = $(am_libmessaging_la_OBJECTS)
AM_V_lt = $(am__v_lt_$(V))
am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
@@ -86,6 +87,7 @@ am_indicator_messages_service_OBJECTS = \
indicator_messages_service-default-applications.$(OBJEXT) \
indicator_messages_service-messages-service.$(OBJEXT) \
indicator_messages_service-messages-service-dbus.$(OBJEXT) \
+ indicator_messages_service-gen-messages-service.xml.$(OBJEXT) \
indicator_messages_service-im-menu-item.$(OBJEXT) \
indicator_messages_service-app-menu-item.$(OBJEXT) \
indicator_messages_service-launcher-menu-item.$(OBJEXT) \
@@ -283,7 +285,8 @@ messaginglibdir = $(INDICATORDIR)
messaginglib_LTLIBRARIES = libmessaging.la
libmessaging_la_SOURCES = \
indicator-messages.c \
- messages-service-client.h \
+ gen-messages-service.xml.h \
+ gen-messages-service.xml.c \
dbus-data.h
libmessaging_la_CFLAGS = $(APPLET_CFLAGS) -Wall -Wl,-Bsymbolic-functions -Wl,-z,defs -Wl,--as-needed -Werror
@@ -297,9 +300,10 @@ indicator_messages_service_SOURCES = \
default-applications.h \
default-applications.c \
messages-service.c \
- messages-service-server.h \
messages-service-dbus.c \
messages-service-dbus.h \
+ gen-messages-service.xml.h \
+ gen-messages-service.xml.c \
im-menu-item.c \
im-menu-item.h \
app-menu-item.c \
@@ -314,8 +318,8 @@ indicator_messages_service_SOURCES = \
indicator_messages_service_CFLAGS = $(APPLET_CFLAGS) -Wall -Wl,-Bsymbolic-functions -Wl,-z,defs -Wl,--as-needed -Werror
indicator_messages_service_LDADD = $(APPLET_LIBS)
BUILT_SOURCES = \
- messages-service-client.h \
- messages-service-server.h
+ gen-messages-service.xml.h \
+ gen-messages-service.xml.c
CLEANFILES = \
$(BUILT_SOURCES)
@@ -446,11 +450,13 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-app-menu-item.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-default-applications.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-im-menu-item.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-launcher-menu-item.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-messages-service-dbus.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-messages-service.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/indicator_messages_service-seen-db.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmessaging_la-gen-messages-service.xml.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmessaging_la-indicator-messages.Plo@am__quote@
.c.o:
@@ -485,6 +491,14 @@ libmessaging_la-indicator-messages.lo: indicator-messages.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmessaging_la_CFLAGS) $(CFLAGS) -c -o libmessaging_la-indicator-messages.lo `test -f 'indicator-messages.c' || echo '$(srcdir)/'`indicator-messages.c
+libmessaging_la-gen-messages-service.xml.lo: gen-messages-service.xml.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmessaging_la_CFLAGS) $(CFLAGS) -MT libmessaging_la-gen-messages-service.xml.lo -MD -MP -MF $(DEPDIR)/libmessaging_la-gen-messages-service.xml.Tpo -c -o libmessaging_la-gen-messages-service.xml.lo `test -f 'gen-messages-service.xml.c' || echo '$(srcdir)/'`gen-messages-service.xml.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmessaging_la-gen-messages-service.xml.Tpo $(DEPDIR)/libmessaging_la-gen-messages-service.xml.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='gen-messages-service.xml.c' object='libmessaging_la-gen-messages-service.xml.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmessaging_la_CFLAGS) $(CFLAGS) -c -o libmessaging_la-gen-messages-service.xml.lo `test -f 'gen-messages-service.xml.c' || echo '$(srcdir)/'`gen-messages-service.xml.c
+
indicator_messages_service-default-applications.o: default-applications.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -MT indicator_messages_service-default-applications.o -MD -MP -MF $(DEPDIR)/indicator_messages_service-default-applications.Tpo -c -o indicator_messages_service-default-applications.o `test -f 'default-applications.c' || echo '$(srcdir)/'`default-applications.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/indicator_messages_service-default-applications.Tpo $(DEPDIR)/indicator_messages_service-default-applications.Po
@@ -533,6 +547,22 @@ indicator_messages_service-messages-service-dbus.obj: messages-service-dbus.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -c -o indicator_messages_service-messages-service-dbus.obj `if test -f 'messages-service-dbus.c'; then $(CYGPATH_W) 'messages-service-dbus.c'; else $(CYGPATH_W) '$(srcdir)/messages-service-dbus.c'; fi`
+indicator_messages_service-gen-messages-service.xml.o: gen-messages-service.xml.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -MT indicator_messages_service-gen-messages-service.xml.o -MD -MP -MF $(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Tpo -c -o indicator_messages_service-gen-messages-service.xml.o `test -f 'gen-messages-service.xml.c' || echo '$(srcdir)/'`gen-messages-service.xml.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Tpo $(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='gen-messages-service.xml.c' object='indicator_messages_service-gen-messages-service.xml.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -c -o indicator_messages_service-gen-messages-service.xml.o `test -f 'gen-messages-service.xml.c' || echo '$(srcdir)/'`gen-messages-service.xml.c
+
+indicator_messages_service-gen-messages-service.xml.obj: gen-messages-service.xml.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -MT indicator_messages_service-gen-messages-service.xml.obj -MD -MP -MF $(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Tpo -c -o indicator_messages_service-gen-messages-service.xml.obj `if test -f 'gen-messages-service.xml.c'; then $(CYGPATH_W) 'gen-messages-service.xml.c'; else $(CYGPATH_W) '$(srcdir)/gen-messages-service.xml.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Tpo $(DEPDIR)/indicator_messages_service-gen-messages-service.xml.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='gen-messages-service.xml.c' object='indicator_messages_service-gen-messages-service.xml.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -c -o indicator_messages_service-gen-messages-service.xml.obj `if test -f 'gen-messages-service.xml.c'; then $(CYGPATH_W) 'gen-messages-service.xml.c'; else $(CYGPATH_W) '$(srcdir)/gen-messages-service.xml.c'; fi`
+
indicator_messages_service-im-menu-item.o: im-menu-item.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(indicator_messages_service_CFLAGS) $(CFLAGS) -MT indicator_messages_service-im-menu-item.o -MD -MP -MF $(DEPDIR)/indicator_messages_service-im-menu-item.Tpo -c -o indicator_messages_service-im-menu-item.o `test -f 'im-menu-item.c' || echo '$(srcdir)/'`im-menu-item.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/indicator_messages_service-im-menu-item.Tpo $(DEPDIR)/indicator_messages_service-im-menu-item.Po
@@ -813,19 +843,15 @@ uninstall-am: uninstall-libexecPROGRAMS \
uninstall-messaginglibLTLIBRARIES
-messages-service-client.h: $(srcdir)/messages-service.xml
- dbus-binding-tool \
- --prefix=_messages_service_client \
- --mode=glib-client \
- --output=messages-service-client.h \
- $(srcdir)/messages-service.xml
+gen-%.xml.h: %.xml
+ @echo "Building $@ from $<"
+ @echo "extern const char * _$(subst -,_,$(subst .,_,$(basename $(notdir $<))));" > $@
-messages-service-server.h: $(srcdir)/messages-service.xml
- dbus-binding-tool \
- --prefix=_messages_service_server \
- --mode=glib-server \
- --output=messages-service-server.h \
- $(srcdir)/messages-service.xml
+gen-%.xml.c: %.xml
+ @echo "Building $@ from $<"
+ echo "const char * _$(subst -,_,$(subst .,_,$(basename $(notdir $<)))) = " > $@
+ @sed -e "s:\":\\\\\":g" -e s:^:\": -e s:\$$:\\\\n\": $< >> $@
+ @echo ";" >> $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/src/app-menu-item.c b/src/app-menu-item.c
index 0b0588e..e846914 100644
--- a/src/app-menu-item.c
+++ b/src/app-menu-item.c
@@ -70,8 +70,8 @@ static void app_menu_item_finalize (GObject *object);
static void activate_cb (AppMenuItem * self, guint timestamp, gpointer data);
static void count_changed (IndicateListener * listener, IndicateListenerServer * server, guint count, gpointer data);
static void count_cb (IndicateListener * listener, IndicateListenerServer * server, guint value, gpointer data);
-static void menu_cb (IndicateListener * listener, IndicateListenerServer * server, gchar * menupath, gpointer data);
-static void desktop_cb (IndicateListener * listener, IndicateListenerServer * server, gchar * value, gpointer data);
+static void menu_cb (IndicateListener * listener, IndicateListenerServer * server, const gchar * menupath, gpointer data);
+static void desktop_cb (IndicateListener * listener, IndicateListenerServer * server, const gchar * value, gpointer data);
static void update_label (AppMenuItem * self);
/* GObject Boilerplate */
@@ -300,7 +300,7 @@ count_cb (IndicateListener * listener, IndicateListenerServer * server, guint va
app structure and start sucking data out of it.
Mostly the name. */
static void
-desktop_cb (IndicateListener * listener, IndicateListenerServer * server, gchar * value, gpointer data)
+desktop_cb (IndicateListener * listener, IndicateListenerServer * server, const gchar * value, gpointer data)
{
g_return_if_fail(IS_APP_MENU_ITEM(data));
AppMenuItem * self = APP_MENU_ITEM(data);
@@ -469,7 +469,7 @@ root_changed (DbusmenuClient * client, DbusmenuMenuitem * newroot, gpointer data
/* Gets the path to menuitems if there are some. Now we need to
make them special. */
static void
-menu_cb (IndicateListener * listener, IndicateListenerServer * server, gchar * menupath, gpointer data)
+menu_cb (IndicateListener * listener, IndicateListenerServer * server, const gchar * menupath, gpointer data)
{
g_debug("Got Menu: %s", menupath);
g_return_if_fail(IS_APP_MENU_ITEM(data));
diff --git a/src/dbus-data.h b/src/dbus-data.h
index 100ac0a..abff3aa 100644
--- a/src/dbus-data.h
+++ b/src/dbus-data.h
@@ -2,11 +2,11 @@
#ifndef __DBUS_DATA_H__
#define __DBUS_DATA_H__ 1
-#define INDICATOR_MESSAGES_DBUS_NAME "org.ayatana.indicator.messages"
-#define INDICATOR_MESSAGES_DBUS_OBJECT "/org/ayatana/indicator/messages/menu"
+#define INDICATOR_MESSAGES_DBUS_NAME "com.canonical.indicator.messages"
+#define INDICATOR_MESSAGES_DBUS_OBJECT "/com/canonical/indicator/messages/menu"
-#define INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT "/org/ayatana/indicator/messages/service"
-#define INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE "org.ayatana.indicator.messages.service"
+#define INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT "/com/canonical/indicator/messages/service"
+#define INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE "com.canonical.indicator.messages.service"
#define APPLICATION_MENUITEM_TYPE "application-item"
#define APPLICATION_MENUITEM_PROP_NAME "label"
diff --git a/src/gen-messages-service.xml.c b/src/gen-messages-service.xml.c
new file mode 100644
index 0000000..0a1c0d1
--- /dev/null
+++ b/src/gen-messages-service.xml.c
@@ -0,0 +1,27 @@
+const char * _messages_service =
+"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+"<node name=\"/\">\n"
+" <interface name=\"com.canonical.indicator.messages.service\">\n"
+"\n"
+"<!-- Methods -->\n"
+" <method name=\"Watch\">\n"
+" <annotation name=\"org.freedesktop.DBus.GLib.Async\" value=\"true\" />\n"
+" </method>\n"
+" <method name=\"AttentionRequested\">\n"
+" <arg type=\"b\" name=\"dot\" direction=\"out\" />\n"
+" </method>\n"
+" <method name=\"IconShown\">\n"
+" <arg type=\"b\" name=\"hidden\" direction=\"out\" />\n"
+" </method>\n"
+"\n"
+"<!-- Signals -->\n"
+" <signal name=\"AttentionChanged\">\n"
+" <arg type=\"b\" name=\"dot\" direction=\"out\" />\n"
+" </signal>\n"
+" <signal name=\"IconChanged\">\n"
+" <arg type=\"b\" name=\"hidden\" direction=\"out\" />\n"
+" </signal>\n"
+"\n"
+" </interface>\n"
+"</node>\n"
+;
diff --git a/src/gen-messages-service.xml.h b/src/gen-messages-service.xml.h
new file mode 100644
index 0000000..7884498
--- /dev/null
+++ b/src/gen-messages-service.xml.h
@@ -0,0 +1 @@
+extern const char * _messages_service;
diff --git a/src/im-menu-item.c b/src/im-menu-item.c
index b8b3709..25fea52 100644
--- a/src/im-menu-item.c
+++ b/src/im-menu-item.c
@@ -358,7 +358,7 @@ count_cb (IndicateListener * listener, IndicateListenerServer * server, Indicate
this indicator should be calling for attention or not. If we are,
we need to signal that. */
static void
-attention_cb (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * property, const GValue * propertydata, gpointer data)
+attention_cb (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * property, GVariant * propertydata, gpointer data)
{
g_debug("Got Attention Information");
ImMenuItem * self = IM_MENU_ITEM(data);
@@ -373,10 +373,10 @@ attention_cb (IndicateListener * listener, IndicateListenerServer * server, Indi
ImMenuItemPrivate * priv = IM_MENU_ITEM_GET_PRIVATE(self);
gboolean wantit;
- if (G_VALUE_HOLDS_BOOLEAN(propertydata)) {
- wantit = g_value_get_boolean(propertydata);
- } else if (G_VALUE_HOLDS_STRING(propertydata)) {
- const gchar * propstring = g_value_get_string(propertydata);
+ if (g_variant_is_of_type(propertydata, G_VARIANT_TYPE_BOOLEAN)) {
+ wantit = g_variant_get_boolean(propertydata);
+ } else if (g_variant_is_of_type(propertydata, G_VARIANT_TYPE_STRING)) {
+ const gchar * propstring = g_variant_get_string(propertydata, NULL);
if (propstring == NULL || propstring[0] == '\0' || !g_strcmp0(propstring, "false")) {
wantit = FALSE;
@@ -427,7 +427,7 @@ indicator_modified_cb (IndicateListener * listener, IndicateListenerServer * ser
} else if (!g_strcmp0(property, INDICATE_INDICATOR_MESSAGES_PROP_COUNT)) {
indicate_listener_get_property(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_COUNT, count_cb, self);
} else if (!g_strcmp0(property, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION)) {
- indicate_listener_get_property_value(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);
+ indicate_listener_get_property_variant(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);
} else if (!g_strcmp0(property, "sender")) {
/* This is a compatibility string with v1 and should be removed */
g_debug("Indicator is using 'sender' property which is a v1 string.");
@@ -460,7 +460,7 @@ im_menu_item_new (IndicateListener * listener, IndicateListenerServer * server,
indicate_listener_get_property_time(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_TIME, time_cb, self);
indicate_listener_get_property(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ICON, icon_cb, self);
indicate_listener_get_property(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_COUNT, count_cb, self);
- indicate_listener_get_property_value(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);
+ indicate_listener_get_property_variant(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);
indicate_listener_get_property(listener, server, indicator, "sender", sender_cb, self);
g_signal_connect(G_OBJECT(self), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, G_CALLBACK(activate_cb), NULL);
diff --git a/src/indicator-messages.c b/src/indicator-messages.c
index b29edce..6fd6c5c 100644
--- a/src/indicator-messages.c
+++ b/src/indicator-messages.c
@@ -26,8 +26,6 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
#include <gtk/gtk.h>
#include <libdbusmenu-gtk/menu.h>
#include <libdbusmenu-gtk/menuitem.h>
-#include <dbus/dbus-glib.h>
-#include <dbus/dbus-glib-bindings.h>
#include <libindicator/indicator.h>
#include <libindicator/indicator-object.h>
@@ -35,7 +33,7 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
#include <libindicator/indicator-service-manager.h>
#include "dbus-data.h"
-#include "messages-service-client.h"
+#include "gen-messages-service.xml.h"
#define INDICATOR_MESSAGES_TYPE (indicator_messages_get_type ())
#define INDICATOR_MESSAGES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), INDICATOR_MESSAGES_TYPE, IndicatorMessages))
@@ -69,8 +67,10 @@ INDICATOR_SET_TYPE(INDICATOR_MESSAGES_TYPE)
/* Globals */
static GtkWidget * main_image = NULL;
-static DBusGProxy * icon_proxy = NULL;
+static GDBusProxy * icon_proxy = NULL;
static GtkSizeGroup * indicator_right_group = NULL;
+static GDBusNodeInfo * bus_node_info = NULL;
+static GDBusInterfaceInfo * bus_interface_info = NULL;
/* Prototypes */
static void indicator_messages_class_init (IndicatorMessagesClass *klass);
@@ -99,6 +99,24 @@ indicator_messages_class_init (IndicatorMessagesClass *klass)
io_class->get_image = get_icon;
io_class->get_menu = get_menu;
+ if (bus_node_info == NULL) {
+ GError * error = NULL;
+
+ bus_node_info = g_dbus_node_info_new_for_xml(_messages_service, &error);
+ if (error != NULL) {
+ g_error("Unable to parse Messaging Menu Interface description: %s", error->message);
+ g_error_free(error);
+ }
+ }
+
+ if (bus_interface_info == NULL) {
+ bus_interface_info = g_dbus_node_info_lookup_interface(bus_node_info, INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE);
+
+ if (bus_interface_info == NULL) {
+ g_error("Unable to find interface '" INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE "'");
+ }
+ }
+
return;
}
@@ -145,54 +163,77 @@ indicator_messages_finalize (GObject *object)
/* Functions */
-/* Called everytime the attention changes in the service. */
+/* Signal off of the proxy */
static void
-attention_changed_cb (DBusGProxy * proxy, gboolean dot, gpointer userdata)
+proxy_signal (GDBusProxy * proxy, const gchar * sender, const gchar * signal, GVariant * params, gpointer user_data)
{
- if (dot) {
- indicator_image_helper_update(GTK_IMAGE(main_image), "indicator-messages-new");
- } else {
- indicator_image_helper_update(GTK_IMAGE(main_image), "indicator-messages");
- }
- return;
-}
+ gboolean prop = g_variant_get_boolean(g_variant_get_child_value(params, 0));
-/* Change the icon to whether it should be visible or not */
-static void
-icon_changed_cb (DBusGProxy * proxy, gboolean hidden, gpointer userdata)
-{
- if (hidden) {
- gtk_widget_hide(main_image);
+ if (g_strcmp0("AttentionChanged", signal) == 0) {
+ if (prop) {
+ indicator_image_helper_update(GTK_IMAGE(main_image), "indicator-messages-new");
+ } else {
+ indicator_image_helper_update(GTK_IMAGE(main_image), "indicator-messages");
+ }
+ } else if (g_strcmp0("IconChanged", signal) == 0) {
+ if (prop) {
+ gtk_widget_hide(main_image);
+ } else {
+ gtk_widget_show(main_image);
+ }
} else {
- gtk_widget_show(main_image);
+ g_warning("Unknown signal %s", signal);
}
+
return;
}
/* Callback from getting the attention status from the service. */
static void
-attention_cb (DBusGProxy * proxy, gboolean dot, GError * error, gpointer userdata)
+attention_cb (GObject * object, GAsyncResult * ares, gpointer user_data)
{
+ GError * error = NULL;
+ GVariant * res = g_dbus_proxy_call_finish(G_DBUS_PROXY(object), ares, &error);
+
if (error != NULL) {
g_warning("Unable to get attention status: %s", error->message);
g_error_free(error);
return;
}
- return attention_changed_cb(proxy, dot, userdata);
+ gboolean prop = g_variant_get_boolean(g_variant_get_child_value(res, 0));
+
+ if (prop) {
+ indicator_image_helper_update(GTK_IMAGE(main_image), "indicator-messages-new");
+ } else {
+ indicator_image_helper_update(GTK_IMAGE(main_image), "indicator-messages");
+ }
+
+ return;
}
/* Change from getting the icon visibility from the service */
static void
-icon_cb (DBusGProxy * proxy, gboolean hidden, GError * error, gpointer userdata)
+icon_cb (GObject * object, GAsyncResult * ares, gpointer user_data)
{
+ GError * error = NULL;
+ GVariant * res = g_dbus_proxy_call_finish(G_DBUS_PROXY(object), ares, &error);
+
if (error != NULL) {
g_warning("Unable to get icon visibility: %s", error->message);
g_error_free(error);
return;
}
- return icon_changed_cb(proxy, hidden, userdata);
+ gboolean prop = g_variant_get_boolean(g_variant_get_child_value(res, 0));
+
+ if (prop) {
+ gtk_widget_hide(main_image);
+ } else {
+ gtk_widget_show(main_image);
+ }
+
+ return;
}
static guint connection_drop_timeout = 0;
@@ -209,6 +250,43 @@ connection_drop_cb (gpointer user_data)
return FALSE;
}
+/* Proxy is setup now.. whoo! */
+static void
+proxy_ready_cb (GObject * obj, GAsyncResult * res, gpointer user_data)
+{
+ GError * error = NULL;
+ GDBusProxy * proxy = g_dbus_proxy_new_for_bus_finish(res, &error);
+
+ if (error != NULL) {
+ g_warning("Unable to get proxy of service: %s", error->message);
+ g_error_free(error);
+ return;
+ }
+
+ icon_proxy = proxy;
+
+ g_signal_connect(G_OBJECT(proxy), "g-signal", G_CALLBACK(proxy_signal), user_data);
+
+ g_dbus_proxy_call(icon_proxy,
+ "AttentionRequested",
+ NULL, /* params */
+ G_DBUS_CALL_FLAGS_NONE,
+ -1, /* timeout */
+ NULL, /* cancel */
+ attention_cb,
+ user_data);
+ g_dbus_proxy_call(icon_proxy,
+ "IconShown",
+ NULL, /* params */
+ G_DBUS_CALL_FLAGS_NONE,
+ -1, /* timeout */
+ NULL, /* cancel */
+ icon_cb,
+ user_data);
+
+ return;
+}
+
/* Sets up all the icon information in the proxy. */
static void
connection_change (IndicatorServiceManager * sm, gboolean connected, gpointer user_data)
@@ -225,51 +303,46 @@ connection_change (IndicatorServiceManager * sm, gboolean connected, gpointer us
return;
}
- DBusGConnection * connection = dbus_g_bus_get(DBUS_BUS_SESSION, NULL);
- if (connection == NULL) {
- g_warning("Unable to get session bus");
- return;
- }
-
if (icon_proxy == NULL) {
- icon_proxy = dbus_g_proxy_new_for_name(connection,
- INDICATOR_MESSAGES_DBUS_NAME,
- INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT,
- INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE);
- if (icon_proxy == NULL) {
- g_warning("Unable to get messages service interface.");
- return;
- }
-
- dbus_g_proxy_add_signal(icon_proxy, "AttentionChanged", G_TYPE_BOOLEAN, G_TYPE_INVALID);
- dbus_g_proxy_connect_signal(icon_proxy,
- "AttentionChanged",
- G_CALLBACK(attention_changed_cb),
- NULL,
- NULL);
-
- dbus_g_proxy_add_signal(icon_proxy, "IconChanged", G_TYPE_BOOLEAN, G_TYPE_INVALID);
- dbus_g_proxy_connect_signal(icon_proxy,
- "IconChanged",
- G_CALLBACK(icon_changed_cb),
- NULL,
- NULL);
+ g_dbus_proxy_new_for_bus(G_BUS_TYPE_SESSION,
+ G_DBUS_PROXY_FLAGS_NONE,
+ bus_interface_info,
+ INDICATOR_MESSAGES_DBUS_NAME,
+ INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT,
+ INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE,
+ NULL, /* cancel */
+ proxy_ready_cb,
+ sm);
+ } else {
+ g_dbus_proxy_call(icon_proxy,
+ "AttentionRequested",
+ NULL, /* params */
+ G_DBUS_CALL_FLAGS_NONE,
+ -1, /* timeout */
+ NULL, /* cancel */
+ attention_cb,
+ sm);
+ g_dbus_proxy_call(icon_proxy,
+ "IconShown",
+ NULL, /* params */
+ G_DBUS_CALL_FLAGS_NONE,
+ -1, /* timeout */
+ NULL, /* cancel */
+ icon_cb,
+ sm);
}
- org_ayatana_indicator_messages_service_attention_requested_async(icon_proxy, attention_cb, NULL);
- org_ayatana_indicator_messages_service_icon_shown_async(icon_proxy, icon_cb, NULL);
-
return;
}
/* Sets the icon when it changes. */
static void
-application_icon_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value, gpointer user_data)
+application_icon_change_cb (DbusmenuMenuitem * mi, gchar * prop, GVariant * value, gpointer user_data)
{
if (!g_strcmp0(prop, APPLICATION_MENUITEM_PROP_ICON)) {
/* Set the main icon */
if (GTK_IS_IMAGE(user_data)) {
- gtk_image_set_from_icon_name(GTK_IMAGE(user_data), g_value_get_string(value), GTK_ICON_SIZE_MENU);
+ gtk_image_set_from_icon_name(GTK_IMAGE(user_data), g_variant_get_string(value, NULL), GTK_ICON_SIZE_MENU);
}
}
@@ -278,12 +351,12 @@ application_icon_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value,
/* Sets the label when it changes. */
static void
-application_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value, gpointer user_data)
+application_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GVariant * value, gpointer user_data)
{
if (!g_strcmp0(prop, APPLICATION_MENUITEM_PROP_NAME)) {
/* Set the main label */
if (GTK_IS_LABEL(user_data)) {
- gtk_label_set_text(GTK_LABEL(user_data), g_value_get_string(value));
+ gtk_label_set_text(GTK_LABEL(user_data), g_variant_get_string(value, NULL));
}
}
@@ -299,6 +372,7 @@ application_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value,
static gboolean
application_triangle_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
{
+ GtkAllocation allocation;
GtkStyle *style;
cairo_t *cr;
int x, y, arrow_width, arrow_height;
@@ -316,11 +390,12 @@ application_triangle_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer
/* set arrow position / dimensions */
arrow_width = 5; /* the pixel-based reference triangle is 5x9 */
arrow_height = 9;
- x = widget->allocation.x;
- y = widget->allocation.y + widget->allocation.height/2.0 - (double)arrow_height/2.0;
+ gtk_widget_get_allocation (widget, &allocation);
+ x = allocation.x;
+ y = allocation.y + allocation.height/2.0 - (double)arrow_height/2.0;
/* initialize cairo drawing area */
- cr = (cairo_t*) gdk_cairo_create (widget->window);
+ cr = (cairo_t*) gdk_cairo_create (gtk_widget_get_window (widget));
/* set line width */
cairo_set_line_width (cr, 1.0);
@@ -359,6 +434,7 @@ custom_cairo_rounded_rectangle (cairo_t *cr,
static gboolean
numbers_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
{
+ GtkAllocation allocation;
GtkStyle *style;
cairo_t *cr;
double x, y, w, h;
@@ -371,10 +447,11 @@ numbers_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
style = gtk_widget_get_style (widget);
/* set arrow position / dimensions */
- w = widget->allocation.width;
- h = widget->allocation.height;
- x = widget->allocation.x;
- y = widget->allocation.y;
+ gtk_widget_get_allocation (widget, &allocation);
+ w = allocation.width;
+ h = allocation.height;
+ x = allocation.x;
+ y = allocation.y;
layout = gtk_label_get_layout (GTK_LABEL(widget));
@@ -385,7 +462,7 @@ numbers_draw_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
font_size = pango_font_description_get_size (font_description); */
/* initialize cairo drawing area */
- cr = (cairo_t*) gdk_cairo_create (widget->window);
+ cr = (cairo_t*) gdk_cairo_create (gtk_widget_get_window (widget));
/* set line width */
cairo_set_line_width (cr, 1.0);
@@ -468,14 +545,14 @@ struct _indicator_item_t {
/* Whenever we have a property change on a DbusmenuMenuitem
we need to be responsive to that. */
static void
-indicator_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value, indicator_item_t * mi_data)
+indicator_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GVariant * value, indicator_item_t * mi_data)
{
if (!g_strcmp0(prop, INDICATOR_MENUITEM_PROP_LABEL)) {
/* Set the main label */
- gtk_label_set_text(GTK_LABEL(mi_data->label), g_value_get_string(value));
+ gtk_label_set_text(GTK_LABEL(mi_data->label), g_variant_get_string(value, NULL));
} else if (!g_strcmp0(prop, INDICATOR_MENUITEM_PROP_RIGHT)) {
/* Set the right label */
- gtk_label_set_text(GTK_LABEL(mi_data->right), g_value_get_string(value));
+ gtk_label_set_text(GTK_LABEL(mi_data->right), g_variant_get_string(value, NULL));
} else if (!g_strcmp0(prop, INDICATOR_MENUITEM_PROP_ICON)) {
/* We don't use the value here, which is probably less efficient,
but it's easier to use the easy function. And since th value
diff --git a/src/messages-service-client.h b/src/messages-service-client.h
deleted file mode 100644
index 2a858e8..0000000
--- a/src/messages-service-client.h
+++ /dev/null
@@ -1,139 +0,0 @@
-/* Generated by dbus-binding-tool; do not edit! */
-
-#include <glib.h>
-#include <dbus/dbus-glib.h>
-
-G_BEGIN_DECLS
-
-#ifndef _DBUS_GLIB_ASYNC_DATA_FREE
-#define _DBUS_GLIB_ASYNC_DATA_FREE
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-void
-_dbus_glib_async_data_free (gpointer stuff)
-{
- g_slice_free (DBusGAsyncData, stuff);
-}
-#endif
-
-#ifndef DBUS_GLIB_CLIENT_WRAPPERS_org_ayatana_indicator_messages_service
-#define DBUS_GLIB_CLIENT_WRAPPERS_org_ayatana_indicator_messages_service
-
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-gboolean
-org_ayatana_indicator_messages_service_watch (DBusGProxy *proxy, GError **error)
-
-{
- return dbus_g_proxy_call (proxy, "Watch", error, G_TYPE_INVALID, G_TYPE_INVALID);
-}
-
-typedef void (*org_ayatana_indicator_messages_service_watch_reply) (DBusGProxy *proxy, GError *error, gpointer userdata);
-
-static void
-org_ayatana_indicator_messages_service_watch_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
-{
- DBusGAsyncData *data = (DBusGAsyncData*) user_data;
- GError *error = NULL;
- dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID);
- (*(org_ayatana_indicator_messages_service_watch_reply)data->cb) (proxy, error, data->userdata);
- return;
-}
-
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-DBusGProxyCall*
-org_ayatana_indicator_messages_service_watch_async (DBusGProxy *proxy, org_ayatana_indicator_messages_service_watch_reply callback, gpointer userdata)
-
-{
- DBusGAsyncData *stuff;
- stuff = g_slice_new (DBusGAsyncData);
- stuff->cb = G_CALLBACK (callback);
- stuff->userdata = userdata;
- return dbus_g_proxy_begin_call (proxy, "Watch", org_ayatana_indicator_messages_service_watch_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
-}
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-gboolean
-org_ayatana_indicator_messages_service_attention_requested (DBusGProxy *proxy, gboolean* OUT_dot, GError **error)
-
-{
- return dbus_g_proxy_call (proxy, "AttentionRequested", error, G_TYPE_INVALID, G_TYPE_BOOLEAN, OUT_dot, G_TYPE_INVALID);
-}
-
-typedef void (*org_ayatana_indicator_messages_service_attention_requested_reply) (DBusGProxy *proxy, gboolean OUT_dot, GError *error, gpointer userdata);
-
-static void
-org_ayatana_indicator_messages_service_attention_requested_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
-{
- DBusGAsyncData *data = (DBusGAsyncData*) user_data;
- GError *error = NULL;
- gboolean OUT_dot;
- dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_BOOLEAN, &OUT_dot, G_TYPE_INVALID);
- (*(org_ayatana_indicator_messages_service_attention_requested_reply)data->cb) (proxy, OUT_dot, error, data->userdata);
- return;
-}
-
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-DBusGProxyCall*
-org_ayatana_indicator_messages_service_attention_requested_async (DBusGProxy *proxy, org_ayatana_indicator_messages_service_attention_requested_reply callback, gpointer userdata)
-
-{
- DBusGAsyncData *stuff;
- stuff = g_slice_new (DBusGAsyncData);
- stuff->cb = G_CALLBACK (callback);
- stuff->userdata = userdata;
- return dbus_g_proxy_begin_call (proxy, "AttentionRequested", org_ayatana_indicator_messages_service_attention_requested_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
-}
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-gboolean
-org_ayatana_indicator_messages_service_icon_shown (DBusGProxy *proxy, gboolean* OUT_hidden, GError **error)
-
-{
- return dbus_g_proxy_call (proxy, "IconShown", error, G_TYPE_INVALID, G_TYPE_BOOLEAN, OUT_hidden, G_TYPE_INVALID);
-}
-
-typedef void (*org_ayatana_indicator_messages_service_icon_shown_reply) (DBusGProxy *proxy, gboolean OUT_hidden, GError *error, gpointer userdata);
-
-static void
-org_ayatana_indicator_messages_service_icon_shown_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
-{
- DBusGAsyncData *data = (DBusGAsyncData*) user_data;
- GError *error = NULL;
- gboolean OUT_hidden;
- dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_BOOLEAN, &OUT_hidden, G_TYPE_INVALID);
- (*(org_ayatana_indicator_messages_service_icon_shown_reply)data->cb) (proxy, OUT_hidden, error, data->userdata);
- return;
-}
-
-static
-#ifdef G_HAVE_INLINE
-inline
-#endif
-DBusGProxyCall*
-org_ayatana_indicator_messages_service_icon_shown_async (DBusGProxy *proxy, org_ayatana_indicator_messages_service_icon_shown_reply callback, gpointer userdata)
-
-{
- DBusGAsyncData *stuff;
- stuff = g_slice_new (DBusGAsyncData);
- stuff->cb = G_CALLBACK (callback);
- stuff->userdata = userdata;
- return dbus_g_proxy_begin_call (proxy, "IconShown", org_ayatana_indicator_messages_service_icon_shown_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
-}
-#endif /* defined DBUS_GLIB_CLIENT_WRAPPERS_org_ayatana_indicator_messages_service */
-
-G_END_DECLS
diff --git a/src/messages-service-dbus.c b/src/messages-service-dbus.c
index d9c0e8d..6cc33e0 100644
--- a/src/messages-service-dbus.c
+++ b/src/messages-service-dbus.c
@@ -24,9 +24,10 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config.h"
#endif
-#include <dbus/dbus-glib.h>
+#include <gio/gio.h>
#include "messages-service-dbus.h"
#include "dbus-data.h"
+#include "gen-messages-service.xml.h"
enum {
ATTENTION_CHANGED,
@@ -40,6 +41,7 @@ typedef struct _MessageServiceDbusPrivate MessageServiceDbusPrivate;
struct _MessageServiceDbusPrivate
{
+ GDBusConnection * connection;
gboolean dot;
gboolean hidden;
};
@@ -51,15 +53,26 @@ static void message_service_dbus_class_init (MessageServiceDbusClass *klass);
static void message_service_dbus_init (MessageServiceDbus *self);
static void message_service_dbus_dispose (GObject *object);
static void message_service_dbus_finalize (GObject *object);
-
-static void _messages_service_server_watch (void);
-static gboolean _messages_service_server_attention_requested (MessageServiceDbus * self, gboolean * dot, GError ** error);
-static gboolean _messages_service_server_icon_shown (MessageServiceDbus * self, gboolean * hidden, GError ** error);
-
-#include "messages-service-server.h"
+static void bus_method_call (GDBusConnection * connection,
+ const gchar * sender,
+ const gchar * path,
+ const gchar * interface,
+ const gchar * method,
+ GVariant * params,
+ GDBusMethodInvocation * invocation,
+ gpointer user_data);
+
+static GDBusNodeInfo * bus_node_info = NULL;
+static GDBusInterfaceInfo * bus_interface_info = NULL;
+static const GDBusInterfaceVTable bus_interface_table = {
+ method_call: bus_method_call,
+ get_property: NULL, /* No properties */
+ set_property: NULL /* No properties */
+};
G_DEFINE_TYPE (MessageServiceDbus, message_service_dbus, G_TYPE_OBJECT);
+
static void
message_service_dbus_class_init (MessageServiceDbusClass *klass)
{
@@ -86,8 +99,57 @@ message_service_dbus_class_init (MessageServiceDbusClass *klass)
g_cclosure_marshal_VOID__BOOLEAN,
G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
+ if (bus_node_info == NULL) {
+ GError * error = NULL;
+
+ bus_node_info = g_dbus_node_info_new_for_xml(_messages_service, &error);
+ if (error != NULL) {
+ g_error("Unable to parse Messaging Menu Interface description: %s", error->message);
+ g_error_free(error);
+ }
+ }
+
+ if (bus_interface_info == NULL) {
+ bus_interface_info = g_dbus_node_info_lookup_interface(bus_node_info, INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE);
+
+ if (bus_interface_info == NULL) {
+ g_error("Unable to find interface '" INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE "'");
+ }
+ }
+
+ return;
+}
+
+static void
+connection_cb (GObject * object, GAsyncResult * res, gpointer user_data)
+{
+ GError * error = NULL;
+ GDBusConnection * connection = g_bus_get_finish(res, &error);
+
+ if (error != NULL) {
+ g_error("Unable to connect to the session bus: %s", error->message);
+ g_error_free(error);
+ return;
+ }
+
+ MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(user_data);
+ priv->connection = connection;
+
+ g_dbus_connection_register_object(connection,
+ INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT,
+ bus_interface_info,
+ &bus_interface_table,
+ user_data,
+ NULL, /* destroy */
+ &error);
+
+ if (error != NULL) {
+ g_error("Unable to register on session bus: %s", error->message);
+ g_error_free(error);
+ return;
+ }
- dbus_g_object_type_install_info(MESSAGE_SERVICE_DBUS_TYPE, &dbus_glib__messages_service_server_object_info);
+ g_debug("Service on session bus");
return;
}
@@ -95,10 +157,7 @@ message_service_dbus_class_init (MessageServiceDbusClass *klass)
static void
message_service_dbus_init (MessageServiceDbus *self)
{
- DBusGConnection * connection = dbus_g_bus_get(DBUS_BUS_SESSION, NULL);
- dbus_g_connection_register_g_object(connection,
- INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT,
- G_OBJECT(self));
+ g_bus_get(G_BUS_TYPE_SESSION, NULL, connection_cb, self);
MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(self);
@@ -111,7 +170,12 @@ message_service_dbus_init (MessageServiceDbus *self)
static void
message_service_dbus_dispose (GObject *object)
{
+ MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(object);
+ if (priv->connection != NULL) {
+ g_object_unref(priv->connection);
+ priv->connection = NULL;
+ }
G_OBJECT_CLASS (message_service_dbus_parent_class)->dispose (object);
return;
@@ -132,31 +196,23 @@ message_service_dbus_new (void)
return MESSAGE_SERVICE_DBUS(g_object_new(MESSAGE_SERVICE_DBUS_TYPE, NULL));
}
-/* DBus function to say that someone is watching */
+/* Method request off of DBus */
static void
-_messages_service_server_watch (void)
-{
-
-}
-
-/* DBus interface to request the private variable to know
- whether there is a green dot. */
-static gboolean
-_messages_service_server_attention_requested (MessageServiceDbus * self, gboolean * dot, GError ** error)
+bus_method_call (GDBusConnection * connection, const gchar * sender, const gchar * path, const gchar * interface, const gchar * method, GVariant * params, GDBusMethodInvocation * invocation, gpointer user_data)
{
- MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(self);
- *dot = priv->dot;
- return TRUE;
-}
+ MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(user_data);
+
+ if (g_strcmp0("AttentionRequested", method) == 0) {
+ g_dbus_method_invocation_return_value(invocation, g_variant_new("(b)", priv->dot));
+ return;
+ } else if (g_strcmp0("IconShown", method) == 0) {
+ g_dbus_method_invocation_return_value(invocation, g_variant_new("(b)", priv->hidden));
+ return;
+ } else {
+ g_warning("Unknown function call '%s'", method);
+ }
-/* DBus interface to request the private variable to know
- whether the icon is hidden. */
-static gboolean
-_messages_service_server_icon_shown (MessageServiceDbus * self, gboolean * hidden, GError ** error)
-{
- MessageServiceDbusPrivate * priv = MESSAGE_SERVICE_DBUS_GET_PRIVATE(self);
- *hidden = priv->hidden;
- return TRUE;
+ return;
}
void
@@ -167,6 +223,16 @@ message_service_dbus_set_attention (MessageServiceDbus * self, gboolean attentio
if (attention != priv->dot) {
priv->dot = attention;
g_signal_emit(G_OBJECT(self), signals[ATTENTION_CHANGED], 0, priv->dot, TRUE);
+
+ if (priv->connection != NULL) {
+ g_dbus_connection_emit_signal(priv->connection,
+ NULL,
+ INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT,
+ INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE,
+ "AttentionChanged",
+ g_variant_new("(b)", priv->dot),
+ NULL);
+ }
}
return;
}
@@ -179,6 +245,16 @@ message_service_dbus_set_icon (MessageServiceDbus * self, gboolean hidden)
if (hidden != priv->hidden) {
priv->hidden = hidden;
g_signal_emit(G_OBJECT(self), signals[ICON_CHANGED], 0, priv->hidden, TRUE);
+
+ if (priv->connection != NULL) {
+ g_dbus_connection_emit_signal(priv->connection,
+ NULL,
+ INDICATOR_MESSAGES_DBUS_SERVICE_OBJECT,
+ INDICATOR_MESSAGES_DBUS_SERVICE_INTERFACE,
+ "IconChanged",
+ g_variant_new("(b)", priv->hidden),
+ NULL);
+ }
}
return;
}
diff --git a/src/messages-service-server.h b/src/messages-service-server.h
deleted file mode 100644
index 61921f9..0000000
--- a/src/messages-service-server.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/* Generated by dbus-binding-tool; do not edit! */
-
-
-#ifndef __dbus_glib_marshal__messages_service_server_MARSHAL_H__
-#define __dbus_glib_marshal__messages_service_server_MARSHAL_H__
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#ifdef G_ENABLE_DEBUG
-#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
-#define g_marshal_value_peek_char(v) g_value_get_char (v)
-#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
-#define g_marshal_value_peek_int(v) g_value_get_int (v)
-#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
-#define g_marshal_value_peek_long(v) g_value_get_long (v)
-#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
-#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
-#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
-#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
-#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
-#define g_marshal_value_peek_float(v) g_value_get_float (v)
-#define g_marshal_value_peek_double(v) g_value_get_double (v)
-#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
-#define g_marshal_value_peek_param(v) g_value_get_param (v)
-#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
-#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
-#define g_marshal_value_peek_object(v) g_value_get_object (v)
-#else /* !G_ENABLE_DEBUG */
-/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
- * Do not access GValues directly in your code. Instead, use the
- * g_value_get_*() functions
- */
-#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
-#define g_marshal_value_peek_char(v) (v)->data[0].v_int
-#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
-#define g_marshal_value_peek_int(v) (v)->data[0].v_int
-#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
-#define g_marshal_value_peek_long(v) (v)->data[0].v_long
-#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
-#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
-#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
-#define g_marshal_value_peek_enum(v) (v)->data[0].v_long
-#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong
-#define g_marshal_value_peek_float(v) (v)->data[0].v_float
-#define g_marshal_value_peek_double(v) (v)->data[0].v_double
-#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
-#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
-#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
-#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
-#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
-#endif /* !G_ENABLE_DEBUG */
-
-
-/* NONE:POINTER */
-#define dbus_glib_marshal__messages_service_server_VOID__POINTER g_cclosure_marshal_VOID__POINTER
-#define dbus_glib_marshal__messages_service_server_NONE__POINTER dbus_glib_marshal__messages_service_server_VOID__POINTER
-
-/* BOOLEAN:POINTER,POINTER */
-extern void dbus_glib_marshal__messages_service_server_BOOLEAN__POINTER_POINTER (GClosure *closure,
- GValue *return_value,
- guint n_param_values,
- const GValue *param_values,
- gpointer invocation_hint,
- gpointer marshal_data);
-void
-dbus_glib_marshal__messages_service_server_BOOLEAN__POINTER_POINTER (GClosure *closure,
- GValue *return_value G_GNUC_UNUSED,
- guint n_param_values,
- const GValue *param_values,
- gpointer invocation_hint G_GNUC_UNUSED,
- gpointer marshal_data)
-{
- typedef gboolean (*GMarshalFunc_BOOLEAN__POINTER_POINTER) (gpointer data1,
- gpointer arg_1,
- gpointer arg_2,
- gpointer data2);
- register GMarshalFunc_BOOLEAN__POINTER_POINTER callback;
- register GCClosure *cc = (GCClosure*) closure;
- register gpointer data1, data2;
- gboolean v_return;
-
- g_return_if_fail (return_value != NULL);
- g_return_if_fail (n_param_values == 3);
-
- if (G_CCLOSURE_SWAP_DATA (closure))
- {
- data1 = closure->data;
- data2 = g_value_peek_pointer (param_values + 0);
- }
- else
- {
- data1 = g_value_peek_pointer (param_values + 0);
- data2 = closure->data;
- }
- callback = (GMarshalFunc_BOOLEAN__POINTER_POINTER) (marshal_data ? marshal_data : cc->callback);
-
- v_return = callback (data1,
- g_marshal_value_peek_pointer (param_values + 1),
- g_marshal_value_peek_pointer (param_values + 2),
- data2);
-
- g_value_set_boolean (return_value, v_return);
-}
-
-G_END_DECLS
-
-#endif /* __dbus_glib_marshal__messages_service_server_MARSHAL_H__ */
-
-#include <dbus/dbus-glib.h>
-static const DBusGMethodInfo dbus_glib__messages_service_server_methods[] = {
- { (GCallback) _messages_service_server_watch, dbus_glib_marshal__messages_service_server_NONE__POINTER, 0 },
- { (GCallback) _messages_service_server_attention_requested, dbus_glib_marshal__messages_service_server_BOOLEAN__POINTER_POINTER, 48 },
- { (GCallback) _messages_service_server_icon_shown, dbus_glib_marshal__messages_service_server_BOOLEAN__POINTER_POINTER, 121 },
-};
-
-const DBusGObjectInfo dbus_glib__messages_service_server_object_info = {
- 0,
- dbus_glib__messages_service_server_methods,
- 3,
-"org.ayatana.indicator.messages.service\0Watch\0A\0\0org.ayatana.indicator.messages.service\0AttentionRequested\0S\0dot\0O\0F\0N\0b\0\0org.ayatana.indicator.messages.service\0IconShown\0S\0hidden\0O\0F\0N\0b\0\0\0",
-"org.ayatana.indicator.messages.service\0AttentionChanged\0org.ayatana.indicator.messages.service\0IconChanged\0\0",
-"\0"
-};
-
diff --git a/src/messages-service.c b/src/messages-service.c
index b87c2ff..e3352e8 100644
--- a/src/messages-service.c
+++ b/src/messages-service.c
@@ -25,7 +25,6 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
#include <libintl.h>
#include <config.h>
#include <pango/pango-utils.h>
-#include <dbus/dbus-glib-bindings.h>
#include <libindicate/listener.h>
#include <libindicator/indicator-service.h>
#include <gio/gio.h>
diff --git a/src/messages-service.xml b/src/messages-service.xml
index f991179..8a592db 100644
--- a/src/messages-service.xml
+++ b/src/messages-service.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
- <interface name="org.ayatana.indicator.messages.service">
+ <interface name="com.canonical.indicator.messages.service">
<!-- Methods -->
<method name="Watch">