View Single Post
Old 02-25-07, 07:03 PM   #10
JaXXoN
Registered User
 
Join Date: Jul 2005
Location: Munich
Posts: 910
Default Re: [PATCH] "faked" Xinerama information for a triple-head TwinView setup

Faked Xinerama Information in xorg.conf

This patch for the Xserver will allow the user to manualy
define xinerama information in the xorg configuration file
(/etc/X11/xorg.conf). This is very usefull for i.e. triple-head
setups where the first two displays are running in twinview mode
and thus forming a single screen in a xinerama setup (which
is typically not what the user desires). This can also be very
helpfull if you have a truely big single display and you want to
artifically sub-devide it into smaller areas, so that when
maximizing a window, it will not maximize to the whole display.

The patch introduces a new option "XineramaInfo" for the
server layout section. The parameter of this option is
a comma seperated list of feked screen information of the form

Code:
<width>x<height>+<x-offset>+<y-offset>
Example

Here is an example entry for a 4800x1200 triple-head setup
with three 1600x1200 displays:

Code:
Section "ServerLayout"
  [...]
  Option "XineramaInfo" "1600x1200+0+0,1600x1200+1600+0,1600x1200+3200+0"
EndSection
The patch has been succesfully tested on Fedora Core 6
with xorg-x11-server-1.1.1-47.5, but the patch also applies
for the vanilla xorg-7.1 package and should also work
for other distributions.


Limitations

For the time being, only 16 faked screens can be defined.


Installation instructions

1) Install the source RPM package and prepare the build directory

Code:
rpm -i /tmp/xorg-x11-server-1.1.1-47.5.fc6.src.rpm
cd /usr/src/redhat/SPECS
rpmbuild -bc xorg-x11-server.spec
This make take a while because it will also cause a "make".

2) Apply the patch and build the Xserver

Code:
cd /usr/src/redhat/BUILD/xorg-server-1.1.1/
patch -p1 < /tmp/patch-xorg-server-X11R7.1-1.1.0-xineramainfo
make clean
make
This will again take a while.

3) Install the Xserver binary

Code:
cd hw/xfree86/
strip Xorg
chmod u+s Xorg
chmod go-r Xorg
mv /usr/bin/Xorg /usr/bin/Xorg.fc6
cp Xorg /usr/bin
Feedback appreciated

Bernhard
Attached Files
File Type: zip patch-xorg-server-X11R7.1-1.1.0-xineramainfo.zip (1.9 KB, 440 views)
JaXXoN is offline   Reply With Quote