summaryrefslogtreecommitdiff
path: root/src/events/Layers.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-17 11:52:54 +0200
committerGitHub <noreply@github.com>2022-04-17 11:52:54 +0200
commitbaa9e0caea3ce76f72def6e89659dd851f25831d (patch)
tree3ac4837b91661afe55eaef5abcdd438f436911ee /src/events/Layers.cpp
parenta4f07ea9f7a3e5f882055d9cddb8d048405ad683 (diff)
parent24df15105ee2fc7f2975ef2958c2e7b1258569d1 (diff)
Merge branch 'main' into damage-tracking
Diffstat (limited to 'src/events/Layers.cpp')
-rw-r--r--src/events/Layers.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/events/Layers.cpp b/src/events/Layers.cpp
index db21ae68..2b55ece2 100644
--- a/src/events/Layers.cpp
+++ b/src/events/Layers.cpp
@@ -145,15 +145,17 @@ void Events::listener_commitLayerSurface(void* owner, void* data) {
g_pHyprRenderer->arrangeLayersForMonitor(POLDMON->ID);
}
- g_pHyprRenderer->arrangeLayersForMonitor(PMONITOR->ID);
+ if (layersurface->layerSurface->current.committed != 0) {
+ g_pHyprRenderer->arrangeLayersForMonitor(PMONITOR->ID);
- if (layersurface->layer != layersurface->layerSurface->current.layer) {
- PMONITOR->m_aLayerSurfaceLists[layersurface->layer].remove(layersurface);
- PMONITOR->m_aLayerSurfaceLists[layersurface->layerSurface->current.layer].push_back(layersurface);
- layersurface->layer = layersurface->layerSurface->current.layer;
- }
+ if (layersurface->layer != layersurface->layerSurface->current.layer) {
+ PMONITOR->m_aLayerSurfaceLists[layersurface->layer].remove(layersurface);
+ PMONITOR->m_aLayerSurfaceLists[layersurface->layerSurface->current.layer].push_back(layersurface);
+ layersurface->layer = layersurface->layerSurface->current.layer;
+ }
- g_pLayoutManager->getCurrentLayout()->recalculateMonitor(PMONITOR->ID);
+ g_pLayoutManager->getCurrentLayout()->recalculateMonitor(PMONITOR->ID);
+ }
layersurface->position = Vector2D(layersurface->geometry.x, layersurface->geometry.y);