linuxdeepin / dtkcore

Deepin Toolkit, core module
Other
72 stars 84 forks source link

Feature request: implement missing features of QtDBus #372

Open black-desk opened 11 months ago

black-desk commented 11 months ago
  1. DBus Standard Interfaces

    DBus spec encourage to use "Standard Interfaces", but QtDBus missing classes or some feature for these interface, make using and have a dbus service implement those interfaces inconvenient.

    • org.freedesktop.DBus.Properties

      QtDBus will not emit the propertiesChanged dbus signal.

    • org.freedesktop.DBus.ObjectManager

    This interface is missing. And a feature is missing in QtDBus to make use of this object manager interface.

  2. Listen DBus signal from all objects in a subtree.

    DBus spec 0.16 add a new key path_namespace in the rule of "org.freedesktop.DBus.AddMatch" interface.

    https://dbus.freedesktop.org/doc/dbus-specification.html#message-bus-routing-match-rules

    This key can be used in listen signal sent from all the dbus object in a subtree.

    But QDBus does not support this feature.

As an organization make use of DBus heavily, I suggest that we could implement these features in DTKCore.

kegechen commented 11 months ago

DDBusExtendedAbstractInterface 是不是可以满足 propertyChanged 的需求

black-desk commented 11 months ago

DDBusExtendedAbstractInterface 是不是可以满足 propertyChanged 的需求

看起来可以

asterwyx commented 11 months ago

dtkcore里面现在有两个抽象的DBus Interface类(DDBusExtendedAbstractInterface和DDBusInterface),这两个类是不是应该整理一下了。