Comment 49 for bug 156550

Revision history for this message
In , Adam (adam-redhat-bugs) wrote :

(In reply to comment #2)
> Bug reports without verbose logs are usually useless.
>
> But in this case, based on what was in another report, I think I can predict
that the verbose log will say
> something like
>
> xscreensaver: 13:27:37: Xinerama layout:
> xscreensaver: 13:27:37: + 0/0: 1600x1200+0+0
> xscreensaver: 13:27:37: 1/0: 1360x768+0+0
>
> which is to say, the new version of xinerama is reporting that there are two
screens that OVERLAP. Which
> is, in a word, bullshit.

Overlapping Xinerama geometry has always been legal. That's how people do crazy
things like overlap the edges of projectors to correct for vignetting. Newer
versions of RANDR merely exacerbate the problem by making overlapping geometry
much more common, because it tries to clone all screens together if it can.

That is itself arguably the wrong behaviour, but it's what we've got right now.

The geometry reported by Xinerama will match that reported by RANDR, and you can
even get notified when the geometry changes by listening for ConfigureNotify on
the root window. So you shouldn't have to do anything RANDR-specific here. But
you do need to be prepared for the case where Xinerama regions overlap. They
always could anyway.

> 2) completely, utterly undocumented.

Not completely, but also not conveniently. There's no man pages for the newer
RANDR API, but the protocol definition and the API match up pretty precisely.

You can find the protocol here:

http://gitweb.freedesktop.org/?p=xorg/proto/randrproto.git;a=blob;h=6719cf800a93a346d82514fc035b4f05cd27792e;hb=3243afaa593f95bb89b1381dac2b920111ce36b1;f=randrproto.txt

But ignoring it and using Xinerama geometry instead is fine too, that's not
going away.