[Spice-commits] server/inputs_channel.c spice-common
Marc-André Lureau
elmarco at kemper.freedesktop.org
Mon Aug 27 08:37:56 PDT 2012
server/inputs_channel.c | 10 ++++++++++
spice-common | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
New commits:
commit 560d8b013569877f67445449935d98507eb868b0
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Wed Aug 15 21:59:01 2012 +0300
inputs: handle SPICE_MSGC_INPUTS_KEY_SCANCODE
Handle SPICE_MSGC_INPUTS_KEY_SCANCODE message, allowing arbitrary
keyboard scancode sequence.
diff --git a/server/inputs_channel.c b/server/inputs_channel.c
index acfbcff..ada5a42 100644
--- a/server/inputs_channel.c
+++ b/server/inputs_channel.c
@@ -26,6 +26,7 @@
#include <errno.h>
#include <spice/macros.h>
#include <spice/vd_agent.h>
+#include <spice/protocol.h>
#include "common/marshaller.h"
#include "common/messages.h"
@@ -327,6 +328,14 @@ static int inputs_channel_handle_parsed(RedChannelClient *rcc, uint32_t size, ui
}
break;
}
+ case SPICE_MSGC_INPUTS_KEY_SCANCODE: {
+ uint32_t i;
+ uint8_t *code = (uint8_t *)buf;
+ for (i = 0; i < size; i++) {
+ kbd_push_scan(keyboard, code[i]);
+ }
+ break;
+ }
case SPICE_MSGC_INPUTS_MOUSE_MOTION: {
SpiceMsgcMouseMotion *mouse_motion = (SpiceMsgcMouseMotion *)buf;
@@ -618,6 +627,7 @@ void inputs_init(void)
client_cbs.migrate = inputs_migrate;
red_channel_register_client_cbs(&g_inputs_channel->base, &client_cbs);
+ red_channel_set_cap(&g_inputs_channel->base, SPICE_INPUTS_CAP_KEY_SCANCODE);
reds_register_channel(&g_inputs_channel->base);
if (!(key_modifiers_timer = core->timer_add(key_modifiers_sender, NULL))) {
diff --git a/spice-common b/spice-common
index 2c55c9d..86e286b 160000
--- a/spice-common
+++ b/spice-common
@@ -1 +1 @@
-Subproject commit 2c55c9d0c6a5752a16f5e22667196b461c85d4c8
+Subproject commit 86e286ba2003c206e700fd70ec67c1cf4ac8d8a6
More information about the Spice-commits
mailing list