From ea92cba414da8117cee2b268dadaa43ded183f43 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Sat, 6 Jul 2024 11:26:42 +0200 Subject: [PATCH] backends: set needsFrame for manually scheduled frames --- src/backend/Headless.cpp | 1 + src/backend/Wayland.cpp | 2 ++ src/backend/drm/DRM.cpp | 2 ++ 3 files changed, 5 insertions(+) diff --git a/src/backend/Headless.cpp b/src/backend/Headless.cpp index 9c023d5..c66c245 100644 --- a/src/backend/Headless.cpp +++ b/src/backend/Headless.cpp @@ -55,6 +55,7 @@ Hyprutils::Memory::CSharedPointer Aquamarine::CHeadlessO void Aquamarine::CHeadlessOutput::scheduleFrame() { // FIXME: limit fps to the committed framerate. + needsFrame = true; if (frameScheduled) return; diff --git a/src/backend/Wayland.cpp b/src/backend/Wayland.cpp index f395147..399d5a9 100644 --- a/src/backend/Wayland.cpp +++ b/src/backend/Wayland.cpp @@ -723,6 +723,8 @@ Hyprutils::Math::Vector2D Aquamarine::CWaylandOutput::cursorPlaneSize() { } void Aquamarine::CWaylandOutput::scheduleFrame() { + needsFrame = true; + if (frameScheduled) return; diff --git a/src/backend/drm/DRM.cpp b/src/backend/drm/DRM.cpp index 2bd8236..187b991 100644 --- a/src/backend/drm/DRM.cpp +++ b/src/backend/drm/DRM.cpp @@ -1304,6 +1304,8 @@ void Aquamarine::CDRMOutput::moveCursor(const Vector2D& coord) { } void Aquamarine::CDRMOutput::scheduleFrame() { + needsFrame = true; + if (connector->isPageFlipPending || connector->frameEventScheduled) return;