summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-04-11TpBaseConnection: add a static assertion that guint is guint32gdbus-object2Simon McVittie1-0/+8
In principle, this could be false, but in the real world, sizeof(int) is a power of 2, computers with 16-bit int are decades obsolete, and if int was 64-bit or larger, there'd be a problem with int16_t and int32_t ('short' can only be one of those). With this static assertion in place, we could even change TpHandle to be guint32, although there isn't necessarily much point.
2014-04-11tp_base_connection_set_self_handle: consolidate GObject settersSimon McVittie1-4/+5
If we set both properties in one g_object_set() call, we only get one PropertiesChanged signal, which, arguably, we should be using instead of making our own SelfContactChanged (although the telepathy-spec work has not been done yet).
2014-04-11TpBaseConnection: use g_dbus_method_invocation_return_error_literalSimon McVittie1-6/+5
This avoids putting a temporary GError on the stack, which was always slightly questionable use of the GError API.
2014-04-11TpBaseConnection: replace copy/free with g_dbus_method_invocation_take_error()Simon McVittie1-10/+5
The instance in ensure_handle_cb() is not obviously correct, but in fact @error is not used after this point, so it doesn't need setting to NULL.
2014-04-11TpBaseConnection::status-changed: correct a commentSimon McVittie1-1/+1
2014-04-11tp_svc_interface_skeleton_emit_signal: ignore if no longer exportedSimon McVittie1-3/+10
Because GDBusObjectSkeleton holds a ref to all its interface skeletons as long as the parent object exists, it's possible that they will have been unexported but not freed.
2014-04-11tp_base_connection_change_status: emit status-changed before StatusChangedSimon McVittie1-1/+4
Gabble's regression tests expect to receive PresencesChanged before StatusChanged, and PresencesChanged is triggered by the status-changed GObject signal.
2014-04-11TpBaseConnection: Stop implementing TpSvcConnectionXavier Claessens1-161/+204
We use gdbus-codegen's skeleton to implement Connection iface now. [adjusted to apply on top of making it a GDBusObjectSkeleton, and handle Interfaces accordingly -smcv]
2014-04-11TpBaseConnection: be a GDBusObjectSkeletonSimon McVittie14-267/+205
2014-04-10TpTestsSimpleConnection: Do not implement TpSvcConnection interfaceXavier Claessens1-3/+2
2014-04-10Test: Stop implementing TSvcConnection for bug 19101 regression testXavier Claessens4-123/+56
TpBaseConnection is about to stop implementing it and use gdbus-codegen's skeleton instead.
2014-04-10Add gdbus-codegen supportXavier Claessens3-7/+34
2014-04-10TpBaseProtocol: be a GDBusObjectSkeletonSimon McVittie6-122/+97
This means we don't need the get_interfaces_array() vfunc, because we can inspect the GDBusObject interface to find out what our interfaces are.
2014-04-10TpSvcInterfaceSkeleton: move to the -dbus librarySimon McVittie9-35/+278
This requires some careful juggling to make it able to call methods on the TpDBusPropertiesMixin without having to move the entire TpDBusPropertiesMixin to the -dbus library.
2014-04-10tp_dbus_connection_try_register_object: export each GDBusInterfaceSkeleton ↵Simon McVittie1-22/+167
from a GDBusObject
2014-04-10tp_svc_interface_skeleton_get_properties: don't leak the parent objectSimon McVittie1-0/+1
2014-04-10Add sliced-gvalue to documentationSimon McVittie1-0/+1
2014-04-10test-self-handle: Fix possible race making test sometimes failXavier Claessens1-30/+62
The filter callback is ran in GDBusConnection's worker thread so we can't be sure how stuff are ordered. By delaying the GetAll reply and re-send it from the main thread we are sure that the SelfContactChanged signal will be sent just after it.
2014-04-10Revert "self-handle test: go back to reimplementing TpSvcDBusProperties"Xavier Claessens1-125/+35
This reverts commit 5a3524270c6d1febeccfbf636fc59b2da48f33b6.
2014-04-10TpBasePasswordChannel: stop most D-Bus properties from being GObject propertiesnextSimon McVittie1-108/+70
may-save-response is still exposed as a GObject property, because it's construct-only, so presumably there's some expectation that it would be set at construct-time. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77187 Reviewed-by: Xavier Claessens
2014-04-10TpExportableChannel: turn channel-properties into a GVariantSimon McVittie10-42/+75
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77187 Reviewed-by: Xavier Claessens
2014-04-10TpBaseConnection:dbus-status, TpBaseConnection:requestable-channel-classes: ↵Simon McVittie1-44/+1
remove They are not used in Folks, Empathy, MC or the "big 5" CMs, except for one use of dbus-status in helper code for Folks' regression tests (which will disappear when resynced from telepathy-glib). Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77187 Reviewed-by: Xavier Claessens
2014-04-10TpBaseConnection: stop using ↵Simon McVittie1-7/+52
tp_dbus_properties_mixin_getter_gobject_properties() Using that tied us to having a GDBus property whose type matches the dbus-glib type, which is API we don't want. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77187 Reviewed-by: Xavier Claessens
2014-04-10simple-conn: don't reimplement dbus-statusSimon McVittie1-15/+1
This used to be done so we could emulate a connection manager older than telepathy-spec 0.19.2, but that functionality was removed in commit 347307b7. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77187 Reviewed-by: Xavier Claessens
2014-04-10Simplify TpPresenceMixin by removing all support for non-message parametersSimon McVittie8-248/+56
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77191 Reviewed-by: Xavier Claessens
2014-04-10tp_group_mixin_change_members: take a GVariant for the detailsSimon McVittie6-163/+82
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77190 Reviewed-by: Xavier Claessens
2014-04-10tp_group_mixin_get_members etc.: remove accessors for membersSimon McVittie4-147/+7
tp_group_mixin_get_local_pending_members_with_info() uses a dbus-glib data type, and none of these are actually used in the five core CMs (they all track members separately in any case). Make them private if used in the implementation, or remove them entirely. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77190 Reviewed-by: Xavier Claessens
2014-04-08self-handle test: go back to reimplementing TpSvcDBusPropertiesSimon McVittie1-35/+125
The timing requirements for test_change_inconveniently() are very specific, and on my laptop, using the GDBus filter wasn't good enough (probably because looping on g_main_context_iteration() runs a whole iteration and cannot be stopped halfway through). I could usually reproduce a test failure by running the telepathy-glib tests in parallel with the telepathy-gabble tests. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Xavier Claessens
2014-04-08tp_dbus_connection_try_register_object: re-allow TP_TYPE_SVC_DBUS_PROPERTIESSimon McVittie1-8/+0
MC still needs this. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Xavier Claessens
2014-04-08Stop implementing TpSvcDBusProperties interfaceXavier Claessens24-129/+7
GDBusConnection and TpSvcInterfaceSkeleton does it for us already. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08TpSvcInterfaceSkeleton: Handle Get/Set propertyXavier Claessens2-3/+76
We prevent TpSvcDBusProperties interface to be registered so GDBusConnection will handle that itself using skeleton's vtable. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08TpDBusPropertiesMixin: Emit PropertiesChanged signal using GDBusConnection ↵Xavier Claessens3-8/+52
directly We are about to stop exporting TpSvcDBusProperties iface so they would be no-op. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08TpTestsSimpleConn: Stop using tp_svc_dbus_properties_*()Xavier Claessens2-44/+21
We are about to stop exporting TpSvcDBusProperties iface so they would be no-op. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08test-cm: Stop using tp_svc_dbus_properties_*()Xavier Claessens1-71/+48
We are about to stop exporting TpSvcDBusProperties iface so they would be no-op. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08TpTestsSimpleAccount: Stop using tp_svc_dbus_properties_*()Xavier Claessens1-14/+2
We are about to stop exporting TpSvcDBusProperties iface so they would be no-op. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08test-disconnection: Stop using tp_svc_dbus_properties_*()Xavier Claessens1-8/+14
We are about to stop exporting TpSvcDBusProperties iface so they would be no-op. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77144 Reviewed-by: Simon McVittie
2014-04-08_tpl_conf_get_ignorelist: fix g-i markupSimon McVittie1-1/+2
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08Add API breaks to NEWSSimon McVittie1-1/+34
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08tp_text_channel_get_message_types, TpTextChannel:message-types: removeSimon McVittie5-68/+0
They have a dbus-glib type, and Empathy exclusively uses tp_text_channel_supports_message_type() instead. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpObserveChannelContext:observer-info: change type to GVariantSimon McVittie4-22/+22
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpChannel, TpChannelIface: disentangle their documentationSimon McVittie2-31/+10
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08Sort main-1.0.abi via `LC_ALL=C sort -u` for easier diffsSimon McVittie1-12/+12
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08Rename all mentions of handle types to entity typesSimon McVittie41-280/+280
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpChannel::group-members-changed: change details GHashTable to GVariantSimon McVittie5-36/+53
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpChannel:channel-properties: change type to GVariantSimon McVittie15-42/+44
It's still a GHashTable internally, because lots of subclasses still rely on that. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08channel-introspect: make a test more realisticSimon McVittie1-9/+15
We're using an Entity_Type_None (nameless chatroom) channel, but claiming in its immutable properties that it has a non-empty target of type Contact. That means we're effectively making assertions about whether the immutable properties we specified at the beginning, or the result of GetAll(), will "win", which makes this test unnecessarily brittle. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpChannel: stop implementing TpChannelIface, and make those properties read-onlySimon McVittie8-37/+42
Implementing TpChannelIface meant that channel-type, handle-type and handle had to be settable at construct-time. That is no longer a supported thing to do: everyone should be using the immutable properties dict. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpChannelDispatcher: store immutable properties as a GVariant internallySimon McVittie1-122/+123
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08TpChannelDispatchOperation: make the external API GVariant-basedSimon McVittie5-37/+72
The implementation is really simplistic, and copies everything into dbus-glib data types. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
2014-04-08tp_account_get_avatar_async: rename to _dup_, return GBytes + MIME typeSimon McVittie5-59/+84
Also be (somewhat) cancellable, while I'm there. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens