renderer: fix non-reported sizes window box calculations

fixed #5129
This commit is contained in:
Vaxry 2024-03-16 14:37:07 +00:00
parent 19c90048d6
commit 5e5d7e2abc

View file

@ -92,7 +92,7 @@ static void renderSurface(struct wlr_surface* surface, int x, int y, void* data)
} }
} }
if (PSURFACE && PWINDOW && PWINDOW->m_vRealSize.goal() > PWINDOW->m_vReportedSize) { if (PSURFACE && PWINDOW && PWINDOW->m_vRealSize.goal() > PWINDOW->m_vReportedSize && PWINDOW->m_vReportedSize > Vector2D{1, 1}) {
Vector2D size = Vector2D size =
Vector2D{windowBox.w * (PWINDOW->m_vReportedSize.x / PWINDOW->m_vRealSize.value().x), windowBox.h * (PWINDOW->m_vReportedSize.y / PWINDOW->m_vRealSize.value().y)}; Vector2D{windowBox.w * (PWINDOW->m_vReportedSize.x / PWINDOW->m_vRealSize.value().x), windowBox.h * (PWINDOW->m_vReportedSize.y / PWINDOW->m_vRealSize.value().y)};
Vector2D correct = Vector2D{windowBox.w, windowBox.h} - size; Vector2D correct = Vector2D{windowBox.w, windowBox.h} - size;