From a663823af2ae6ef1a48719f1f2f03bdce1bc09d9 Mon Sep 17 00:00:00 2001 From: jacekpoz <64381190+jacekpoz@users.noreply.github.com> Date: Wed, 3 May 2023 13:48:46 +0000 Subject: [PATCH] only ignore no_gaps_when_only when the workspace rule specifies a border (#2217) Co-authored-by: jacekpoz --- src/layout/DwindleLayout.cpp | 2 +- src/layout/MasterLayout.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp index 1c58a05d..bda64680 100644 --- a/src/layout/DwindleLayout.cpp +++ b/src/layout/DwindleLayout.cpp @@ -137,7 +137,7 @@ void CHyprDwindleLayout::applyNodeDataToWindow(SDwindleNodeData* pNode, bool for const auto NODESONWORKSPACE = getNodesOnWorkspace(PWINDOW->m_iWorkspaceID); - if (WORKSPACERULE.workspaceString.empty() && *PNOGAPSWHENONLY && !g_pCompositor->isWorkspaceSpecial(PWINDOW->m_iWorkspaceID) && + if (*PNOGAPSWHENONLY && !WORKSPACERULE.border && !g_pCompositor->isWorkspaceSpecial(PWINDOW->m_iWorkspaceID) && (NODESONWORKSPACE == 1 || (PWINDOW->m_bIsFullscreen && g_pCompositor->getWorkspaceByID(PWINDOW->m_iWorkspaceID)->m_efFullscreenMode == FULLSCREEN_MAXIMIZED))) { PWINDOW->m_vRealPosition = calcPos - Vector2D(borderSize, borderSize); PWINDOW->m_vRealSize = calcSize + Vector2D(2 * borderSize, 2 * borderSize); diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp index 618f2059..66fb6eb0 100644 --- a/src/layout/MasterLayout.cpp +++ b/src/layout/MasterLayout.cpp @@ -504,7 +504,7 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) { auto calcPos = PWINDOW->m_vPosition + Vector2D(borderSize, borderSize); auto calcSize = PWINDOW->m_vSize - Vector2D(2 * borderSize, 2 * borderSize); - if (WORKSPACERULE.workspaceString.empty() && *PNOGAPSWHENONLY && !g_pCompositor->isWorkspaceSpecial(PWINDOW->m_iWorkspaceID) && + if (*PNOGAPSWHENONLY && !WORKSPACERULE.border && !g_pCompositor->isWorkspaceSpecial(PWINDOW->m_iWorkspaceID) && (getNodesOnWorkspace(PWINDOW->m_iWorkspaceID) == 1 || (PWINDOW->m_bIsFullscreen && g_pCompositor->getWorkspaceByID(PWINDOW->m_iWorkspaceID)->m_efFullscreenMode == FULLSCREEN_MAXIMIZED))) { PWINDOW->m_vRealPosition = calcPos - Vector2D(borderSize, borderSize);