GNOME Bugzilla – Bug 559639
[background] Delay constructing the GnomeBg object until we need it.
Last modified: 2008-11-06 20:47:38 UTC
Currently, if we suspect nautilus will be running we wait 8s, after that only set background on change notification if nautilus is not running at the time. We were constructing the GnomeBg object and subscribing for notification before that though. And starting gnome-screensaver was causing a change notification delivered to us (a bug in GnomeBg?). We don't have to construct our GnomeBg when we are waiting for nautilus to start up.
Created attachment 122140 [details] [review] the patch
note bug 552856 introduces an ignore_changes api that suppresses the spurious notifications i was seeing at the time (which was from load_from_preferences() getting called, not sure if gnome-screensaver is also causing notifications)
In my experience gnome-screensaver was causing notification, yes. Maybe that one needs the ignore() call too, right? Anyway, the patch here is correct until those stuff lands.
i wonder if the gnome-screensaver notifications was from bug 555701 comment 4 (which is fixed in trunk, bug 555701 comment 10).
2008-11-06 Behdad Esfahbod <behdad@gnome.org> * plugins/background/gsd-background-manager.c (setup_bg), (queue_draw_background), (gsd_background_manager_start): Delay constructing the GnomeBg object until we need it. This avoids unneeded change triggers caused by a bug in gnome-screensaver (fixed in trunk it seems). (bug #559639)