mirror of https://github.com/neutrinolabs/xrdp
libxrdp: started adding new(color) cursor support
This commit is contained in:
parent
cf5646c472
commit
a47a3cee1a
|
@ -1,7 +1,7 @@
|
||||||
/**
|
/**
|
||||||
* xrdp: A Remote Desktop Protocol server.
|
* xrdp: A Remote Desktop Protocol server.
|
||||||
*
|
*
|
||||||
* Copyright (C) Jay Sorg 2004-2012
|
* Copyright (C) Jay Sorg 2004-2013
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
|
@ -87,6 +87,7 @@ struct xrdp_client_info
|
||||||
char jpeg_prop[64];
|
char jpeg_prop[64];
|
||||||
int v3_codec_id;
|
int v3_codec_id;
|
||||||
int use_bulk_comp;
|
int use_bulk_comp;
|
||||||
|
int pointer_flags; /* 0 color, 1 new */
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/**
|
/**
|
||||||
* xrdp: A Remote Desktop Protocol server.
|
* xrdp: A Remote Desktop Protocol server.
|
||||||
*
|
*
|
||||||
* Copyright (C) Jay Sorg 2004-2012
|
* Copyright (C) Jay Sorg 2004-2013
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
|
@ -958,11 +958,26 @@ xrdp_process_capset_pointercache(struct xrdp_rdp *self, struct stream *s,
|
||||||
int len)
|
int len)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
int colorPointerFlag;
|
||||||
|
|
||||||
in_uint8s(s, 2); /* color pointer */
|
in_uint16_le(s, colorPointerFlag);
|
||||||
|
self->client_info.pointer_flags = colorPointerFlag;
|
||||||
in_uint16_le(s, i);
|
in_uint16_le(s, i);
|
||||||
i = MIN(i, 32);
|
i = MIN(i, 32);
|
||||||
self->client_info.pointer_cache_entries = i;
|
self->client_info.pointer_cache_entries = i;
|
||||||
|
if (colorPointerFlag & 1)
|
||||||
|
{
|
||||||
|
g_writeln("xrdp_process_capset_pointercache: client supports "
|
||||||
|
"new(color) cursor");
|
||||||
|
in_uint16_le(s, i);
|
||||||
|
i = MIN(i, 32);
|
||||||
|
self->client_info.pointer_cache_entries = i;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
g_writeln("xrdp_process_capset_pointercache: client does not support "
|
||||||
|
"new(color) cursor");
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue