From f794c91293ca4249fe0883bad4371a4e9e8d4344 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Wed, 30 Mar 2022 20:16:23 +0200 Subject: windows on top of fullscreen, lastmonitor fixes --- src/render/Renderer.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/render/Renderer.cpp') diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index c9dada6d..7eda6296 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -59,12 +59,24 @@ bool shouldRenderWindow(CWindow* pWindow, SMonitor* pMonitor) { } void CHyprRenderer::renderWorkspaceWithFullscreenWindow(SMonitor* pMonitor, SWorkspace* pWorkspace, timespec* time) { + CWindow* pWorkspaceWindow = nullptr; + for (auto& w : g_pCompositor->m_lWindows) { if (w.m_iWorkspaceID != pWorkspace->ID || !w.m_bIsFullscreen) continue; // found it! renderWindow(&w, pMonitor, time, false); + + pWorkspaceWindow = &w; + } + + // then render windows over fullscreen + for (auto& w : g_pCompositor->m_lWindows) { + if (w.m_iWorkspaceID != pWorkspaceWindow->m_iWorkspaceID || !w.m_bCreatedOverFullscreen || !w.m_bIsMapped) + continue; + + renderWindow(&w, pMonitor, time, true); } } -- cgit v1.2.3