summaryrefslogtreecommitdiff
path: root/src/managers/animation/DesktopAnimationManager.hpp
diff options
context:
space:
mode:
authorVaxry <43317083+vaxerski@users.noreply.github.com>2025-08-28 11:20:29 +0200
committerGitHub <noreply@github.com>2025-08-28 11:20:29 +0200
commit81bf4eccba449bfe2b6adfb51260108aec710d4f (patch)
tree215c5b536cbcf1df9888081aadd3de16eb4b3ebe /src/managers/animation/DesktopAnimationManager.hpp
parent378e130f1426648d8d734049800128f9882805bf (diff)
input: Add fully configurable trackpad gestures (#11490)
Adds configurable trackpad gestures
Diffstat (limited to 'src/managers/animation/DesktopAnimationManager.hpp')
-rw-r--r--src/managers/animation/DesktopAnimationManager.hpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/managers/animation/DesktopAnimationManager.hpp b/src/managers/animation/DesktopAnimationManager.hpp
new file mode 100644
index 00000000..623fc5e9
--- /dev/null
+++ b/src/managers/animation/DesktopAnimationManager.hpp
@@ -0,0 +1,26 @@
+#pragma once
+
+#include "../../helpers/memory/Memory.hpp"
+#include "../../desktop/DesktopTypes.hpp"
+
+class CDesktopAnimationManager {
+ public:
+ enum eAnimationType : uint8_t {
+ ANIMATION_TYPE_IN = 0,
+ ANIMATION_TYPE_OUT,
+ };
+
+ void startAnimation(PHLWINDOW w, eAnimationType type, bool force = false);
+ void startAnimation(PHLLS ls, eAnimationType type, bool instant = false);
+ void startAnimation(PHLWORKSPACE ws, eAnimationType type, bool left = true, bool instant = false);
+
+ void setFullscreenFadeAnimation(PHLWORKSPACE ws, eAnimationType type);
+ void overrideFullscreenFadeAmount(PHLWORKSPACE ws, float fade, PHLWINDOW exclude = nullptr);
+
+ private:
+ void animationPopin(PHLWINDOW w, bool close = false, float minPerc = 0.f);
+ void animationSlide(PHLWINDOW w, std::string force = "", bool close = false);
+ void animationGnomed(PHLWINDOW w, bool close = false);
+};
+
+inline UP<CDesktopAnimationManager> g_pDesktopAnimationManager = makeUnique<CDesktopAnimationManager>();