#include "glyphs.h"
#include <spice.h>
+#include <spice/enums.h>
#include <spice/macros.h>
#include <spice/qxl_dev.h>
spice_server_add_interface(server, &vdagent_sin.base);
}
+static void kbd_push_key(SpiceKbdInstance *sin, uint8_t frag)
+{
+ printf("KEYCODE %u\n", frag);
+}
+
+static uint8_t kbd_get_leds(SpiceKbdInstance *sin)
+{
+ return 0;
+}
+
+static SpiceKbdInterface keyboard_sif = {
+ .base.type = SPICE_INTERFACE_KEYBOARD ,
+ .base.description = "spiceterm keyboard device",
+ .base.major_version = SPICE_INTERFACE_KEYBOARD_MAJOR,
+ .base.minor_version = SPICE_INTERFACE_KEYBOARD_MINOR,
+ .push_scan_freg = kbd_push_key,
+ .get_leds = kbd_get_leds,
+};
+
+SpiceKbdInstance keyboard_sin = {
+ .base = {
+ .sif = &keyboard_sif.base,
+ },
+};
+
+void test_add_keyboard_interface(SpiceServer *server)
+{
+ spice_server_add_interface(server, &keyboard_sin.base);
+}
+
void test_set_simple_command_list(Test *test, int *simple_commands, int num_commands)
{
int i;
void test_set_command_list(Test *test, Command *command, int num_commands);
void test_add_display_interface(Test *test);
void test_add_agent_interface(SpiceServer *server); // TODO - Test *test
+void test_add_keyboard_interface(SpiceServer *server);
Test* test_new(SpiceCoreInterface* core);
uint32_t test_get_width(void);
test = test_new(core);
//spice_server_set_image_compression(server, SPICE_IMAGE_COMPRESS_OFF);
test_add_display_interface(test);
+
test_add_agent_interface(test->server);
+
+ test_add_keyboard_interface(test->server);
+
test_set_simple_command_list(test, simple_commands, COUNT(simple_commands));
+
//ping_timer = core->timer_add(pinger, NULL);
//core->timer_start(ping_timer, ping_ms);