diff options
Diffstat (limited to 'src/helpers/Monitor.cpp')
| -rw-r--r-- | src/helpers/Monitor.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index f2dc2e8c..44ac1dcf 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -21,6 +21,7 @@ #include "../render/Renderer.hpp" #include "../managers/EventManager.hpp" #include "../managers/LayoutManager.hpp" +#include "../managers/AnimationManager.hpp" #include "../managers/input/InputManager.hpp" #include "sync/SyncTimeline.hpp" #include "time/Time.hpp" @@ -47,7 +48,8 @@ static int ratHandler(void* data) { } CMonitor::CMonitor(SP<Aquamarine::IOutput> output_) : m_state(this), m_output(output_) { - ; + g_pAnimationManager->createAnimation(0.f, m_specialFade, g_pConfigManager->getAnimationPropertyConfig("specialWorkspaceIn"), AVARDAMAGE_NONE); + m_specialFade->setUpdateCallback([this](auto) { g_pHyprRenderer->damageMonitor(m_self.lock()); }); } CMonitor::~CMonitor() { @@ -1222,6 +1224,9 @@ void CMonitor::setSpecialWorkspace(const PHLWORKSPACE& pWorkspace) { if (m_activeSpecialWorkspace == pWorkspace) return; + m_specialFade->setConfig(g_pConfigManager->getAnimationPropertyConfig(pWorkspace ? "specialWorkspaceIn" : "specialWorkspaceOut")); + *m_specialFade = pWorkspace ? 1.F : 0.F; + g_pHyprRenderer->damageMonitor(m_self.lock()); if (!pWorkspace) { |
