I’ve been running a pair of rather nice LCD monitors on my Radon9600PRO for a while now, but things like Adobe Acroread and totem have been unuable in the main part because of the hacky Xinerama support making them render their content "double wide".
First, some background:
The closed source driver from ATI to drive my video card, the Radeon9600PRO, does not do Xinerama. The open source driver does – however, using the open source driver instead of fglrx denies me hardware 3D – and that denies me clan, and that’s bad.
ATI, in the infinite wisdom, decided to ignore the standard X way of doing things, Xinerama, for desktop spanning, and use custom hex flags within the xorg.conf file.
This works, but it sucks, because now that the Xinerama extension isn’t loaded (loading it kills the fglrx driver) many apps can’t do clever things – like snap to screenedge or maximise to screen – because they see both ports as a single framebuffer.
I’ve learnt to deal with all that – but the worst part is that when querying DPI (with tools like xdpyinfo, for example) the results "see" the right screen size information but the wrong resolution a single monitor, or the right resolution but the wrong screen size for a dual monitor (You can pick if the glass is half empty or full, I don’t care
)
My solution, is a little cheatery in the xorg.conf – by doubling the width of the (newly inserted) DisplaySize variable in my "Monitor" section (attached below) *shazam* X (and thus xdpyinfo, etc) think that my single headed setup has a rather freaky-shaped LCD attached.
Section "Monitor"
Identifier "Monitor0"
ModeLine "1280×1024@60" 107.96 1280 1328 1440 1688 1024 1025 1028 1066
DisplaySize 680 271
EndSection