summaryrefslogtreecommitdiff
path: root/src/render/Renderer.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-02 13:41:15 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-02 13:41:15 +0200
commitc923b4f0756c3494d408a257c08922621d120ae2 (patch)
treec254406a2b6be7eb891f09e601fa905a6685f739 /src/render/Renderer.cpp
parent4db773b1e7d51cd008ae24f4c457710e8360fef7 (diff)
XDG popup tweaks
Diffstat (limited to 'src/render/Renderer.cpp')
-rw-r--r--src/render/Renderer.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp
index 7ca86bca..276b4556 100644
--- a/src/render/Renderer.cpp
+++ b/src/render/Renderer.cpp
@@ -18,6 +18,11 @@ void renderSurface(struct wlr_surface* surface, int x, int y, void* data) {
double outputX = 0, outputY = 0;
wlr_output_layout_output_coords(g_pCompositor->m_sWLROutputLayout, RDATA->output, &outputX, &outputY);
+ if (RDATA->pMonitor) { // BUG THIS TODO: this is just to show the popup on a monitor that isnt at 0,0
+ // the popups are broken.
+ x -= ((SMonitor*)RDATA->pMonitor)->vecPosition.x;
+ y -= ((SMonitor*)RDATA->pMonitor)->vecPosition.y;
+ }
wlr_box windowBox;
if (RDATA->surface && surface == RDATA->surface) {
@@ -101,6 +106,7 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, SMonitor* pMonitor, timespec*
}
}
else {
+ renderdata.pMonitor = pMonitor;
wlr_xdg_surface_for_each_popup_surface(pWindow->m_uSurface.xdg, renderSurface, &renderdata);
}
}