-
Notifications
You must be signed in to change notification settings - Fork 175
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
Implement the xwayland shell protocol #1351
Conversation
f227c27
to
64ebcfa
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1351 +/- ##
==========================================
- Coverage 20.61% 19.49% -1.12%
==========================================
Files 161 161
Lines 26152 26017 -135
==========================================
- Hits 5390 5072 -318
- Misses 20762 20945 +183
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
184fd7c
to
861dab7
Compare
Rebased and removed the anvil hack. This is only blocked on #1350 now (although I could separate it out if you really want). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some nitpicks, overall this is quite clean and I like the implementation a lot.
d7d634c
to
73eb19b
Compare
8e51e33
to
3c7d41c
Compare
CI failures appear unrelated. |
CI failure should be fixed by https://github.com/Smithay/smithay/pull/1424/files, can you rebase? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to go, once CI passes. Thanks for putting in all the work!!
...and use it to associate wl_surfaces to X11 surfaces. The xwayland shell protocol moves the responsibility of setting the "xwayland_surface" role on the wl_surface from the x11 side of the connection to the wayland side. Among other things, this avoids the xwm racing the lifecycle of the surface. Since we can check the serial with a commit hook, this also removes the need for a ugly idle callback in the Xwm, and may allow for better separation of concerns in the future, for example moving the association state tracking out of Xwm.
Depends on #1350 (but only trivially).
The xwayland shell protocol moves the responsibility of setting the "xwayland_surface" role on the wl_surface from the x11 side of the connection to the wayland side. Among other things, this avoids the xwm racing the lifecycle of the surface.
Since we can check the serial with a commit hook, this also removes the need for a ugly idle callback in the
Xwm
, and may allow for better separation of concerns in the future, for example moving the association state tracking out of Xwm.Without the idle callback, we may be able to remove the hard dependency on calloop in the xwayland stack (which is my ulterior motive). It's still required for
send_selection
- I'll attempt to figure those issues out in another PR.