xfconf gdbus port (GValue vs GVariant)

Ali Abdallah aliovx at gmail.com
Thu Mar 24 10:36:06 CET 2016


Hello guys,

As you may already know, I'm porting xfconf to gdbus for 4.14. I just 
wanted to share with you some thoughts. Currently libxfconf relies on 
GValue (an insane decision of dbus-glib bindings...). Obviously it makes 
more sense to rewrite the internal working of xfconf to rely on GVariant 
instead, but this implies API changes/deprecations of some symbols. For 
this I see two options.

1) Keep relying on GValue and convert it to a GVariant each time to send 
it over the bus-->no API changes.
2) Rewrite the internal working of libxfconf and rely on GVariant --> 
API changes:
/xfconf_channel_set_property/ takes GValue
    signal /property-changed/ sends GValue.

Option 2.1
Deprecate /xfconf_channel_set_property /and provide 
/xfconf_channel_set_variant/
Deprecate /property-changed/ signal and provide a new signal "changed" 
which sends a GVariant.

While I vote for 2.1, I'm okay with any of the above solutions.

Cheers,
ali
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.xfce.org/pipermail/xfce4-dev/attachments/20160324/9ee42dac/attachment.html>


More information about the Xfce4-dev mailing list