Added an app server command to retrieve the color map. Made some adjustments to SystemPalette.cpp, implemented support for it in BPrivateScreen. Moved get_scs() a bit down to avoid a deadlock. Note that getting the colormap doesn't work due to port capacity limit (?)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12996 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Stefano Ceccherini
2005-06-07 21:32:24 +00:00
parent 62fbf00df8
commit 7475dcdf3a
8 changed files with 94 additions and 29 deletions
+23 -1
View File
@@ -56,6 +56,7 @@
#include "ServerBitmap.h"
#include "ServerPicture.h"
#include "ServerConfig.h"
#include "SystemPalette.h"
#include "WinBorder.h"
#include "LayerData.h"
#include "Utils.h"
@@ -2028,7 +2029,28 @@ printf("ServerApp %s: AS_SCREEN_GET_MODE\n", fSignature.String());
replylink.Flush();
break;
}
case AS_SCREEN_GET_COLORMAP:
{
STRACE(("ServerApp %s: AS_SCREEN_GET_COLORMAP\n", fSignature.String()));
screen_id id;
msg.Read<screen_id>(&id);
int32 replyport;
msg.Read<int32>(&replyport);
replylink.SetSendPort(replyport);
replylink.StartMessage(SERVER_TRUE);
// TODO: this doesn't seem to work.
//See also comment in BPrivateScreen::BPrivateScreen()
//replylink.Attach<color_map>(*SystemColorMap());
replylink.Flush();
break;
}
default:
{
printf("ServerApp %s received unhandled message code offset %s\n", fSignature.String(),