From 68b599fbccfb5353e1418f601153a299eeda9fe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Fri, 14 Apr 2006 10:50:47 +0000 Subject: [PATCH] reusing the old settings message is a good idea (thanks Axel!) we simply remove color data before storing the workspace color git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17130 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/Desktop.cpp | 3 +++ src/servers/app/Workspace.cpp | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/servers/app/Desktop.cpp b/src/servers/app/Desktop.cpp index 86b3240197..c11c4c92af 100644 --- a/src/servers/app/Desktop.cpp +++ b/src/servers/app/Desktop.cpp @@ -663,8 +663,11 @@ Desktop::RedrawBackground() void Desktop::StoreWorkspaceConfiguration(int32 index) { + const BMessage *oldSettings = fSettings->WorkspacesMessage(index); // store settings BMessage settings; + if (oldSettings) + settings = *oldSettings; fWorkspaces[index].StoreConfiguration(settings); fSettings->SetWorkspacesMessage(index, settings); fSettings->Save(kWorkspacesSettings); diff --git a/src/servers/app/Workspace.cpp b/src/servers/app/Workspace.cpp index c67e9ef1fc..99d0de1221 100644 --- a/src/servers/app/Workspace.cpp +++ b/src/servers/app/Workspace.cpp @@ -54,12 +54,13 @@ Workspace::Private::RestoreConfiguration(const BMessage& settings) /*! - \brief Store the workspace configuration in an empty message + \brief Store the workspace configuration in a message */ void Workspace::Private::StoreConfiguration(BMessage& settings) { rgb_color color = fColor.GetColor32(); + settings.RemoveName("color"); settings.AddInt32("color", *(int32 *)&color); }