desktop: prevent layers from dismissing their own seat grabs on map (#10417)

This commit is contained in:
outfoxxed
2025-05-15 02:16:03 -07:00
committed by GitHub
parent 5ceb0ec15d
commit dfb841c303

View File

@@ -167,7 +167,9 @@ void CLayerSurface::onMap() {
if (GRABSFOCUS) {
// TODO: use the new superb really very cool grab
g_pSeatManager->setGrab(nullptr);
if (g_pSeatManager->m_seatGrab && !g_pSeatManager->m_seatGrab->accepts(m_surface->resource()))
g_pSeatManager->setGrab(nullptr);
g_pInputManager->releaseAllMouseButtons();
g_pCompositor->focusSurface(m_surface->resource());