[next] Remove dbus-glib GTypes from public API: TpSvc* signals
Submitted by Simon McVittie
Assigned to Telepathy bugs list
Description
+++ This bug was initially created as a clone of Bug #76369 +++
We should make sure that dbus-glib isn't exposed in our high-level API. One thing we can do is to stop TpSvc* interfaces from emitting signals.
Here are the signals that were mandated by dbus-glib and are also used as GObject signals:
---- potentially emitted by base classes ----
Connection (all CMs): "status-changed",
Used just about everywhere; needs special-casing
Channel (all CMs): "closed",
Used extensively, special case needed
"content-added", "content-removed", "call-state-changed",
Used in Gabble, special case probably needed
TLSCertificate (potentially all CMs): "accepted", "rejected",
Used in Gabble and Haze. We could emit normal signals adjacent to these.
---- only emitted by CM/MC code ----
Account (MC): "removed" ChannelDispatcher/CDO/CR (MC): "finished", "failed", "succeeded",
Those are actively used in MC. We could turn them into normal signals and emit them adjacent to tp_svc_foo_emit_bar().
Version: git master