You said that it works to start xscreensaver and then add an
additional screen -- but I don't see how that's possible. si->screens
is never resized after startup.
I tried to restructure the code so that the screens array could be
regenerated every time an XRRScreenChangeNotifyEvent came in (taking
care to re-use screens when possible, and go through
check_xinerama_sanity each time instead of just once at startup) but I
got completely confused about the current relationship between RANDR
and Xinerama. I've seen claims that Xinerama is "obsolete", but I
don't know how to ask RANDR for a list of the sizes and positions of
all active glass. Can both extensions exist at the same time? What
happens if there's RANDR but no Xinerama? The fact that the
documentation for RANDR blows chunks does not help.
So, I gave up again.
I was going to try and just test-harness this, and debug it with
manual simulation, but it really sounds like it's going to be
impossible to make this work without access to a machine that can
actually do this stuff, so that I can reverse-engineer how these
damned extensions actually interact with each other. I'm not about to
buy a new computer just for this.
--
Jamie Zawinski [EMAIL PROTECTED] http://www.jwz.org/
[EMAIL PROTECTED] http://www.dnalounge.com/
http://jwz.livejournal.com/
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]