summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Compositor.cpp')
-rw-r--r--src/Compositor.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index 4d0a917b..3b8fb0a5 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -1727,6 +1727,14 @@ WORKSPACEID CCompositor::getNextAvailableNamedWorkspace() {
lowest = w->m_id;
}
+ // Give priority to persistent workspaces to avoid any conflicts between them.
+ for (auto const& rule : g_pConfigManager->getAllWorkspaceRules()) {
+ if (!rule.isPersistent)
+ continue;
+ if (rule.workspaceId < -1 && rule.workspaceId < lowest)
+ lowest = rule.workspaceId;
+ }
+
return lowest - 1;
}