summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-07-30 15:32:38 +0200
committerVaxry <vaxry@vaxry.net>2024-07-30 15:32:42 +0200
commitf3a9f9ec4544225d6f340fa5f8a0dab9bf39157c (patch)
tree6bdf2fd4ca5e528daf958b4e5001449628576d07 /src
parent10e631053aaccdf31fab195454deab1154e21219 (diff)
pointer: use preMonitorCommit for resetting render state
in DS preRender is not called
Diffstat (limited to 'src')
-rw-r--r--src/helpers/Monitor.cpp2
-rw-r--r--src/managers/PointerManager.cpp2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp
index 635427d1..9d282090 100644
--- a/src/helpers/Monitor.cpp
+++ b/src/helpers/Monitor.cpp
@@ -863,6 +863,8 @@ bool CMonitorState::commit() {
if (!updateSwapchain())
return false;
+ EMIT_HOOK_EVENT("preMonitorCommit", m_pOwner);
+
ensureBufferPresent();
bool ret = m_pOwner->output->commit();
diff --git a/src/managers/PointerManager.cpp b/src/managers/PointerManager.cpp
index a405e2eb..8314e79a 100644
--- a/src/managers/PointerManager.cpp
+++ b/src/managers/PointerManager.cpp
@@ -25,7 +25,7 @@ CPointerManager::CPointerManager() {
nullptr);
});
- hooks.monitorPreRender = g_pHookSystem->hookDynamic("preRender", [this](void* self, SCallbackInfo& info, std::any data) {
+ hooks.monitorPreRender = g_pHookSystem->hookDynamic("preMonitorCommit", [this](void* self, SCallbackInfo& info, std::any data) {
auto state = stateFor(std::any_cast<CMonitor*>(data)->self.lock());
if (!state)
return;