Dynamically switch ServerLayout - is it possible ?

Michel Dänzer michel at daenzer.net
Wed Oct 26 09:02:56 PDT 2005


On Tue, 2005-10-25 at 21:22 -0700, Waldo Bastian wrote:
> 
> I think the policy decision should be made by the user in this case through 
> some sort of GUI. Such a GUI should be able to express to the user that he 
> can get either 1280x1024 on LCD + external CRT, or 1600x1200 on external CRT 
> only. For a GUI to do so RandR should include the active output ports along 
> with the resolution.

I'm not sure that RandR is the best match for this, Xinerama might be
better. I tossed out the idea earlier of extending Xinerama such that it
can not only query the number and properties of screens but also change
their panning limits. My idea is that a dynamic configuration utility
could work something like this:

      * RandR allows changing the size of the desktop, although it may
        need to be extended to allow setting arbitrary sizes (haven't
        checked).
      * Within the chosen desktop size, the position of the Xinerama
        screens can be influenced by defining their panning limits.

By combining these, a configuration utility should be be able to do
arbitrary dynamic reconfiguration of Xinerama screens.

As for hotplug, a simple approach for that could be a Xinerama event
that occurs when the number of Xinerama screens changes. When a Xinerama
screen is added, it could clone the 'nearest' existing Xinerama screen
as closely as possible. When a Xinerama screen is removed, the panning
limits of the 'nearest' remaining Xinerama screen could be extended such
that they include the limits of the removed Xinerama screen. Another
question is how to trigger re-probing for setups that can't
automatically detect hotplugging, another Xinerama request maybe.


-- 
Earthling Michel Dänzer      |     Debian (powerpc), X and DRI developer
Libre software enthusiast    |   http://svcs.affero.net/rm.php?r=daenzer



More information about the xorg mailing list