mirror of
https://github.com/hyprwm/Hyprland.git
synced 2026-08-24 10:04:19 -05:00
deco/border: fix damageEntire
This commit is contained in:
@@ -117,23 +117,12 @@ void CHyprBorderDecoration::damageEntire() {
|
||||
if (!validMapped(m_window) || m_window->m_fullscreenState.internal == FSMODE_FULLSCREEN)
|
||||
return;
|
||||
|
||||
auto surfaceBox = m_window->getWindowMainSurfaceBox();
|
||||
const auto ROUNDING = m_window->rounding();
|
||||
const auto ROUNDINGSIZE = ROUNDING - M_SQRT1_2 * ROUNDING + 2;
|
||||
const auto BORDERSIZE = m_window->getRealBorderSize() + 1;
|
||||
const auto GLOBAL_BOX = assignedBoxGlobal();
|
||||
const auto ROUNDING = m_window->rounding();
|
||||
const auto BORDERSIZE = m_window->getRealBorderSize() + 1;
|
||||
|
||||
const auto PWINDOWWORKSPACE = m_window->m_workspace;
|
||||
if (PWINDOWWORKSPACE && PWINDOWWORKSPACE->m_renderOffset->isBeingAnimated() && !m_window->m_pinned)
|
||||
surfaceBox.translate(PWINDOWWORKSPACE->m_renderOffset->value());
|
||||
surfaceBox.translate(m_window->m_floatingOffset);
|
||||
|
||||
CBox surfaceBoxExpandedBorder = surfaceBox;
|
||||
surfaceBoxExpandedBorder.expand(BORDERSIZE);
|
||||
CBox surfaceBoxShrunkRounding = surfaceBox;
|
||||
surfaceBoxShrunkRounding.expand(-ROUNDINGSIZE);
|
||||
|
||||
CRegion borderRegion(surfaceBoxExpandedBorder);
|
||||
borderRegion.subtract(surfaceBoxShrunkRounding);
|
||||
CRegion borderRegion(GLOBAL_BOX);
|
||||
borderRegion.subtract(GLOBAL_BOX.copy().expand(-(BORDERSIZE + ROUNDING)));
|
||||
|
||||
for (auto const& m : g_pCompositor->m_monitors) {
|
||||
if (!g_pHyprRenderer->shouldRenderWindow(m_window.lock(), m)) {
|
||||
|
||||
Reference in New Issue
Block a user