diff options
| author | Jordan Woyak <jordan.woyak@gmail.com> | 2025-05-03 02:48:44 -0500 |
|---|---|---|
| committer | Jordan Woyak <jordan.woyak@gmail.com> | 2025-11-02 17:30:43 -0600 |
| commit | f289b06e0db8bba6a3491d6e3cf0c2dd1b7a29fa (patch) | |
| tree | 4e95a04a656f571e4dc0a7024348d22c5a1c662e /Source/Core/VideoCommon/VideoConfig.cpp | |
| parent | 9c28f19e56307ac4de750ffa6ffb8c4e15e55def (diff) | |
Common: Make HookableEvent use non-static data.
Co-authored-by: Dentomologist <dentomologist@gmail.com>
Diffstat (limited to 'Source/Core/VideoCommon/VideoConfig.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/VideoConfig.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/Source/Core/VideoCommon/VideoConfig.cpp b/Source/Core/VideoCommon/VideoConfig.cpp index 0214dab9dd..63d061e684 100644 --- a/Source/Core/VideoCommon/VideoConfig.cpp +++ b/Source/Core/VideoCommon/VideoConfig.cpp @@ -38,6 +38,7 @@ VideoConfig g_ActiveConfig; BackendInfo g_backend_info; static std::optional<CPUThreadConfigCallback::ConfigChangedCallbackID> s_config_changed_callback_id = std::nullopt; +static Common::EventHook s_check_config_event; static bool IsVSyncActive(bool enabled) { @@ -218,8 +219,16 @@ void VideoConfig::VerifyValidity() } } +void VideoConfig::Init() +{ + s_check_config_event = GetVideoEvents().after_frame_event.Register( + [](Core::System&) { CheckForConfigChanges(); }, "CheckForConfigChanges"); +} + void VideoConfig::Shutdown() { + s_check_config_event.reset(); + if (!s_config_changed_callback_id.has_value()) return; @@ -390,10 +399,7 @@ void CheckForConfigChanges() } // Notify all listeners - ConfigChangedEvent::Trigger(changed_bits); + GetVideoEvents().config_changed_event.Trigger(changed_bits); // TODO: Move everything else to the ConfigChanged event } - -static Common::EventHook s_check_config_event = AfterFrameEvent::Register( - [](Core::System&) { CheckForConfigChanges(); }, "CheckForConfigChanges"); |
