FreeRDP
xf_keyboard.h
1 
20 #ifndef FREERDP_CLIENT_X11_XF_KEYBOARD_H
21 #define FREERDP_CLIENT_X11_XF_KEYBOARD_H
22 
23 #include <freerdp/locale/keyboard.h>
24 
25 #include "xf_client.h"
26 #include "xfreerdp.h"
27 
28 typedef struct
29 {
30  BOOL Shift;
31  BOOL LeftShift;
32  BOOL RightShift;
33  BOOL Alt;
34  BOOL LeftAlt;
35  BOOL RightAlt;
36  BOOL Ctrl;
37  BOOL LeftCtrl;
38  BOOL RightCtrl;
39  BOOL Super;
40  BOOL LeftSuper;
41  BOOL RightSuper;
43 
44 BOOL xf_keyboard_init(xfContext* xfc);
45 void xf_keyboard_free(xfContext* xfc);
46 
47 void xf_keyboard_key_press(xfContext* xfc, const XKeyEvent* event, KeySym keysym);
48 void xf_keyboard_key_release(xfContext* xfc, const XKeyEvent* event, KeySym keysym);
49 
50 void xf_keyboard_release_all_keypress(xfContext* xfc);
51 BOOL xf_keyboard_key_pressed(xfContext* xfc, KeySym keysym);
52 
53 int xf_keyboard_read_keyboard_state(xfContext* xfc);
54 BOOL xf_keyboard_get_key_state(xfContext* xfc, int state, int keysym);
55 UINT32 xf_keyboard_get_toggle_keys_state(xfContext* xfc);
56 void xf_keyboard_focus_in(xfContext* xfc);
57 BOOL xf_keyboard_handle_special_keys(xfContext* xfc, KeySym keysym);
58 void xf_keyboard_handle_special_keys_release(xfContext* xfc, KeySym keysym);
59 BOOL xf_keyboard_set_indicators(rdpContext* context, UINT16 led_flags);
60 BOOL xf_keyboard_set_ime_status(rdpContext* context, UINT16 imeId, UINT32 imeState,
61  UINT32 imeConvMode);
62 
63 BOOL xf_ungrab(xfContext* xfc);
64 
65 #endif /* FREERDP_CLIENT_X11_XF_KEYBOARD_H */