diff options
| author | Vaxry <vaxry@vaxry.net> | 2024-03-25 16:08:55 +0000 |
|---|---|---|
| committer | Vaxry <vaxry@vaxry.net> | 2024-03-25 16:09:02 +0000 |
| commit | ca17a89d86b73f37019c4cc0c7087303adbcc1f9 (patch) | |
| tree | edbaabbc0a73109465228f7d5270e5163c6b6ca6 /src/desktop/Popup.cpp | |
| parent | 356414639fc06ace7045236ec41d673342981057 (diff) | |
renderer: allow blurring ls popups
Diffstat (limited to 'src/desktop/Popup.cpp')
| -rw-r--r-- | src/desktop/Popup.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/desktop/Popup.cpp b/src/desktop/Popup.cpp index 98d5881a..77e486fd 100644 --- a/src/desktop/Popup.cpp +++ b/src/desktop/Popup.cpp @@ -117,6 +117,9 @@ void CPopup::onMap() { unconstrain(); sendScale(); + + if (m_pLayerOwner && m_pLayerOwner->layer < ZWLR_LAYER_SHELL_V1_LAYER_TOP) + g_pHyprOpenGL->markBlurDirtyForMonitor(g_pCompositor->getMonitorFromID(m_pLayerOwner->layer)); } void CPopup::onUnmap() { @@ -131,6 +134,9 @@ void CPopup::onUnmap() { m_pSubsurfaceHead.reset(); g_pInputManager->simulateMouseMovement(); + + if (m_pLayerOwner && m_pLayerOwner->layer < ZWLR_LAYER_SHELL_V1_LAYER_TOP) + g_pHyprOpenGL->markBlurDirtyForMonitor(g_pCompositor->getMonitorFromID(m_pLayerOwner->layer)); } void CPopup::onCommit(bool ignoreSiblings) { @@ -158,6 +164,9 @@ void CPopup::onCommit(bool ignoreSiblings) { g_pHyprRenderer->damageSurface(m_sWLSurface.wlr(), COORDS.x, COORDS.y); m_bRequestedReposition = false; + + if (m_pLayerOwner && m_pLayerOwner->layer < ZWLR_LAYER_SHELL_V1_LAYER_TOP) + g_pHyprOpenGL->markBlurDirtyForMonitor(g_pCompositor->getMonitorFromID(m_pLayerOwner->layer)); } void CPopup::onReposition() { |
