summaryrefslogtreecommitdiff
path: root/src/plugins/PluginSystem.hpp
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-04-22 15:50:01 +0100
committerVaxry <vaxry@vaxry.net>2024-04-22 15:50:23 +0100
commite91513a5e8953cfbb69320d94e495ccf2d4d58f3 (patch)
treebf6d71e992e7b84b22e1c5c689169fb0393027be /src/plugins/PluginSystem.hpp
parent450343b7b83ba659f6a932092aff922cc1cddd2b (diff)
pluginapi: unregister callbacks on lost ptrs
Diffstat (limited to 'src/plugins/PluginSystem.hpp')
-rw-r--r--src/plugins/PluginSystem.hpp24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/plugins/PluginSystem.hpp b/src/plugins/PluginSystem.hpp
index c618489a..944434fa 100644
--- a/src/plugins/PluginSystem.hpp
+++ b/src/plugins/PluginSystem.hpp
@@ -8,22 +8,22 @@ class IHyprWindowDecoration;
class CPlugin {
public:
- std::string name = "";
- std::string description = "";
- std::string author = "";
- std::string version = "";
+ std::string name = "";
+ std::string description = "";
+ std::string author = "";
+ std::string version = "";
- std::string path = "";
+ std::string path = "";
- bool m_bLoadedWithConfig = false;
+ bool m_bLoadedWithConfig = false;
- HANDLE m_pHandle = nullptr;
+ HANDLE m_pHandle = nullptr;
- std::vector<IHyprLayout*> registeredLayouts;
- std::vector<IHyprWindowDecoration*> registeredDecorations;
- std::vector<std::pair<std::string, std::shared_ptr<HOOK_CALLBACK_FN>>> registeredCallbacks;
- std::vector<std::string> registeredDispatchers;
- std::vector<std::shared_ptr<SHyprCtlCommand>> registeredHyprctlCommands;
+ std::vector<IHyprLayout*> registeredLayouts;
+ std::vector<IHyprWindowDecoration*> registeredDecorations;
+ std::vector<std::pair<std::string, std::weak_ptr<HOOK_CALLBACK_FN>>> registeredCallbacks;
+ std::vector<std::string> registeredDispatchers;
+ std::vector<std::shared_ptr<SHyprCtlCommand>> registeredHyprctlCommands;
};
class CPluginSystem {