[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: DBus Menu in Gtk theme

From: Niels Grewe
Subject: Re: DBus Menu in Gtk theme
Date: Wed, 15 Jan 2014 21:26:56 +0000

Am 15.01.2014 um 20:55 schrieb David Chisnall <address@hidden>:

> On 15 Jan 2014, at 11:34, Niels Grewe <address@hidden> wrote:
>> Hi guys,
>> Am 01.01.2014 um 21:09 schrieb Niels Grewe <address@hidden>:
>>> 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.
>> Well, about this. I’ve implemented the signal stuff, and it turns out that 
>> not properly updating the menu wasn’t the entire problem. The other problem 
>> was that D-Bus has a type called ‘variant’, which basically means ‘whatever 
>> we agreed upon in some obscure comment in the interface description file 
>> that really should be backed by a proper specification’ 
>> The existing approach was to make an educated guess about what D-Bus type 
>> most closely matches the Objective-C type of the object you’re passing, and 
>> assume that the other side, e.g. promote integers to the larger type if 
>> required, etc. That was of course a bit fragile, and as it turns out, fails 
>> for a number of D-Bus implementations (for example the one used in 
>> libdbusmenu). As a result, I have extended DBusKit with an interface for 
>> explicitly indicating the type as which an object should be passed over the 
>> bus.
>> Using these changes, our D-Bus menu implementation is now working to the 
>> point where it is just as usable as  the native menu. It even passes icons 
>> along to the global menu. That’s so cool! The one remaining problem that I 
>> can’t figure out right now is that the menu is not being restored when you 
>> minimise and re-maximise the window. But I’m sure that we’ll figure that out 
>> eventually.
> That's really great!  I'd love to see the Ubuntu packages use this and the 
> GNOME theme by default, so GNUstep applications looked and felt like other 
> applications out of the box.

Yes, I imagine that would do wonders for public perception. I’ve just added 
code to the Gnome theme that loads the DBusMenu bundle if it is available and 
lets the menu server display the menu if it is available.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]