Summary: | Visual glitches when dropping dragged windows to another virtual desktop | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | fanzhuyifan |
Component: | effects-desktop-grid | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | agurenko, dashonwwIII, nate, xaver.hugl |
Priority: | NOR | Keywords: | qt6 |
Version First Reported In: | git master | ||
Target Milestone: | --- | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/cab4fdaad296be5de025540f8d5e937a2dd66c27 | Version Fixed In: | 6.0 |
Sentry Crash Report: |
Description
fanzhuyifan
2023-12-20 17:49:36 UTC
I debugged it for a bit and it's really weird issue. I've checked that the dragged window is not moved to the new desktop, then original, then back to the new one. It doesn't happen. I tried disabling animations => same thing. I tried commenting out proxy thumbnail stuff => same thing. Also, fwiw if you drag a desktop, then there's no such glitch. *** Bug 480564 has been marked as a duplicate of this bug. *** A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/5174 Git commit eab90b6a0acb3f20b0127f944fea1c68d340e3d2 by David Edmundson. Committed on 14/02/2024 at 09:19. Pushed by davidedmundson into branch 'master'. overview: Explicitly reset parent on teradown Instantiators create objects when they're added to a model, and deference when when they're removed from the model. When we explicitly set a parent in onObjectAdded we're creating a second reference. This does get cleaned up later, but not in the same frame. This brings us in line to what QQmlRepeater (which works with items) does internally for items being added and removed. M +6 -0 src/plugins/private/qml/WindowHeap.qml https://invent.kde.org/plasma/kwin/-/commit/eab90b6a0acb3f20b0127f944fea1c68d340e3d2 Git commit cab4fdaad296be5de025540f8d5e937a2dd66c27 by Vlad Zahorodnii, on behalf of David Edmundson. Committed on 14/02/2024 at 10:08. Pushed by vladz into branch 'Plasma/6.0'. overview: Explicitly reset parent on teradown Instantiators create objects when they're added to a model, and deference when when they're removed from the model. When we explicitly set a parent in onObjectAdded we're creating a second reference. This does get cleaned up later, but not in the same frame. This brings us in line to what QQmlRepeater (which works with items) does internally for items being added and removed. (cherry picked from commit eab90b6a0acb3f20b0127f944fea1c68d340e3d2) M +6 -0 src/plugins/private/qml/WindowHeap.qml https://invent.kde.org/plasma/kwin/-/commit/cab4fdaad296be5de025540f8d5e937a2dd66c27 |