GNOME Bugzilla – Bug 752114
Collection backend changes overwritten with old values
Last modified: 2015-11-02 20:28:29 UTC
Google Online Accounts had no direct interface for changing the Display Name (PresentationIdentity) of an account. Editing the ~/.config/goa-1.0/accounts.conf file to change this value has no effect (even after re-logging in). However editing ~/.config/evolution/sources/<account>.source and changing the DisplayName value does work, after restarting Evolution. * Editing ~/.config/goa-1.0/accounts.conf should propagate. * There should be a GUI to do this without manually stopping Evolution, editing an obscure text file, then restarting.
This was tough. There was a race condition between the data change from e_source_registry_server_add_source(), which calls e_dbus_source_set_data(), which causes notify::data being issued on the object, which is delivered immediately, but processed on idle. It means that any changes being done on the live ESource are forgotten as soon as the idle callback is issued. I made the notify:data being processed immediately, which fixes also couple other things. With this change the PresentationIdentity is properly propagated into the UI, which also overwrites any manual changes in the .source files of the evolution. That's okay, because its the GOA to tell us how the user wants to name the sources. Created commit f0baf55 in eds master (3.17.90+) Created commit e0d698b in eds gnome-3-16 (3.16.5+)