summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-02-28 15:59:45 +0000
committerVaxry <vaxry@vaxry.net>2024-02-28 15:59:45 +0000
commit29cdd7de1f8d99462915540569fbe54f10f609f4 (patch)
treec98b2b5ee316386e2986d20d629183813723b631 /src
parent4bc669f9331bb66ab30bd705d09f1239bc3e83ed (diff)
layers: minor fixes for new animations
Diffstat (limited to 'src')
-rw-r--r--src/events/Layers.cpp13
-rw-r--r--src/helpers/WLClasses.cpp2
2 files changed, 14 insertions, 1 deletions
diff --git a/src/events/Layers.cpp b/src/events/Layers.cpp
index 1b76c536..5e9de8b4 100644
--- a/src/events/Layers.cpp
+++ b/src/events/Layers.cpp
@@ -325,6 +325,19 @@ void Events::listener_commitLayerSurface(void* owner, void* data) {
}
}
+ if (layersurface->realPosition.goalv() != layersurface->geometry.pos()) {
+ if (layersurface->realPosition.isBeingAnimated())
+ layersurface->realPosition = layersurface->geometry.pos();
+ else
+ layersurface->realPosition.setValueAndWarp(layersurface->geometry.pos());
+ }
+ if (layersurface->realSize.goalv() != layersurface->geometry.size()) {
+ if (layersurface->realSize.isBeingAnimated())
+ layersurface->realSize = layersurface->geometry.size();
+ else
+ layersurface->realSize.setValueAndWarp(layersurface->geometry.size());
+ }
+
if (layersurface->layerSurface->current.keyboard_interactive &&
(!g_pCompositor->m_sSeat.mouse || !g_pCompositor->m_sSeat.mouse->currentConstraint) // don't focus if constrained
&& !layersurface->keyboardExclusive && layersurface->mapped) {
diff --git a/src/helpers/WLClasses.cpp b/src/helpers/WLClasses.cpp
index 3abcf0a5..43bba7c5 100644
--- a/src/helpers/WLClasses.cpp
+++ b/src/helpers/WLClasses.cpp
@@ -54,7 +54,7 @@ void SLayerSurface::applyRules() {
xray = configStringToInt(vars[1]);
} catch (...) {}
} else if (rule.rule.starts_with("animation")) {
- CVarList vars{rule.rule, 0, 's'};
+ CVarList vars{rule.rule, 2, 's'};
animationStyle = vars[1];
}
}