[Bug 36490] New: TpBaseClient: need a way to tell we are handling a channel
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Apr 22 15:55:45 CEST 2011
https://bugs.freedesktop.org/show_bug.cgi?id=36490
Summary: TpBaseClient: need a way to tell we are handling a
channel
Product: Telepathy
Version: unspecified
Platform: Other
OS/Version: All
Status: NEW
Severity: trivial
Priority: medium
Component: tp-glib
AssignedTo: telepathy-bugs at lists.freedesktop.org
ReportedBy: guillaume.desmottes at collabora.co.uk
QAContact: telepathy-bugs at lists.freedesktop.org
TpBaseClient is implementing the Handler.HandledChannels property in a
transparent way to the user; which is cool.
But that only work when HandleChannels() is called on the client.
There is another way to become the handler of a channel if you are also an
Approver: call ChannelDispatchOperation.Claim() and this case is not covered by
our API.
We could add a something like tp_base_client_now_handling (TpBaseClient *self,
GList *channels) to fix this, but I'm sure loads of clients will forget to call
it (I didn't notice this problem myself until I started using _is_handling()).
Another (better?) option could be to jump on bug #28015 and add high level API
for the "Claim and handle case". We could then have something like:
void tp_channel_dispatch_operation_claim_and_handle_async (
TpChannelDispatchOperation *self,
TpBaseClient *client,
GAsyncReadyCallback callback,
gpointer user_data);
or maybe that should be an API on the TpBaseClient?
If we add higher level API (claim_and_close, claim_and_handle) we could even
consider deprecating tp_channel_dispatch_operation_claim_async() to enforce
user to use the safer APIs.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the telepathy-bugs
mailing list