[Xquartz-dev] XRandR update

Jeremy Huddleston jeremyhu at apple.com
Tue Jul 20 11:25:36 PDT 2010


On Jul 20, 2010, at 05:00, Eeri Kask wrote:
> Being curious, may I ask an Aqua beginners' question: is some
> application authorised to change the resolution of the whole screen,
> say iChat putting the screen from 2560x1600 into 320x240, how do
> other applications respond if they are "activated"?

Other applications will react just as though you changed the resolution from Display Preferences.  Desktop icons may fudge around, application windows will squeeze.  If the application first captures the display, then the background applications are placed behind a shield window (basically an all-black window placed above everything else) and they are made unaware of the change.  When the requesting application releases the capture or quits, the original resolution is restored.

> Currently it appears the user can change all screens resolutions
> under System-settings/Monitors; which also affects X11 fullscreen
> mode, resulting in a ConfigureNotify event delivered to the root
> window reflecting the changed screen size (which then can be
> investigated by XineramaQueryScreens() in detail).

Yep.

> Regarding introducing xrandr, wouldn't it be a good idea to
> differentiate fullscreen-X and Aqua "resolutions" in that xrandr
> resolution-setting only affects fullscreen-X mode?  (Which then
> implies that System-settings/Monitors shouldn't affect resolutions
> in fullscreen X too...)

Yes.  The '0' mode corresponds to the non-RandR use case.  All the others correspond to a RandR mode (which will capture the display, but doesn't currently)


> (This differentiated resolutions case would make the above item (2)
> obsolate, which was the initial purpose of this posting; or at least
> appearing it to be a business to deal with by the X window manager
> or something --- and not by some X server component/extension.)

Not really.  They are differentiated within the X server, but we still need to tell CoreGraphics what we're doing.




More information about the Xquartz-dev mailing list