[Xquartz-dev] Basic implementation of XRandR

Jan Hauffa hauffa at in.tum.de
Sun Jun 13 14:13:50 PDT 2010


Hi,

the attached patch series contains a basic implementation of XRandR 
functionality and some related fixes:

The first patch removes some dead code I noticed, mainly orphaned 
forward declarations and unused global variables.

The second patch makes Xinerama report the actual screen resolution 
instead of subtracting the size of the global menu bar. Wine uses 
Xinerama to determine the current resolution and expects to be able to 
switch back to that resolution via XRandR. The adjusted resolution is 
still used by XQuartz internally, and I verified that window placement 
still works correctly, i.e. it's still impossible to move windows below 
the menu bar. However, I'm not completely sure my approach here is correct.

The third patch contains the routines for enumerating and setting screen 
modes. By commenting out the definition of "USE_DEPRECATED_API" in 
quartzRandR.h, you can enable the use of the new CoreGraphics API 
introduced in MacOS 10.6. I was unsure whether XQuartz is supposed to be 
compatible with earlier versions of MacOS, so I left both code paths in.

The fourth and final patch removes the FAKE_RANDR code to get rid of 
some preprocessor conditionals.

I haven't done any X11 development before, so the patches might not be 
ready for inclusion yet. Please let me know what needs to be done to 
make them acceptable.

Regards,
   Jan
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-XQuartz-Remove-some-dead-code.patch
URL: <http://lists.macosforge.org/pipermail/xquartz-dev/attachments/20100613/48adfdab/attachment-0004.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0002-XQuartz-Make-PseudoramiX-report-the-actual-screen-re.patch
URL: <http://lists.macosforge.org/pipermail/xquartz-dev/attachments/20100613/48adfdab/attachment-0005.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0003-XQuartz-Implement-basic-RandR-functionality.patch
URL: <http://lists.macosforge.org/pipermail/xquartz-dev/attachments/20100613/48adfdab/attachment-0006.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0004-XQuartz-Remove-FAKE_RANDR-code.patch
URL: <http://lists.macosforge.org/pipermail/xquartz-dev/attachments/20100613/48adfdab/attachment-0007.ksh>


More information about the Xquartz-dev mailing list