mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-02 20:25:58 +01:00
renderer: don't render decorations on renderdata.decorate false
fixes #4117
This commit is contained in:
parent
50648e6bae
commit
0fdf909b19
1 changed files with 13 additions and 9 deletions
|
@ -479,7 +479,7 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, CMonitor* pMonitor, timespec*
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!pWindow->m_bIsFullscreen || PWORKSPACE->m_efFullscreenMode != FULLSCREEN_FULL) {
|
if (decorate) {
|
||||||
for (auto& wd : pWindow->m_dWindowDecorations) {
|
for (auto& wd : pWindow->m_dWindowDecorations) {
|
||||||
if (wd->getDecorationLayer() != DECORATION_LAYER_BOTTOM)
|
if (wd->getDecorationLayer() != DECORATION_LAYER_BOTTOM)
|
||||||
continue;
|
continue;
|
||||||
|
@ -511,12 +511,14 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, CMonitor* pMonitor, timespec*
|
||||||
|
|
||||||
g_pHyprOpenGL->m_RenderData.useNearestNeighbor = false;
|
g_pHyprOpenGL->m_RenderData.useNearestNeighbor = false;
|
||||||
|
|
||||||
|
if (decorate) {
|
||||||
for (auto& wd : pWindow->m_dWindowDecorations) {
|
for (auto& wd : pWindow->m_dWindowDecorations) {
|
||||||
if (wd->getDecorationLayer() != DECORATION_LAYER_OVER)
|
if (wd->getDecorationLayer() != DECORATION_LAYER_OVER)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
wd->draw(pMonitor, renderdata.alpha * renderdata.fadeAlpha, Vector2D{renderdata.x, renderdata.y} - PREOFFSETPOS);
|
wd->draw(pMonitor, renderdata.alpha * renderdata.fadeAlpha, Vector2D{renderdata.x, renderdata.y} - PREOFFSETPOS);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (TRANSFORMERSPRESENT) {
|
if (TRANSFORMERSPRESENT) {
|
||||||
|
|
||||||
|
@ -553,6 +555,7 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, CMonitor* pMonitor, timespec*
|
||||||
g_pHyprOpenGL->m_RenderData.useNearestNeighbor = false;
|
g_pHyprOpenGL->m_RenderData.useNearestNeighbor = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (decorate) {
|
||||||
for (auto& wd : pWindow->m_dWindowDecorations) {
|
for (auto& wd : pWindow->m_dWindowDecorations) {
|
||||||
if (wd->getDecorationLayer() != DECORATION_LAYER_OVERLAY)
|
if (wd->getDecorationLayer() != DECORATION_LAYER_OVERLAY)
|
||||||
continue;
|
continue;
|
||||||
|
@ -560,6 +563,7 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, CMonitor* pMonitor, timespec*
|
||||||
wd->draw(pMonitor, renderdata.alpha * renderdata.fadeAlpha, Vector2D{renderdata.x, renderdata.y} - PREOFFSETPOS);
|
wd->draw(pMonitor, renderdata.alpha * renderdata.fadeAlpha, Vector2D{renderdata.x, renderdata.y} - PREOFFSETPOS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
EMIT_HOOK_EVENT("render", RENDER_POST_WINDOW);
|
EMIT_HOOK_EVENT("render", RENDER_POST_WINDOW);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue