[Bug 19903] Implement the "stored" list

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Jun 28 17:15:18 CEST 2010


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

Simon McVittie <simon.mcvittie at collabora.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |sjoerd at luon.net

--- Comment #9 from Simon McVittie <simon.mcvittie at collabora.co.uk> 2010-06-28 08:15:17 PDT ---
(In reply to comment #8)
> Also when you block a contact, it's added to the Block list and removed from
> the Allow list. You can also only remove someone from the Allow list (without
> blocking him) in the Options window of WLM.

So WLM makes it possible, but difficult, to revoke presence publication. Right.

> The reverse list is not really an useful information (it's just a "spying"
> tool..."Who added me to their contact list ?", Pidgin displays "Has you?" in
> the contact list tooltip, etc)

When would you appear in my reverse list? Is it when you add me to 'stored' (if
it's possible to do that and only that), when you add me to 'subscribe', when I
accept your subscription request, or at some other time?

> What we really use in tp-butterfly is the Allow list. So, here is a more
> complete scenario:
> 
> *1 You have 3 contacts:
>  - MSN: forward = [A, B, C], allow = [A, B, C],  block = [], reverse = [A, B,
> C]
>  - Tp: subscribe = [A, B, C], publish = [A, B, C], stored = [A, B, C], deny =
> []
> 
> *2 Delete A with WLM (without checking "Block as well" box):
>  - MSN: forward = [B, C], allow = [A, B, C],  block = [], reverse = [A, B, C]
>  - Tp: subscribe = [B, C], publish = [A, B, C], stored = [A?, B, C], deny = []

The goal is that A disappears from the contact list in Empathy, but without
actually lying about anything in our API.

At the moment, Empathy displays the 'stored' list (if there is one), so adding
a 'stored' list to Butterfly would cause A to appear on the contact list even
though the user thinks they have deleted A from the contact list, violating
user expectations.

(This violation of user expectations manifested itself as bug reports against
Maemo 5, which basically displayed the union of subscribe, stored and publish;
this was "fixed" by displaying the union of subscribe and stored, and hoping
that Butterfly wouldn't gain a stored list.)

At the moment, the proposed Conn.I.ContactList D-Bus API lists the equivalent
of the union of subscribe, stored and publish, so any UI that doesn't filter
this contact list (to only show contacts with subscribe >= Ask, perhaps) would
be considered to be buggy by WLM users.

We need to avoid this somehow, perhaps by changing the D-Bus API, perhaps by
adjusting how Butterfly maps its data into Telepathy. I don't want this to
result in Butterfly outright lying to its users (e.g. claiming that A is not
receiving our presence, when in fact, he is).

One (ugly) possibility for the ContactList API is to have a boolean property on
contacts, "...ContactList/interesting" or something, which lets the
protocol-literate CM give the UI hints about who's interesting to display; on
MSN, this would exclude contacts who are only on allow. To me this looks
uncomfortably like encoding UI policy into CMs, though.

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