-
-
Notifications
You must be signed in to change notification settings - Fork 793
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
Upgrade smithay-client-toolkit 0.17 #4777
Conversation
- wgpu gives segfault so move to EGL - implement terminating message loop to match prev implementation - still gives error but no segfault or panic right now
Without this change, the event dispatch would go on forever and cause a stack overflow
…of binding them during new_window
@tzx many thanks for doing this work! I appreciate it a great deal! I'll see if I can persuade one or two people to run with this and we can figure out where to go from there! |
@tzx amazing, Herculean effort :D I'll check the In terms of continuing this work, if I were up to actually contributing code, should we fork the fork and raise PRs against it, fork the fork and submit a new PR here, or add more people as collaborators to the fork to preserve this PR? |
Since we just cut a release, which gives folks an up to date stable build to target, I'm conceptually ok with merging this and making nightly a bit wonky for wayland users while we quickly try to close any gaps that might cause work to be lost, and then we can take a bit longer to polish up the rest. |
I'll update this comment with results from other configurations, but to start with... I'm running Compositors with server-side decorations here are:
Compositors with only client-side decorations here are:
|
Ahh, I forgot about turning off window_decorations in my config when working on frame decorations when I was trying wezterm on weston... Hope it's an easy fix. |
@tzx don't worry about it |
Okay, I've had a chance to play with this I'm no expert in Wayland or SCTK, although learning a lot just reading through the code What I'd like to do is prepare a PR that can be merged soon after this PR, and my approach is to hard code CSD via SCTK Fallback Frame, ignoring user and compositor preference, with the user able to move/resize/maximise the window without hitting any Then separate future PRs can look at updating to SCTK 0.18, and restoring user control over decorations |
I've created a branch here: https://github.com/jokeyrhyme/wezterm/tree/smithay-0-17-conflicts-after-4824-and-4866 I figured it was worth tackling the This incorporates the changes to resize_increment behaviour from #4824 and #4866 Otherwise, this doesn't change the observed results: #4777 (comment) |
FWIW, a valid outcome for client-side decorations is to default to lean on the https://wezfurlong.org/wezterm/config/lua/config/integrated_title_button_style.html feature to render most/all of that UI. I think that would reduce the problem space in the wayland specific code to handling resize "handles" around the window borders, which can be done with transparent surfaces. The benefit of that is that no custom drawing would be necessary at the wayland layer. |
A few thoughts on this:
|
if someone else doesn't get to it, I think I know what needs to be done to fix this, and a general idea of how to fix this at least using the fallback frame. Although using https://github.com/PolyMeilex/sctk-adwaita might look nicer. |
@tmccombs thanks! I believe this PR is effectively frozen, so I've created some follow-up PRs that address some of the panics by using the fallback frame in all cases (for now) as a temporary stop-gap |
I've rebased this and pushed it to |
Hi, just wondering, would this somewhat improve the fractional scaling situation in Wayland? |
Here's my draft at attempting to improve this: |
start if i enter: added that to the .desktop app script, and opens everytime now on hyprland. also added it to hotkey obviously, just verify your wayland display number. |
Saw #4504, when I was looking into #4483.
Understand that this requires a large refactor, so I am attempting it here. Currently, typing works, but there are a lot of missing features that I am noting down, possibly more...:
seems like I rather update to 0.18 to make this easier, I did it in 0.17 but 0.18 has an abstraction)