summaryrefslogtreecommitdiff
path: root/src/config/ConfigManager.cpp
diff options
context:
space:
mode:
authorMightyPlaza <123664421+MightyPlaza@users.noreply.github.com>2023-07-10 05:53:03 +0000
committerGitHub <noreply@github.com>2023-07-10 07:53:03 +0200
commit4cc0e6de90844dd340108f132db014ccf8d44ba7 (patch)
tree042086fd413d46ad1375bd39e08ed2d05912f517 /src/config/ConfigManager.cpp
parentd9f7f039e13b7d40c1d3e65809b65a96f0c68781 (diff)
monitor desc default workspace (#2673)
Diffstat (limited to 'src/config/ConfigManager.cpp')
-rw-r--r--src/config/ConfigManager.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp
index e6894865..7bdd3ae7 100644
--- a/src/config/ConfigManager.cpp
+++ b/src/config/ConfigManager.cpp
@@ -2183,8 +2183,10 @@ void CConfigManager::removePluginConfig(HANDLE handle) {
}
std::string CConfigManager::getDefaultWorkspaceFor(const std::string& name) {
- const auto IT = std::find_if(m_dWorkspaceRules.begin(), m_dWorkspaceRules.end(), [&](const auto& other) { return other.monitor == name && other.isDefault; });
- if (IT == m_dWorkspaceRules.end())
- return "";
- return IT->workspaceString;
+ for (auto other = m_dWorkspaceRules.begin(); other != m_dWorkspaceRules.end(); ++other) {
+ if (other->isDefault &&
+ (other->monitor == name || (other->monitor.substr(0, 5) == "desc:" && g_pCompositor->getMonitorFromDesc(other->monitor.substr(5))->szName == name)))
+ return other->workspaceString;
+ }
+ return "";
}