See bug #47100 for the original background. Some TpAccount properties (but this probably apply for other objects) are split into different GObject properties while they are conceptually the same thing or are at least tightly connected. The main "problem" is tracking changes of these properties as we may need to connect different "notify" signals rather than one and aggregate the current value of all the properties manually. Now that we have a proper API (and easier to use than GValueArray) to represent them, may we should consider merging them into a single GVariant. In TpAccount this could lead to something like: - automatic-presence (uss) - connection-error (sa{sv}) - current-presence (uss) - requested-presence (uss)
For *-presence, I would rather have typedef struct { TpConnectionPresenceType type; gchar *status; gchar *message; } TpPresence; Much more convenient that even a GVariant. For connection-error and connection-error-detailed seems like something we added for compat and could be reduced to only the -detailed in next (as a GVariant of course).
That means we'd have to define a boxed type for this struct right? Is that binding friendly?
Yep, should be fine with a boxed, AFAIK.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/telepathy/telepathy-glib/issues/93.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.