Re: screen/display switching



On Fri, 2003-03-14 at 00:48, Havoc Pennington wrote:
<snip>
> > 
> > If a window supports this spec, it puts "_NET_ALLOW_SCREEN_CHANGE" in
> > its WM_PROTOCOLS.  The actual screen switching uses the same "X Message"
> > protocol that the startup-notification stuff uses (outlined in
> > startup-notification/doc/startup-notification.txt), with
> > "_NET_SCREEN_CHANGE_BEGIN" and "_NET_SCREEN_CHANGE" as the message types
> > used.  The body of the message would contain either a full-fledged
> > display name, like "foo.com:0.0", or just a screen identifier like ":1"
> > (referring to screen 1 on the local display).
> 
> I would add:
> 
>  - the X message stuff would be sent to the client window to be moved,
>    not the root window as in startup-notification (probably obvious, 
>    but good to clarify)

Right.

> 
>  - Perhaps more explicitly separate screen change from display change;
>    I don't think apps can reliably determine from a display name 
>    string like ":0.1" that it's another screen on the same 
>    display they're currently using. Maybe I'm wrong.

Ah, apparently I wasn't clear enough.  For switching screens, you just
pass the screen number.  So, ":1", not ":0.1".  I guess a problem with
this is that you couldn't send a window to another display on the local
server.  Maybe just sticking with the standard [host]:display.screen
notation would be better.  (Though I don't know how to get the current
display number)

> 
>  - Maybe there should be a protocol that asks the entire application
>    (i.e. all windows with the same group leader) to change
>    screens/displays. Yes the WM could just move every window that
>    shares a group leader individually, but it might be more efficient
>    or just nicer if the app did it. This protocol could simply be
>    "send the screen change message to the group leader" perhaps.

And then the group leader would propagate it to members of the group? 
I'm pretty clueless on how groups work....

Thanks,
James




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]