[Bug 26752] Setting a not supported presence state to a telepathy account does not deliver any failing feedback
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Apr 29 16:40:09 CEST 2010
https://bugs.freedesktop.org/show_bug.cgi?id=26752
--- Comment #6 from Simon McVittie <simon.mcvittie at collabora.co.uk> 2010-04-29 07:40:08 PDT ---
(In reply to comment #5)
> Implemented a slightly modified version of Account.ChangingPresence. The
> implementation changes the property to true whenever
> Connection.SimplePresence.SetPresence is called
What's the difference between my proposal, and what you implemented? Is it
this, or something else?
* my proposal: ChangingPresence is set as soon as we "want to" change presence
* your implementation: ChangingPresence is set only when we actually call
SetPresence
If it's that, then I prefer my version. Here's a sequence of events which
should hopefully illustrate why:
* initially:
Connection = "/"
ConnectionStatus = DISCONNECTED
RequestedPresence = CurrentPresence = (OFFLINE, "offline", "")
ChangingPresence = TRUE
* UI calls Set(RequestedPresence, (HIDDEN, "hidden", "I'm not here"))
* emit AccountPropertiesChanged ({
Connection: "/",
ConnectionStatus: CONNECTING,
RequestedPresence: (HIDDEN, "hidden", "I'm not here"),
ChangingPresence: TRUE,
})
* call RequestConnection on CM
* return from Set with success
* time passes
* CM.RequestConnection returns /my/conn
* emit AccountPropertiesChanged ({
Connection: "/my/conn",
ConnectionStatus: CONNECTING,
})
* call SetPresence on connection
* call Connect on connection
* time passes
* Connect returns success
* time passes
* StatusChanged(CONNECTED)
* emit AccountPropertiesChanged ({
Connection: "/my/conn",
ConnectionStatus: CONNECTED,
})
* call GetPresence to fetch the real presence
* oops! CM didn't support HIDDEN and fell back to BUSY
* GetPresence returns (BUSY, "dnd", "I'm not here")
* emit AccountPropertiesChanged ({
Connection: "/my/conn",
ConnectionStatus: CONNECTED,
ChangingPresence: FALSE,
CurrentPresence: (BUSY, "dnd", "I'm not here"),
})
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the telepathy-bugs
mailing list