[Patch] Starting X on different monitors

Mark Fisher mark.fisher@practiv.com
Tue Dec 7 18:48:00 GMT 2004

I've created a patch for allowing an extra parameter to the
"-screen" arg for Xwin to tell which monitor to open on.

Now you can specify :
-screen <num> [width height [x y] | [[WxH[+X+Y]][@m]] ]
monitors are 1 indexed.
-screen 0 @2
will start X on the second monitor, using the monitors full dimensions
-screen 0 800x600+200+200@3
will start X on the third monitor, size 800x600 with an offset in that
monitor of 200,200 (i.e. go from 200,200 to 1000,800 in 2nd monitor)

-screen 0 1280x1024@2
will start X on the 2nd monitor with no offset, sized 1280x1024

It will error if you specify a monitor that isn't attached.

I haven't implemented the version where you use spaces, i.e.
-screen 0 800 600 200 200 @3
so that could be an easy extension to the patch.

This is my first patch, so I've created it for the two files updated
(winprocarg.c and InitOutput.c).
I've tried to keep the format the same as already there, I'm using
emacs in C mode, so if the spacing is weird, blame that :)

It works fine here on the dual monitor setup I have. I don't have
a gfx card with 3 heads, but in theory, as long as EnumDisplayMonitors
honours the same numbering as Windows shows them in Display Properties
then it should work fine.

Can someone please try this out?
What's the procedure for getting this into CVS after it's been testing?

Comments welcome

Mark Fisher
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ScreenOnMonitor.diff
Type: application/octet-stream
Size: 5569 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin-xfree/attachments/20041207/fe7531c2/attachment.obj>

More information about the Cygwin-xfree mailing list