diff options
| author | thejch <66577496+thejch@users.noreply.github.com> | 2024-03-30 18:14:26 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-31 02:14:26 +0100 |
| commit | 16a9c16d9f99bd8be9f1bb15442b001fdf2ea759 (patch) | |
| tree | f9cb60dc2d92519079699e9cb6e71e562b55a8a5 /src/desktop/Workspace.cpp | |
| parent | 1cc9a44318e53a34f41cc36483502de985b88cf8 (diff) | |
renderer/animations: Fix various inaccurate damage tracking issues and offsets (#5297)
Diffstat (limited to 'src/desktop/Workspace.cpp')
| -rw-r--r-- | src/desktop/Workspace.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/desktop/Workspace.cpp b/src/desktop/Workspace.cpp index 05843b59..a0c14bba 100644 --- a/src/desktop/Workspace.cpp +++ b/src/desktop/Workspace.cpp @@ -49,6 +49,16 @@ void CWorkspace::startAnim(bool in, bool left, bool instant) { const auto ANIMSTYLE = m_fAlpha.m_pConfig->pValues->internalStyle; static auto PWORKSPACEGAP = CConfigValue<Hyprlang::INT>("general:gaps_workspaces"); + // set floating windows offset callbacks + m_vRenderOffset.setUpdateCallback([&](void*) { + for (auto& w : g_pCompositor->m_vWindows) { + if (!g_pCompositor->windowValidMapped(w.get()) || w->m_iWorkspaceID != m_iID) + continue; + + w->onWorkspaceAnimUpdate(); + }; + }); + if (ANIMSTYLE.starts_with("slidefade")) { const auto PMONITOR = g_pCompositor->getMonitorFromID(m_iMonitorID); float movePerc = 100.f; |
