From 6eb3e6d297139b375faa4bb2a92cca163a0cfdc8 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Tue, 20 Mar 2012 14:13:17 -0700 Subject: [PATCH] Augmented keymap struct to support prerequisite keysyms. --- protocols/rdp/include/rdp_keymap.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/protocols/rdp/include/rdp_keymap.h b/protocols/rdp/include/rdp_keymap.h index 23c93679..754e00e7 100644 --- a/protocols/rdp/include/rdp_keymap.h +++ b/protocols/rdp/include/rdp_keymap.h @@ -38,9 +38,34 @@ #ifndef _GUAC_RDP_RDP_KEYMAP_H #define _GUAC_RDP_RDP_KEYMAP_H +/** + * Represents a keysym-to-scancode mapping for RDP, with extra information + * about the state of prerequisite keysyms. + */ typedef struct guac_rdp_keymap { + + /** + * The scancode this keysym maps to. + */ int scancode; + + /** + * Required RDP-specific flags + */ int flags; + + /** + * Null-terminated list of keysyms which must be down for this keysym + * to be properly typed. + */ + int* set_keysyms; + + /** + * Null-terminated list of keysyms which must be up for this keysym + * to be properly typed. + */ + int* clear_keysyms; + } guac_rdp_keymap; extern const guac_rdp_keymap guac_rdp_keysym_scancode[256][256];