Summary: | Broken wobbly windows effect on Wayland | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Severin von Wnuck-Lipinski <severinvonw> |
Component: | wayland-generic | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | nate |
Priority: | HI | Keywords: | regression |
Version First Reported In: | 5.22.90 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=443148 | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/commit/4b9bffcff95084368b4a24721b6f7820eb1e4fb3 | Version Fixed In: | 5.23 |
Sentry Crash Report: |
Description
Severin von Wnuck-Lipinski
2021-09-19 14:06:45 UTC
Works fine on my computer with client-side and server-side decorated firefox. It might be another nvidia thing... Does wobbly windows effect work as expected on X11? Are all affected apps have server-side decorations? (In reply to Vlad Zahorodnii from comment #2) > Does wobbly windows effect work as expected on X11? Yes it does. (In reply to Vlad Zahorodnii from comment #3) > Are all affected apps have server-side decorations? Both client-side decorated and server-side decorated Firefox (and Thunderbird) are broken for me. I've also noticed that all other affected programs are QtQuick applications (like the new System Monitor). A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/1443 Git commit 2200febcd6e4146c0a6f9fb18eae1b9ae2e944cb by Vlad Zahorodnii. Committed on 21/09/2021 at 09:41. Pushed by vladz into branch 'master'. Restore fbo binding after updating surface texture from EGLStreams Currently, data from client buffer EGLStream is copied to a surface texture. An fbo is used for that purpose. The main issue with it is that it doesn't restore the old framebuffer binding. The surface texture can be updated in the middle of a compositing cycle. If the framebuffer binding is not restored, any window that must be rendered in an offscreen texture won't be rendered to the offscreen texture. This change makes EglStreamSurfaceTextureWayland restore the fbo binding so the DeformEffect and software screen rotation work as expected with the proprietary NVIDIA driver. M +12 -3 src/plugins/platforms/drm/egl_stream_backend.cpp https://invent.kde.org/plasma/kwin/commit/2200febcd6e4146c0a6f9fb18eae1b9ae2e944cb Git commit 4b9bffcff95084368b4a24721b6f7820eb1e4fb3 by Vlad Zahorodnii. Committed on 21/09/2021 at 10:28. Pushed by vladz into branch 'Plasma/5.23'. Restore fbo binding after updating surface texture from EGLStreams Currently, data from client buffer EGLStream is copied to a surface texture. An fbo is used for that purpose. The main issue with it is that it doesn't restore the old framebuffer binding. The surface texture can be updated in the middle of a compositing cycle. If the framebuffer binding is not restored, any window that must be rendered in an offscreen texture won't be rendered to the offscreen texture. This change makes EglStreamSurfaceTextureWayland restore the fbo binding so the DeformEffect and software screen rotation work as expected with the proprietary NVIDIA driver. (cherry picked from commit 2200febcd6e4146c0a6f9fb18eae1b9ae2e944cb) M +12 -3 src/plugins/platforms/drm/egl_stream_backend.cpp https://invent.kde.org/plasma/kwin/commit/4b9bffcff95084368b4a24721b6f7820eb1e4fb3 |