diff options
| author | Vaxry <vaxry@vaxry.net> | 2025-01-25 20:36:44 +0000 |
|---|---|---|
| committer | Vaxry <vaxry@vaxry.net> | 2025-01-25 20:36:44 +0000 |
| commit | 445acec2a29adbb30196d8b92f86270a038b7ee5 (patch) | |
| tree | 1d496f4b04ba4179d94f160a500e4ab4dfadee92 /src/events/Windows.cpp | |
| parent | 45c3787e75323999d2f43b6f83972f4cb11a81f9 (diff) | |
core: move sendWindowSize off of xwaylandmgr
additionally fixes that one weird x11 issue with floating windows being mis-sized on open
Diffstat (limited to 'src/events/Windows.cpp')
| -rw-r--r-- | src/events/Windows.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp index 525adc02..9ecf3652 100644 --- a/src/events/Windows.cpp +++ b/src/events/Windows.cpp @@ -681,8 +681,12 @@ void Events::listener_mapWindow(void* owner, void* data) { if (PMONITOR && PWINDOW->isX11OverrideRedirect()) PWINDOW->m_fX11SurfaceScaledBy = PMONITOR->scale; - if (!PWINDOW->isX11OverrideRedirect() && PWINDOW->m_bIsX11 && PWINDOW->m_bIsFloating) - g_pXWaylandManager->setWindowSize(PWINDOW, PWINDOW->m_vRealSize->goal(), true); + // Fix some X11 popups being invisible / having incorrect size on open. + // What the ACTUAL FUCK is going on?????? I HATE X11 + if (!PWINDOW->isX11OverrideRedirect() && PWINDOW->m_bIsX11 && PWINDOW->m_bIsFloating) { + PWINDOW->sendWindowSize(PWINDOW->m_vRealSize->goal(), true, PWINDOW->m_vRealPosition->goal() - Vector2D{1, 1}); + PWINDOW->sendWindowSize(PWINDOW->m_vRealSize->goal(), true); + } } void Events::listener_unmapWindow(void* owner, void* data) { @@ -949,7 +953,7 @@ void Events::listener_unmanagedSetGeometry(void* owner, void* data) { PWINDOW->setHidden(true); if (PWINDOW->isFullscreen() || !PWINDOW->m_bIsFloating) { - g_pXWaylandManager->setWindowSize(PWINDOW, PWINDOW->m_vRealSize->goal(), true); + PWINDOW->sendWindowSize(PWINDOW->m_vRealSize->goal(), true); g_pHyprRenderer->damageWindow(PWINDOW); return; } |
