-
Notifications
You must be signed in to change notification settings - Fork 3.3k
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
Incorrect handling of xdg-shell events resulting in zed crashing on wayfire (wayland compositor on linux). #10976
Comments
Hello @marcusbritanicus! #11081 should fix the first issue. I don't really fully understand the second issue, but there's something clearly wrong since resize is super slow on some compositors (like KWin or Mutter) and really fast on others (like Sway). |
For the second issue, there are two events called 'Configure', one in |
@apricotbucket28 Thank you. I will test it sometime today or tomorrow. |
Hi. Sorry for the late reply. Although I was able to test #11081, I was unable to reply here. I still get the same output/crash. It seems that |
Hello! A single |
@apricotbucket28 Please cancel my previous comment. I may have made a mistake in checking out the PR. I directly cloned your branch this time to be sure. I can confirm that there is no crash. |
I would also like to add that resizing the window is also very smooth on wayfire. I might add that if I manage to set up the key-bindings the way I have in pulsar, I would be very happy to switch to full-time. :) |
Check for existing issues
Describe the bug / provide steps to reproduce it
An attempt at starting Zed on wayfire gives the following error:
Running
WAYLAND_DEBUG=1 ./Zed
give the following log:wayland-debug-zed.log
From Lines 564 to 571, one can see that upon receiving a configure event, a commit() is performed first and then the configure is acked(). This is a violation of the protocol. Relevant section of the protocol:
The protocol requires that the client ack the event first and then commit.
Secondly, here, an attempt is made to resize the surface in xdg_toplevel.configure event handler.
This is a protocol violation again. Revelant section of the protocol:
I had a short discussion regarding this with @ammen99 (Wayfire Developer), and he suggested that the new state needs to be remembered, and should not be set until the next xdg_surface.configure event.
Environment
OS: Arch Linux (updated)
DE: Wayfire Wayland Compositor
Kernel: Linux 6.8.7-artix1-1 #1 SMP PREEMPT_DYNAMIC
Please feel free to ask for any further tests and information regarding this.
If applicable, add mockups / screenshots to help explain present your vision of the feature
No response
If applicable, attach your
~/Library/Logs/Zed/Zed.log
file to this issue.No response
The text was updated successfully, but these errors were encountered: