From f16f170433540d85cf672217bca2d64c6db9eb01 Mon Sep 17 00:00:00 2001 From: outfoxxed Date: Tue, 14 Jan 2025 08:44:09 -0800 Subject: protocols: immediately copy toplevel content when ignoreDamage set (#9049) Also sets m_ignoreDamage, as it wasn't set before. --- src/protocols/ToplevelExport.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/protocols/ToplevelExport.cpp') diff --git a/src/protocols/ToplevelExport.cpp b/src/protocols/ToplevelExport.cpp index 0ddd84c8..73e5cad9 100644 --- a/src/protocols/ToplevelExport.cpp +++ b/src/protocols/ToplevelExport.cpp @@ -202,7 +202,12 @@ void CToplevelExportFrame::copy(CHyprlandToplevelExportFrameV1* pFrame, wl_resou buffer = PBUFFER->buffer; - PROTO::toplevelExport->m_vFramesAwaitingWrite.emplace_back(self); + m_ignoreDamage = ignoreDamage; + + if (ignoreDamage && validMapped(pWindow)) + share(); + else + PROTO::toplevelExport->m_vFramesAwaitingWrite.emplace_back(self); } void CToplevelExportFrame::share() { @@ -226,7 +231,7 @@ void CToplevelExportFrame::share() { resource->sendFlags((hyprlandToplevelExportFrameV1Flags)0); - if (!ignoreDamage) { + if (!m_ignoreDamage) { resource->sendDamage(0, 0, box.width, box.height); } -- cgit v1.2.3