mirror of
https://github.com/hyprwm/Hyprland
synced 2025-12-20 15:10:12 +01:00
renderer: render tiled fading out above other tiled windows
fixes #9717 closes #9796
This commit is contained in:
parent
4c987b20e2
commit
d1a59ec39e
1 changed files with 13 additions and 1 deletions
|
|
@ -360,7 +360,7 @@ void CHyprRenderer::renderWorkspaceWindows(PHLMONITOR pMonitor, PHLWORKSPACE pWo
|
||||||
|
|
||||||
EMIT_HOOK_EVENT("render", RENDER_PRE_WINDOWS);
|
EMIT_HOOK_EVENT("render", RENDER_PRE_WINDOWS);
|
||||||
|
|
||||||
std::vector<PHLWINDOWREF> windows;
|
std::vector<PHLWINDOWREF> windows, tiledFadingOut;
|
||||||
windows.reserve(g_pCompositor->m_vWindows.size());
|
windows.reserve(g_pCompositor->m_vWindows.size());
|
||||||
|
|
||||||
for (auto const& w : g_pCompositor->m_vWindows) {
|
for (auto const& w : g_pCompositor->m_vWindows) {
|
||||||
|
|
@ -390,6 +390,13 @@ void CHyprRenderer::renderWorkspaceWindows(PHLMONITOR pMonitor, PHLWORKSPACE pWo
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// render tiled fading out after others
|
||||||
|
if (w->m_bFadingOut) {
|
||||||
|
tiledFadingOut.emplace_back(w);
|
||||||
|
w.reset();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
// render the bad boy
|
// render the bad boy
|
||||||
renderWindow(w.lock(), pMonitor, time, true, RENDER_PASS_MAIN);
|
renderWindow(w.lock(), pMonitor, time, true, RENDER_PASS_MAIN);
|
||||||
w.reset();
|
w.reset();
|
||||||
|
|
@ -400,6 +407,11 @@ void CHyprRenderer::renderWorkspaceWindows(PHLMONITOR pMonitor, PHLWORKSPACE pWo
|
||||||
|
|
||||||
lastWindow.reset();
|
lastWindow.reset();
|
||||||
|
|
||||||
|
// render tiled windows that are fading out after other tiled to not hide them behind
|
||||||
|
for (auto& w : tiledFadingOut) {
|
||||||
|
renderWindow(w.lock(), pMonitor, time, true, RENDER_PASS_MAIN);
|
||||||
|
}
|
||||||
|
|
||||||
// Non-floating popup
|
// Non-floating popup
|
||||||
for (auto& w : windows) {
|
for (auto& w : windows) {
|
||||||
if (!w)
|
if (!w)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue