Bug 106162 - Address control-center regressions
Summary: Address control-center regressions
Status: RESOLVED FIXED
Alias: None
Product: accountsservice
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: All All
: medium normal
Assignee: Matthias Clasen
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-04-20 20:49 UTC by Ray Strode [halfline]
Modified: 2018-04-20 20:52 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
daemon: don't override property from user skeleton (89.57 KB, patch)
2018-04-20 20:49 UTC, Ray Strode [halfline]
Details | Splinter Review
lib: don't emit user-added signal until list_users is completed (5.06 KB, patch)
2018-04-20 20:49 UTC, Ray Strode [halfline]
Details | Splinter Review

Description Ray Strode [halfline] 2018-04-20 20:49:20 UTC
gnome-control-center has two problems now:

1) Updating the user icon doesn't take effect until the application is restarted
2) The wrong user is selected at start up

Both of these problems are regressions introduced from
commit 9b4108755a6e1f5f04d80fef92dd3f81423857ad

This bug tries to address both issues.
Comment 1 Ray Strode [halfline] 2018-04-20 20:49:28 UTC
Created attachment 138961 [details] [review]
daemon: don't override property from user skeleton

At the moment the skeleton superclass associated with a user keeps
cached copies of all properties, and the derived user class also
keeps duplicate copies of those properties.

The problem is these properties get out of sync and the derived
class fails to PropertyChanged signals are sent when the properties
are updated.

This commit solves the issue by cutting out the redundant property
data and just defers all property storage to the skeleton.
Comment 2 Ray Strode [halfline] 2018-04-20 20:49:30 UTC
Created attachment 138962 [details] [review]
lib: don't emit user-added signal until list_users is completed

Right now calling act_user_manager_list_users can inadvertently
lead to user-added signals getting emitted before the call completes.

This is not something users of the API expect.
Comment 3 Ray Strode [halfline] 2018-04-20 20:52:17 UTC
Attachment 138961 [details] pushed as e18e8a3 - daemon: don't override property from user skeleton
Attachment 138962 [details] pushed as 9a6a568 - lib: don't emit user-added signal until list_users is completed


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.