how does X suck today? Today it's DPMS.

A little while ago I added mouse hysteresis to xscreensaver (meaning, if you only move the mouse by some small number of pixels per second, it won't consider that to be enough activity to turn off the screen saver.) People have been asking this for a while, so that dirty mice or earthquakes or whatever don't unblank their screens. It works good.

But it occurred to me that this was going to interfere with power management. Say you have things set so that the screen blanks after 10 minutes, and the monitor powers down after 60 minutes, and a truck goes by and rumbles your desk by one pixel at 59 minutes.

  • 0:10:00 -- screen blanks
  • 0:59:00 -- truck!
  • 1:00:00 -- monitor should power down
  • 1:58:00 -- monitor does power down

So if a truck goes by every 58 minutes, the monitor will always stay on, since xscreensaver now knows to ignore small motions like that, but the X server itself does not.

The obvious solution here is to tell the X server to keep its hands off of the monitor, and for xscreensaver to take care of powering it up and down by itself. Sounds easy enough, right? Except it doesn't work: if the monitor is in "suspend" mode and you try to put it in "standby" or "off" mode, it powers back on. DPMSForceLevel() succeeds, and DPMSInfo() says that the monitor is in "suspend" or "off", and yet, there it is, fully powered up and staring you in the face.

So, fuck it, I guess. If you expect DPMS to work right, don't.

Tags: , , ,

Happy Doll and His Happy Penis

Tags: ,

infrared money


"worst tattoo ever."

(The whole thread is good...)

Tags: ,