aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorvaxerski <[email protected]>2022-05-25 17:42:38 +0200
committervaxerski <[email protected]>2022-05-25 17:42:38 +0200
commit5635c6385f7bc99c415ef76b3c1b83a210073224 (patch)
tree57a61bb280c5211e71b6f377d26c47daa741a082
parentc8f0a74975178d05dde2d5dfdaa56315dbe28dd3 (diff)
downloadHyprland-5635c6385f7bc99c415ef76b3c1b83a210073224.tar.gz
Hyprland-5635c6385f7bc99c415ef76b3c1b83a210073224.zip
Invalidate layout on dynamic request to config
-rw-r--r--src/config/ConfigManager.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp
index 80f2b0d4..efeb8660 100644
--- a/src/config/ConfigManager.cpp
+++ b/src/config/ConfigManager.cpp
@@ -489,8 +489,10 @@ void CConfigManager::handleSource(const std::string& command, const std::string&
}
std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::string& VALUE, bool dynamic) {
- if (dynamic)
+ if (dynamic) {
parseError = "";
+ currentCategory = "";
+ }
if (COMMAND == "exec") {
if (isFirstLaunch) {
@@ -517,6 +519,11 @@ std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::
if (dynamic) {
std::string retval = parseError;
parseError = "";
+
+ // invalidate layouts jic
+ for (auto& m : g_pCompositor->m_lMonitors)
+ g_pLayoutManager->getCurrentLayout()->recalculateMonitor(m.ID);
+
return retval;
}