XDG popup tweaks

This commit is contained in:
vaxerski
2022-04-02 13:41:15 +02:00
parent 4db773b1e7
commit c923b4f075
5 changed files with 37 additions and 12 deletions

View File

@@ -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);
}
}