Conflicting screen saver/blanking settings between xscreensaver and xfce4-power-manager

Wirawan Purwanto wirawan0 at yahoo.com
Sun Jul 28 06:31:37 CEST 2013


Between the two software that are frequently present in an xfce4
system: xscreensaver and xfce4-power-manager, there are competing
options for accomplishing the same thing for the DPMS. I want to bring
to your attention what I wrote awhile back in xfce4 bugzilla:

https://bugzilla.xfce.org/show_bug.cgi?id=10205
xfce4-power-manager (XFPM) and xscreensaver disagree in setting the
DPMS parameters

I believe this conflict occurs all the way to the newest version of
xfce (unless I miss something?). Here's the gist of the problem:

If I set, say, the DPMS "Suspend/Power Off" timeout value differently
in both software, then it is not clear who will give the last word.
You can observe this issue by alternating the invocation of
xscreensaver-demo and XFPM setting dialog. Whichever tool is invoked
for the last time, that's what eventually sets the DPMS settings. (I
use "xset q" to check the applied DPMS parameters in the X server.)
But this is not the whole story. In XFPM settings dialog, if the
timeout values are not changed (ie. the values are the same upon
closing the dialog box), then no changes were done on the X DPMS
settings, so in the end XFPM set of values did not get applied upon
closing the dialog box.

In addition, I notice that xscreensaver is probably enforcing its own
rule every now and then (xset q shows the xscreensaver values when
this happened). I also posted this problem here (post #3)

http://forum.xfce.org/viewtopic.php?pid=30157#p30157

Sorry for so many cross-posting. But to me this is an embarassing
design problem that we should fix. I am putting this out as an email
so many people can see and contribute their thought. I am looking for
your comment as to how this should be done (so that there is only one
set of settings for DPMS).

Here's my proposal:

*) since XFPM is supposed to be an upper-level tool, it may be
necessary to make XFPM to override the settings of xscreensaver, too,
to be consistent. Say, if a user changes the XFPM DPMS timeout
settings, the new values are propagated to ~/.xscreensaver (if that
program is running). The problem becomes more interesting with
reading-in the XFPM values. Do we need to let XFPM read from
~/.xscreensaver too?

*) Alternatively, in both XFPM and xscreensaver (or at least one of
them) there should be an option which basically is: "don't mess with
the X DPMS settings", as suggested by these bug reports:

https://bugzilla.xfce.org/show_bug.cgi?id=6595
https://bugzilla.xfce.org/show_bug.cgi?id=10192

In this case, we can let XFPM handle all the DPMS settings, and not
allow xscreensaver to mess with any. Or vice versa if the user wants
it.

Wirawan



More information about the Xfce4-dev mailing list