[Portland] xdg-screensaver.in

Aaron J. Seigo aseigo at kde.org
Wed May 10 07:15:37 PDT 2006


On Tuesday 09 May 2006 18:15, Bryce Harrington wrote:
> On Tue, May 09, 2006 at 04:50:07PM -0600, Aaron J. Seigo wrote:
> > On Tuesday 09 May 2006 16:02, Bryce Harrington wrote:
> > > Looking at the xset source code[2], it looks like we need an X routine
> > > like XActivateScreenSaver()[3] but that returns the current saver state
> > > instead of setting it.  Does XGetScreenSaver return this info in one of
> > > its args?
> >
> > apparently if the timeouts given by XGetScreenSaver are 0 then the
> > screensaver is off. otherwise it's on.
>
> Ah, okay...  Next question is, are there any existing cmdline tools that
> return this value? 

not to my knowledge, no.

> If not, should I make a little one to include with xdg-utils? 

makes sense imho.

> Obviously, it'd be in C, so I'm not sure if that's keeping 
> with the "just scripts" philosophy, but it'd only be used by the test
> harness.  (Although, on reflection, if there isn't any other existing
> way to query the screensaver state, that might actually be a very handy
> feature for apps to gain from xdg-screensaver.)

yes, this is apparently on the roadmap from my discussion with people involved 
with x.org

> > talking to one of the kde/x.org guys (frederik), he noted that while this
> > works it's pretty hacky and that at some point it needs to be fixed
> > properly in x.org. they've recently added the ability to programmatically
> > (and safely) block the screensaver w/out resorting to doing things like
> > faking key events, but even that hasn't made it into an official release
> > yet. xscreesaver is still a bit of a mess =)
>
> I haven't tested xdg-screensaver super thoroughly, but so far it looks
> like it is able to suspend the screensaver effectively, without faking
> keyboard events.  (I did run across some C code that'd do this, though,
> but left that a plan B for now...)

as waldo pointed out this is pretty suboptimal and what is more often needed 
is a way to temporarily suspend it (e.g. during a presentation, video, etc) 
with it automatically coming back on once that event is completed (complete 
with safety for application crashing). pragmatically it's probably as good as 
it'll get using the scripts-only method. 

-- 
Aaron J. Seigo
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43

Full time KDE developer sponsored by Trolltech (http://www.trolltech.com)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/portland/attachments/20060510/f80048a8/attachment.pgp


More information about the Portland mailing list