[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