Bug 21154 - Account: do an ABI break to give UpdateParameters fewer side-effects
Summary: Account: do an ABI break to give UpdateParameters fewer side-effects
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: mission-control (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Simon McVittie
QA Contact: Telepathy bugs list
URL: http://git.collabora.co.uk/?p=user/sm...
Whiteboard:
Keywords:
: 20906 (view as bug list)
Depends on:
Blocks: 20905
  Show dependency treegraph
 
Reported: 2009-04-13 11:18 UTC by Simon McVittie
Modified: 2009-05-13 04:04 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Simon McVittie 2009-04-13 11:18:27 UTC
+++ This bug was initially created as a clone of Bug #20905 +++

Mission Control 5 disconnects and reconnects the account whenever properties that are not a DBusProperty are changed, in violation of telepathy-spec. This is in order to achieve an "instant apply" model. However, I believe that MC is the wrong place for this policy enforcement.

The proposed solution is to make UpdateParameters return a boolean, "reconnect required", and let the client do the reconnect when it wants to, by calling a new Reconnect() method.
Comment 1 Simon McVittie 2009-04-14 07:25:14 UTC
*** Bug 20906 has been marked as a duplicate of this bug. ***
Comment 2 Simon McVittie 2009-04-17 11:32:29 UTC
This turns out to be terrifyingly difficult to do correctly for all corner cases: MC's logic to handle connection of an account is a twisty maze.

However, I have a bad implementation of Reconnect ready to go (it's no worse than what UpdateParameters implicitly did already), so I think we can probably continue with this regardless, albeit as a relatively low priority.
Comment 3 Simon McVittie 2009-05-13 04:04:51 UTC
Fixed in b70, although Reconnect logic still needs looking at.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.