summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2022-08-16 16:19:52 +0200
committervaxerski <vaxry@vaxry.net>2022-08-16 16:19:52 +0200
commitbec75013658836e24d4bc9d3a5a96d328b8c7bf0 (patch)
tree03e9d74993084f1cd6c5f1efab7de19b78f418e5 /src
parentea45c6bfe0388b7d49548538473ee80ab852cce7 (diff)
fix borders on no_gaps_when_only
Diffstat (limited to 'src')
-rw-r--r--src/Window.hpp1
-rw-r--r--src/layout/DwindleLayout.cpp2
-rw-r--r--src/layout/MasterLayout.cpp2
-rw-r--r--src/render/Renderer.cpp2
4 files changed, 6 insertions, 1 deletions
diff --git a/src/Window.hpp b/src/Window.hpp
index 7dcd670f..181ae74e 100644
--- a/src/Window.hpp
+++ b/src/Window.hpp
@@ -13,6 +13,7 @@ struct SWindowSpecialRenderData {
// set by the layout
bool rounding = true;
+ bool border = true;
};
struct SWindowAdditionalConfigData {
diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp
index 05f9e2d5..13ee7774 100644
--- a/src/layout/DwindleLayout.cpp
+++ b/src/layout/DwindleLayout.cpp
@@ -177,11 +177,13 @@ void CHyprDwindleLayout::applyNodeDataToWindow(SDwindleNodeData* pNode, bool for
PWINDOW->updateWindowDecos();
PWINDOW->m_sSpecialRenderData.rounding = false;
+ PWINDOW->m_sSpecialRenderData.border = false;
return;
}
PWINDOW->m_sSpecialRenderData.rounding = true;
+ PWINDOW->m_sSpecialRenderData.border = true;
const auto OFFSETTOPLEFT = Vector2D(DISPLAYLEFT ? GAPSOUT : GAPSIN,
DISPLAYTOP ? GAPSOUT : GAPSIN);
diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp
index c489e32e..3c1d943c 100644
--- a/src/layout/MasterLayout.cpp
+++ b/src/layout/MasterLayout.cpp
@@ -241,11 +241,13 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) {
PWINDOW->updateWindowDecos();
PWINDOW->m_sSpecialRenderData.rounding = false;
+ PWINDOW->m_sSpecialRenderData.border = false;
return;
}
PWINDOW->m_sSpecialRenderData.rounding = true;
+ PWINDOW->m_sSpecialRenderData.border = true;
const auto OFFSETTOPLEFT = Vector2D(DISPLAYLEFT ? GAPSOUT : GAPSIN,
DISPLAYTOP ? GAPSOUT : GAPSIN);
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp
index 6251d0a8..9d442be9 100644
--- a/src/render/Renderer.cpp
+++ b/src/render/Renderer.cpp
@@ -255,7 +255,7 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, CMonitor* pMonitor, timespec*
wlr_surface_for_each_surface(g_pXWaylandManager->getWindowSurface(pWindow), renderSurface, &renderdata);
- if (renderdata.decorate) {
+ if (renderdata.decorate && pWindow->m_sSpecialRenderData.border) {
static auto *const PROUNDING = &g_pConfigManager->getConfigValuePtr("decoration:rounding")->intValue;
float rounding = renderdata.dontRound ? 0 : renderdata.rounding == -1 ? *PROUNDING : renderdata.rounding;