27#include <winpr/wtypes.h> 
   28#include <freerdp/freerdp.h> 
   29#include <freerdp/locale/keyboard.h> 
   32#include "sdl_types.hpp" 
   47  BOOL keyboard_sync_state();
 
   48  BOOL keyboard_focus_in();
 
   50  BOOL keyboard_handle_event(
const SDL_KeyboardEvent* ev);
 
   52  BOOL keyboard_grab(Uint32 windowID, 
bool enable);
 
   53  BOOL mouse_focus(Uint32 windowID);
 
   54  BOOL mouse_grab(Uint32 windowID, 
bool enable);
 
   56  static BOOL keyboard_set_indicators(rdpContext* context, UINT16 led_flags);
 
   57  static BOOL keyboard_set_ime_status(rdpContext* context, UINT16 imeId, UINT32 imeState,
 
   61  uint32_t prefToMask();
 
   62  static uint32_t prefKeyValue(
const std::string& key, uint32_t fallback = SDL_SCANCODE_UNKNOWN);
 
   65  static std::list<std::string> tokenize(
const std::string& data,
 
   66                                         const std::string& delimiter = 
",");
 
   67  static bool extract(
const std::string& token, uint32_t& key, uint32_t& value);
 
   69  UINT32 scancode_to_rdp(Uint32 scancode);
 
   76  uint32_t _hotkeyModmask; 
 
   77  uint32_t _hotkeyFullscreen;
 
   78  uint32_t _hotkeyResizable;
 
   80  uint32_t _hotkeyDisconnect;
 
   81  uint32_t _hotkeyMinimize;
 
   82  FREERDP_REMAP_TABLE* _remapTable = 
nullptr;