nomultiplemonitors does not work in windowed mode

szalai endre
Fri Jul 1 20:38:00 GMT 2011


when -multiwindow and -nomultimonitor is being used and eclipse starts up, it positions the welcome screen to the center of the logical display (half here-half there). Why? It looks like that the actual screen is covering both monitors, then you simply chop off everything outside the primary monitor and keep the rest. What would be the point of doing so? What kind of use case it supposed to implement?

Because as a consequence of this, you can move off completely windows from the primary monitor. They may be not-drawn, but still they are completely off. Also, this may be the reason why eclipse actually starts completely off-screen, where it is not visible, at all. I just don't see why applications should think they have a 2 monitor screen, when they actually don't.

I think it would make more sense to change the order of steps: if -nomultimonitor is specified, limit the entire root window to the primary monitor, i.e. that would be the entire logical display what applications see. Then you would get the eclipse welcome screen in the center of the primary monitor. I thought that the -nomultimonitor was exactly meant for this.

>Or maybe you don't like the fact that the X windows appear centered on the
>virtual desktop, and thus split between monitors?  Fixing this has been on the
>todo list for some time, unfortunately.

No, I don't like it, but apart from that I also would like to understand why it works as is today (see the first paragraph of this post).

What do you think?


Jon TURNEY <> írta:
>On 30/06/2011 21:48, szalai endre wrote:>
>>> This mode automatically sets the multiplemonitors option and it cannot>
>>> be overriden from command line.>
>> What is it that makes you think this?>
> >
> According to XWin docs: "-[no]multimonitors or -[no]multiplemonitors Create>
> a screen 0 that covers all monitors [the primary monitor] on a system with>
> multiple monitors. This option is currently enabled by default in>
> -multiwindow mode.">
"enabled by default" is not the same as "cannot be disabled from the command>
line", which is what -nomultiplemonitors does.>
> And this is exactly what happens. When I start a program, it shows up on>
> both monitors (half here, half there). This is not supposed to happen (see>
> next point).>
> >
>> I'm not sure if I understand what you are expecting to happen with>
>> -multiwindow -nomultiplemonitors:>
> >
> I have 2 monitors. Imagine you turn off one of them and you want to use the>
> other one only.>
I assume that is because one of them in an external monitor attached to a>
laptop which you now want to use on the move, or something like that.  This is>
an interesting use case which hadn't occurred to me previously.>
If that is the case, it might be that using -resize=randr is a better>
approach, as this allows the X server to use both monitors for the X display>
when they are attached, and then resize the X display to the primary monitor>
when the secondary is detached.>
(Note that this isn't something I've tested and I wouldn't be surprised if>
there were some problems with doing that, like for e.g. the windows not>
getting automatically moved onto the primary display when the resize occurs)>
Or maybe you don't like the fact that the X windows appear centered on the>
virtual desktop, and thus split between monitors?  Fixing this has been on the>
todo list for some time, unfortunately.>
> Currently, Cygwin-X will span over all monitors - unless>
> you use the multiplemonitors option. I think the goal for this option is>
> very clear from the docs: use only 1 monitor for the root window, no matter>
> what. So I would expect this behavior: you should not be able to move off>
> windows from the primary monitor, at all. The point is, you want to limit>
> the root window to one monitor only.>
> >
> I see the -multiwindow and -nomultiplemonitors options completely>
> independent from each other. They should not have any relationship at all.>
> The first just tells how you want to map windows within the root window,>
> while the other simply specifies how many monitors you want to use for the>
> root window.>
... and indeed they are.>
But if you actually try -multiwindow -nomultiplemonitors, you'll see that the>
windows can be moved off the primary monitor, but that they don't get their>
contents redrawn when you do so (because the underlying X screen is only the>
size of the primary monitor, so the window is effectively 'off-screen' when>
moved there)>
> I thought it is very clear from the docs, however your questions make me>
> uncertain. Isn't is supposed to work like that?>
Well, it might be obvious, but it seems we need some special case behavior>
(like constraining the movement of windows, which doesn't exist yet) to behave>
in the 'obvious' way in this uncommon case.>
-- >
Volunteer Cygwin/X X Server maintainer>
Unsubscribe info:>
Problem reports:>
FAQ:         >

Unsubscribe info:
Problem reports:

More information about the Cygwin-xfree mailing list