[Bug 77772] [next] TpBaseContactList GInterfaces: take vfunc arguments of the appropriate type

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue May 27 07:21:35 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=77772

--- Comment #11 from Guillaume Desmottes <guillaume.desmottes at collabora.co.uk> ---
> (In reply to comment #7)
> > Does this apply to tp_base_contact_list_can_block() as well which is
> > explicitely used to check if the contact list support blocking?
> 
> Hmm. For now let's say "no, leave can_block() as-is" and see what the g-i
> looks like.


      <method name="can_block"
              c:identifier="tp_base_contact_list_can_block"
              version="0.13.0">
        <doc xml:space="preserve">Return whether this contact list has a list
of blocked contacts. If it
does, that list is assumed to be modifiable.

If the #TpBaseContactList subclass does not implement
%TP_TYPE_BLOCKABLE_CONTACT_LIST, this method always returns %FALSE.

For implementations of %TP_TYPE_BLOCKABLE_CONTACT_LIST, this is a virtual
method, implemented using #TpBlockableContactListInterface.can_block.
The default implementation always returns %TRUE.

In the case of a protocol where blocking may or may not work
and this is detected while connecting, the subclass can implement another
#TpBaseContactListBooleanFunc (whose result must remain constant
after the #TpBaseConnection has moved to state
%TP_CONNECTION_STATUS_CONNECTED), and use that as the implementation.

(For instance, this could be useful for XMPP, where support for contact
blocking is server-dependent: telepathy-gabble 0.8.x implements it for
connections to Google Talk servers, but not for any other server.)</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if communication from contacts can be
blocked</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a contact list manager</doc>
            <type name="BaseContactList" c:type="TpBaseContactList*"/>
          </instance-parameter>
        </parameters>
      </method>

-- 
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