From 01e5c59d752d3fe7fa484330fa48e010054b8fa1 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Wed, 13 Dec 2023 17:25:19 +0000 Subject: [PATCH] Revert "xwayland: push invisible windows outside layout" This reverts commit accb3d8d0b339ce83dd36704503253d874c7163b. Bad idea --- src/Compositor.cpp | 2 +- src/helpers/Monitor.cpp | 27 +-------------------------- src/managers/XWaylandManager.cpp | 4 +--- 3 files changed, 3 insertions(+), 30 deletions(-) diff --git a/src/Compositor.cpp b/src/Compositor.cpp index 0eb1b00a..2c7c740e 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -2773,4 +2773,4 @@ void CCompositor::setPreferredScaleForSurface(wlr_surface* pSurface, double scal void CCompositor::setPreferredTransformForSurface(wlr_surface* pSurface, wl_output_transform transform) { wlr_surface_set_preferred_buffer_transform(pSurface, transform); -} \ No newline at end of file +} diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index 0132db63..c112d07d 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -565,15 +565,6 @@ void CMonitor::changeWorkspace(CWorkspace* const pWorkspace, bool internal, bool g_pCompositor->updateFullscreenFadeOnWorkspace(pWorkspace); g_pConfigManager->ensureVRR(this); - - for (auto& w : g_pCompositor->m_vWindows) { - if (w->m_iWorkspaceID != POLDWORKSPACE->m_iID || !w->m_bMappedX11 || !w->m_bIsX11 || w->isHidden() || w->m_iMonitorID != ID) - continue; - - g_pXWaylandManager->moveXWaylandWindow(w.get(), {30000, 30000}); - } - - g_pCompositor->forceReportSizesToWindowsOnWorkspace(pWorkspace->m_iID); } void CMonitor::changeWorkspace(const int& id, bool internal) { @@ -585,9 +576,7 @@ void CMonitor::setSpecialWorkspace(CWorkspace* const pWorkspace) { if (!pWorkspace) { // remove special if exists - const auto EXISTINGSPECIAL = g_pCompositor->getWorkspaceByID(specialWorkspaceID); - - if (EXISTINGSPECIAL) { + if (const auto EXISTINGSPECIAL = g_pCompositor->getWorkspaceByID(specialWorkspaceID); EXISTINGSPECIAL) { EXISTINGSPECIAL->startAnim(false, false); g_pEventManager->postEvent(SHyprIPCEvent{"activespecial", "," + szName}); } @@ -601,18 +590,6 @@ void CMonitor::setSpecialWorkspace(CWorkspace* const pWorkspace) { else g_pInputManager->refocus(); - // for xwayland: yeet all the windows to narnia to avoid some focus fuckery. I hate xwayland. - // I'll avoid setting XCB_ICCCM_WM_STATE_ICONIC (aka minimized) so that the apps don't do stupid shit. - - if (EXISTINGSPECIAL) { - for (auto& w : g_pCompositor->m_vWindows) { - if (w->m_iWorkspaceID != EXISTINGSPECIAL->m_iID || !w->m_bMappedX11 || !w->m_bIsX11 || w->isHidden() || w->m_iMonitorID != ID) - continue; - - g_pXWaylandManager->moveXWaylandWindow(w.get(), {30000, 30000}); - } - } - return; } @@ -654,8 +631,6 @@ void CMonitor::setSpecialWorkspace(CWorkspace* const pWorkspace) { g_pEventManager->postEvent(SHyprIPCEvent{"activespecial", pWorkspace->m_szName + "," + szName}); g_pHyprRenderer->damageMonitor(this); - - g_pCompositor->forceReportSizesToWindowsOnWorkspace(specialWorkspaceID); } void CMonitor::setSpecialWorkspace(const int& id) { diff --git a/src/managers/XWaylandManager.cpp b/src/managers/XWaylandManager.cpp index dcb706e3..2883f205 100644 --- a/src/managers/XWaylandManager.cpp +++ b/src/managers/XWaylandManager.cpp @@ -262,9 +262,7 @@ void CHyprXWaylandManager::moveXWaylandWindow(CWindow* pWindow, const Vector2D& if (!pWindow->m_bIsX11) return; - Vector2D size = pWindow->m_vRealSize.goalv() * pWindow->m_fX11SurfaceScaledBy; - - wlr_xwayland_surface_configure(pWindow->m_uSurface.xwayland, pos.x, pos.y, size.x, size.y); + wlr_xwayland_surface_configure(pWindow->m_uSurface.xwayland, pos.x, pos.y, pWindow->m_vRealSize.vec().x, pWindow->m_vRealSize.vec().y); } void CHyprXWaylandManager::checkBorders(CWindow* pWindow) {