summaryrefslogtreecommitdiff
path: root/src/desktop/Workspace.cpp
diff options
context:
space:
mode:
authorRoberto Previdi <hariseldon78@gmail.com>2025-02-15 15:01:52 +0100
committerGitHub <noreply@github.com>2025-02-15 15:01:52 +0100
commit410da2e46fc44d93196cd902a070391a416cff01 (patch)
treec66effd5facc0a7e30efad024ba49e952b9046c2 /src/desktop/Workspace.cpp
parent7a6fde8414ae200759ac41569f189ac5e1ba0fbb (diff)
workspaces: update persistence on workspace rename (#9368)
Diffstat (limited to 'src/desktop/Workspace.cpp')
-rw-r--r--src/desktop/Workspace.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/desktop/Workspace.cpp b/src/desktop/Workspace.cpp
index f2c22195..322c4e33 100644
--- a/src/desktop/Workspace.cpp
+++ b/src/desktop/Workspace.cpp
@@ -648,6 +648,12 @@ void CWorkspace::rename(const std::string& name) {
Debug::log(LOG, "CWorkspace::rename: Renaming workspace {} to '{}'", m_iID, name);
m_szName = name;
+ const auto WORKSPACERULE = g_pConfigManager->getWorkspaceRuleFor(m_pSelf.lock());
+ m_bPersistent = WORKSPACERULE.isPersistent;
+
+ if (WORKSPACERULE.isPersistent)
+ g_pCompositor->ensurePersistentWorkspacesPresent(std::vector<SWorkspaceRule>{WORKSPACERULE}, m_pSelf.lock());
+
g_pEventManager->postEvent({"renameworkspace", std::to_string(m_iID) + "," + m_szName});
}