summaryrefslogtreecommitdiff
path: root/src/render
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-03-18 20:03:39 +0100
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-03-18 20:03:39 +0100
commita9773bd91a2c01982cc9b9807233c95303feada1 (patch)
tree3d5936042a0e7330ee9bda9f49601f09beb86b17 /src/render
parent854c827911b898d38fd54cdfab6bbd57296d3842 (diff)
XWayland and moved managers
Diffstat (limited to 'src/render')
-rw-r--r--src/render/Renderer.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp
index 623b9c07..a62da514 100644
--- a/src/render/Renderer.cpp
+++ b/src/render/Renderer.cpp
@@ -40,6 +40,9 @@ void CHyprRenderer::renderAllClientsForMonitor(const int& ID, timespec* time) {
for (auto& w : g_pCompositor->m_vWindows) {
+ if (w.m_bIsX11)
+ continue;
+
const wlr_box geom = { w.m_vPosition.x, w.m_vPosition.y, w.m_vSize.x, w.m_vSize.y };
if (!wlr_output_layout_intersects(g_pCompositor->m_sWLROutputLayout, PMONITOR->output, &geom))
@@ -54,4 +57,19 @@ void CHyprRenderer::renderAllClientsForMonitor(const int& ID, timespec* time) {
wlr_surface_for_each_surface(w.m_uSurface.xdg->surface, renderSurface, &renderdata);
wlr_xdg_surface_for_each_popup_surface(w.m_uSurface.xdg, renderSurface, &renderdata);
}
+
+ for (auto& w : g_pCompositor->m_vWindows) {
+
+ if (!w.m_bIsX11)
+ continue;
+
+ wlr_box geometry = { w.m_uSurface.xwayland->x, w.m_uSurface.xwayland->y, w.m_uSurface.xwayland->width, w.m_uSurface.xwayland->height };
+
+ if (!wlr_output_layout_intersects(g_pCompositor->m_sWLROutputLayout, PMONITOR->output, &geometry))
+ continue;
+
+ SRenderData renderdata = {PMONITOR->output, time, w.m_vSize.x, w.m_vSize.y};
+
+ wlr_surface_for_each_surface(w.m_uSurface.xwayland->surface, renderSurface, &renderdata);
+ }
}