-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows can't be resized and move properly in some contextes #8
Comments
@Binero : can you provide the output of running the example with |
Still on v0.2.2. It does seem Mutter is sending the correct events. A simple grep for resize or move does yield results. |
I have also noticed that when focussing on the window, causes it to shrink by a bit, while loosing focus causes it to grow a bit bigger. I thought this behaviour was intentional, but looking at simple_window.rs, I cannot find such behaviour defined, so I am guessing it's a bug as well. I tried making a screencast, but gnome-shell would segfault. |
Hmm, the program is indeed sending the
For some reason, mutter seems to ignore them. I'm going to check if there's some subtlety in the protocol definition I missed regarding them. Also, regarding the grow/shrink effect, well mutter is apparently sending
it seems to fluctuate of 8 pixels in height. Is it what you observe? |
That does sound about right. I must also add, when going into the activities screen in GNOME, the window decorations do not get rendered. |
Okay, I've more insight about this. It appears that mutter does not fully support the However, the support of So, if this bug is indeed the consequence of mutter's lack of support of |
Could using server-side decorations help? https://blogs.gnome.org/fmuellner/2015/01/30/a-small-note-on-window-decorations/ |
Having server-side decorations would make all this much more easy: the client just wouldn't have to worry about them at all (and this crate would not really be needed). However, the trick is that, afaik, there is not yet any mechanism for the client & server to negociate which on of them will do the decoration drawing. Some wayland compositors decided it's the client's job, while some others decided they'll do it. But I don't know of a standard way for a client to ask the compositor to draw its decorations (or if there is one and you know about it, I'd really like to hear about it). |
Ideally, |
I have not studied the protocol, but seems that at least both Kwin and Mutter have server side decorations optional. The article I linked above is for Kwin, and this is for Mutter. Not sure if it's standard but maybe it can be a start. |
You linked two times to article for Mutter actually, and maybe I'm missing it, but I don't see what in this article seems to imply that mutter has server-side decorations fro wayland clients. Actually, the gnome wiki seems to imply the opposite:
Kwin has indeed followed the path of server-side decoration, and I think has a internal Qt protocol for advertizing wether decorations should be client or server side. This protocol could probably be integrated in wayland-window, to use server-side decorations on KWin. |
I think this is the protocol of KDE : https://github.com/KDE/kwayland/blob/master/src/client/protocols/server-decoration.xml |
Sorry about the first link, this was the article talking about Kwin server-side decorations.
You are right, the article was explaining how server side decorations were going to be similar to client side ones. The thing is that when talking about server side decorations I thought it was talking about Wayland, but it wasn't. |
This is quite old, and other reports seem to indicate that the situation with mutter has improved (possibly mutter-side or with the various improvements to wayland-window), so I'll close this. Feel free to open a new issue if some of these problems are still here. |
Follow up from the discussion in rust-windowing/glutin#577
The text was updated successfully, but these errors were encountered: