Viewporter implementaion (#585)

Implementation of the `wp_viewporter` core protocol and some bugfixes
This commit is contained in:
Vaxry
2022-08-28 10:14:43 +02:00
committed by GitHub
parent 8b5c64c8fd
commit 52c0ba544c
7 changed files with 93 additions and 54 deletions

View File

@@ -18,14 +18,20 @@
void addPopupGlobalCoords(void* pPopup, int* x, int* y) {
SXDGPopup *const PPOPUP = (SXDGPopup*)pPopup;
auto curPopup = PPOPUP;
int px = 0;
int py = 0;
auto curPopup = PPOPUP;
while (true) {
px += curPopup->popup->current.geometry.x;
py += curPopup->popup->current.geometry.y;
if (curPopup == PPOPUP && PPOPUP->parentWindow) {
px -= curPopup->popup->base->current.geometry.x;
py -= curPopup->popup->base->current.geometry.y;
}
// fix oversized fucking popups
// kill me
if (curPopup->pSurfaceTree && curPopup->pSurfaceTree->pSurface && !curPopup->parentPopup) {