From 0e64dd2ea58aa1b41418d78d5aa27f787de6a267 Mon Sep 17 00:00:00 2001 From: Jeremy Huang <66577496+thejch@users.noreply.github.com> Date: Thu, 14 Sep 2023 04:14:10 -0700 Subject: [PATCH] master: respect the resizing animation option in master layout (#3300) --- src/layout/MasterLayout.cpp | 7 ++----- src/layout/MasterLayout.hpp | 2 -- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp index fa2d4647..7652e897 100644 --- a/src/layout/MasterLayout.cpp +++ b/src/layout/MasterLayout.cpp @@ -572,6 +572,7 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) { static auto* const PGAPSIN = &g_pConfigManager->getConfigValuePtr("general:gaps_in")->intValue; static auto* const PGAPSOUT = &g_pConfigManager->getConfigValuePtr("general:gaps_out")->intValue; static auto* const PNOGAPSWHENONLY = &g_pConfigManager->getConfigValuePtr("master:no_gaps_when_only")->intValue; + static auto* const PANIMATE = &g_pConfigManager->getConfigValuePtr("misc:animate_manual_resizes")->intValue; auto gapsIn = WORKSPACERULE.gapsIn.value_or(*PGAPSIN); auto gapsOut = WORKSPACERULE.gapsOut.value_or(*PGAPSOUT); @@ -635,7 +636,7 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) { g_pXWaylandManager->setWindowSize(PWINDOW, calcSize); } - if (m_bForceWarps) { + if (!*PANIMATE) { g_pHyprRenderer->damageWindow(PWINDOW); PWINDOW->m_vRealPosition.warp(); @@ -690,8 +691,6 @@ void CHyprMasterLayout::resizeActiveWindow(const Vector2D& pixResize, eRectCorne if (getNodesOnWorkspace(PWINDOW->m_iWorkspaceID) == 1 && !centered) return; - m_bForceWarps = true; - switch (orientation) { case ORIENTATION_LEFT: delta = pixResize.x / PMONITOR->vecSize.x; break; case ORIENTATION_RIGHT: delta = -pixResize.x / PMONITOR->vecSize.x; break; @@ -789,8 +788,6 @@ void CHyprMasterLayout::resizeActiveWindow(const Vector2D& pixResize, eRectCorne } recalculateMonitor(PMONITOR->ID); - - m_bForceWarps = false; } void CHyprMasterLayout::fullscreenRequestForWindow(CWindow* pWindow, eFullscreenMode fullscreenMode, bool on) { diff --git a/src/layout/MasterLayout.hpp b/src/layout/MasterLayout.hpp index fd38b915..fb896039 100644 --- a/src/layout/MasterLayout.hpp +++ b/src/layout/MasterLayout.hpp @@ -70,8 +70,6 @@ class CHyprMasterLayout : public IHyprLayout { std::list m_lMasterNodesData; std::vector m_lMasterWorkspacesData; - bool m_bForceWarps = false; - void buildOrientationCycleVectorFromVars(std::vector& cycle, CVarList& vars); void buildOrientationCycleVectorFromEOperation(std::vector& cycle); void runOrientationCycle(SLayoutMessageHeader& header, CVarList* vars, int next);