diff options
| author | outfoxxed <outfoxxed@outfoxxed.me> | 2023-05-01 07:10:53 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-01 15:10:53 +0100 |
| commit | 3a631e40db78f98ab82bb600d7cf9d7428bc2b02 (patch) | |
| tree | 9d43696e1fcd6ed24110513c67a600c001638558 /src/config/ConfigManager.hpp | |
| parent | dc469dc4c18732b534c3d9f46678a6e53379abd6 (diff) | |
Declarative plugin management (#2180)
* Declarative plugin management
Allow declaring `plugin` entries in the hyprland configuration.
Plugins will be loaded if an entry is added and unloaded if that entry
is removed.
* Replace pointers with copying in updateconfigPlugins
* Include which plugin was declared twice in error
Diffstat (limited to 'src/config/ConfigManager.hpp')
| -rw-r--r-- | src/config/ConfigManager.hpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/config/ConfigManager.hpp b/src/config/ConfigManager.hpp index cee6075e..0d4d6cd7 100644 --- a/src/config/ConfigManager.hpp +++ b/src/config/ConfigManager.hpp @@ -182,6 +182,8 @@ class CConfigManager { void addExecRule(const SExecRequestedRule&); + void handlePluginLoads(); + std::string configCurrentPath; private: @@ -203,6 +205,7 @@ class CConfigManager { std::vector<SExecRequestedRule> execRequestedRules; // rules requested with exec, e.g. [workspace 2] kitty + std::vector<std::string> m_vDeclaredPlugins; std::unordered_map<HANDLE, std::unique_ptr<std::unordered_map<std::string, SConfigValue>>> pluginConfigs; // stores plugin configs bool isFirstLaunch = true; // For exec-once @@ -250,6 +253,7 @@ class CConfigManager { void handleBlurLS(const std::string&, const std::string&); void handleBindWS(const std::string&, const std::string&); void handleEnv(const std::string&, const std::string&); + void handlePlugin(const std::string&, const std::string&); }; inline std::unique_ptr<CConfigManager> g_pConfigManager; |
