summaryrefslogtreecommitdiff
path: root/src/render
diff options
context:
space:
mode:
Diffstat (limited to 'src/render')
-rw-r--r--src/render/decorations/CHyprBorderDecoration.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/render/decorations/CHyprBorderDecoration.cpp b/src/render/decorations/CHyprBorderDecoration.cpp
index 2785a956..603d8635 100644
--- a/src/render/decorations/CHyprBorderDecoration.cpp
+++ b/src/render/decorations/CHyprBorderDecoration.cpp
@@ -126,9 +126,15 @@ void CHyprBorderDecoration::damageEntire() {
borderRegion.subtract(GLOBAL_BOX.copy().expand(-(BORDERSIZE + ROUNDING)));
borderRegion.expand(2); // pad
+ const CBox borderExtents = borderRegion.getExtents();
+
for (auto const& m : g_pCompositor->m_monitors) {
+ const CBox monitorBox = {m->m_position, m->m_size};
+ if (borderExtents.intersection(monitorBox).empty())
+ continue;
+
if (!g_pHyprRenderer->shouldRenderWindow(m_window.lock(), m)) {
- const CRegion monitorRegion({m->m_position, m->m_size});
+ const CRegion monitorRegion(monitorBox);
borderRegion.subtract(monitorRegion);
}
}