fixed floating window dragging and rendering

This commit is contained in:
vaxerski
2022-03-22 17:14:07 +01:00
parent 8a8b26a635
commit 8fe1cec87c
3 changed files with 32 additions and 6 deletions

View File

@@ -109,15 +109,34 @@ void CHyprRenderer::renderAllClientsForMonitor(const int& ID, timespec* time) {
return;
}
// Non-floating
for (auto& w : g_pCompositor->m_lWindows) {
if (!g_pCompositor->windowValidMapped(&w))
continue;
if (w.m_bIsFloating)
continue; // floating are in second pass
if (!shouldRenderWindow(&w, PMONITOR))
continue;
// render the bad boy
renderWindow(&w, PMONITOR, time, true);
}
// floating on top
for (auto& w : g_pCompositor->m_lWindows) {
if (!g_pCompositor->windowValidMapped(&w))
continue;
if (!w.m_bIsFloating)
continue;
if (!shouldRenderWindow(&w, PMONITOR))
continue;
// render the bad boy
renderWindow(&w, PMONITOR, time, true);
renderWindow(&w, PMONITOR, time, true);
}
// Render surfaces above windows for monitor