Niels, What a great happy new year surprise. David and I were just talking about this. :)
Thanks for working on this. Very nice work! Greg On Jan 1, 2014, at 3:09 PM, Niels Grewe <[email protected]> wrote: > Happy new year everybody! > > I’ll just do my own bit of ‘thread necromancy’, as Ivan adequately put it. I > finally found the time to hack a bit more on this D-Bus menu thing. I > originally started working on this back in the summer at the Cambridge > hackathon. It took me a while to find enough time to get all the bits and > pieces in order, but I finally have a partially working implementation of > Canonical’s global menu protocol. Please see [0] for a screenshot of Ink > running with a theme that delegates displaying the menu to the Ubuntu menu > server. Unfortunately, it’s not very useful at the moment, because I haven’t > implemented sending signals/notifications from DBusKit out to other D-Bus > objects. This is required to keep the menu server updated about the current > status of the menu, so by the time you start interacting with the menu, the > structure is out of date and ends up getting a bit messed up, so many of the > menu items won’t work properly. Still, it’s a pretty good start (and resulted > in quite a few improvements and bugfixes to DBusKit!) and I intend to add the > few missing parts soon, so that it becomes actually usable. > > If you want to check it out in the meantime, please update to the latest > trunk version of -gui -back and dbuskit. The bundle that proxies the menu to > D-Bus is located in ./Bundles/DBusMenu, and there is an example theme in > ./Examples/GlobalMenu that shows you how to integrate the global menu into a > theme. > > Cheers, > > Niels > > [0] http://www.halbordnung.de/~thebeing/gnustep/global-menu-ink.png > > Am 24.06.2013 um 15:15 schrieb Ivan Vučica <[email protected]>: > >> I've played a bit more with DBus Menu, and I've accidentally stumbled upon >> what's been causing my 'minimal' example of creating a 'global menu' not to >> work. >> >> The issue? Standalone items apparently cannot exist in the dbusmenu's root. >> They must be actual menus, with subitems, it seems. >> >> So, I'm happy that the little devil finally works. It's terribly ugly, but >> it works. >> https://bitbucket.org/ivucica/mini-dbusmenu >> >> This doesn't, of course, help with GNUstep, considering the consensus is >> that DBusKit should be used instead of hacks with glib and its main loop. >> >> But the following code from Enlightenment might: >> >> http://git.enlightenment.org/core/elementary.git/plain/src/lib/elm_dbus_menu.c?id=f13463da05b76d962c5b73f4706d137a3f76ef22 >> >> Considering it seems to use their own DBus implementation, and does not seem >> to reuse any Canonical's components, or Gtk or Qt, it might be helpful in >> figuring out the protocol. On the other hand, someone who understands DBus >> better than I do (at the moment) might not need that, either; to me >> personally, Canonical's documentation about the protocol when talking over >> DBus was not extremely helpful. >> >> 'Java Swing Ayatana' project contained more useful code when it comes to >> integrating glib version of libdbusmenu. >> >> And Enlightenment seems to contain code useful when talking directly over >> DBus, without Canonical's wrapper. >> >> On Wednesday, November 14, 2012, Niels Grewe wrote: >> Hi Ivan, >> >> On 14.11.2012 19:17, Ivan Vučica wrote: >>> On Tue, May 22, 2012 at 3:57 PM, Niels Grewe <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> The problem is that DBusKit does not support exposing objects right now, >>> but since there is interest in this from somebody who is not me, I'm now >>> officially motivated/coerced to finally finish that part of DBusKit. >>> Most of the difficult parts are done, but I'm still lacking code that >>> takes care of registering exported objects with the D-Bus daemon. >>> >>> >>> Just checking: was some work done here? >> >> Yes, quite a bit, though mostly under-the-hood stuff. Registration of >> objects is working and they can be messaged from other D-Bus peers. The >> problem is that at the moment, you kinda would have to hand-craft the >> information required by DBusKit to map Obj-C methods to D-Bus methods. I >> have bits of code here and there that automates this, but I didn't get >> to around to bringing it into a usable state. >> >> Also WIP are D-Bus property support and outgoing notifications/signals. >> IIrc, you need the latter for DBus menus. I hope that I'd be able to >> work more on that soon. >> >> Cheers, >> >> Niels >> >> >> -- >> Ivan Vučica - [email protected] >> >> > > _______________________________________________ > Discuss-gnustep mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/discuss-gnustep _______________________________________________ Discuss-gnustep mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnustep
