[PATCH] shell: Implement wl_shell_surface_set_notification
Bill Spitzak
spitzak at gmail.com
Sun Dec 30 14:01:57 PST 2012
Gregory Merchan wrote:
> This is also important for getting drag-and-drop working correctly. I
> tried the weston dnd demo recently and was saddened to see it does not
> work correctly (i.e. according to the expectations of most computer
> users): the ButtonDown immediately set focus and raised the window
> rather than allowing a drag without focus or stacking change. I tried
> modifying the demo, but I couldn't find any way to reject focus or
> avoid the window being raised. (Sorry. I don't know the new names for
> these things I know on X.)
That does not sound good. I was under the impression that Wayland is
doing this correctly. It may be a bug in toytoolkit.
Drag and drop is the most obvious example where raise on click is wrong,
since Windows went and hacked a fix in for that (basically a timeout to
make sure dnd was not started). This means that users are used to a case
where a click does not raise a window and notice the misbehavior
immediately.
The correct solution is to only allow clients to raise their own
windows. The client can make any decision whether or not a click raises
the window and get it exactly right, without enormous complex assignment
of "roles" to windows an clicks.
> The exceptions to client stacking are, IMO, just the layers seen in
> the patch.
Most schemes I have been able to come up with for inter-client window
stacking involve "layers" but with the ability to dynamically change the
layer. Any solution has to allow a client that can put it's windows atop
the notifications, because otherwise notifications are really annoying.
Raising that client's window puts it atop the notifications, but raising
another client's window might then raise both it and the notifications.
No "layer" system allows this currently. It may seem silly for
notifications but this is vital for working floating toolbars and to
make the panel work correctly with fullscreen applications.
> That reminds me: is there anything like icon windows in any of the
> compositors that have been written? I couldn't find that in weston.
Clients can just change their windows to icon versions.
More information about the wayland-devel
mailing list