diff options
Diffstat (limited to 'cast/standalone_receiver/sdl_glue.h')
-rw-r--r-- | cast/standalone_receiver/sdl_glue.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cast/standalone_receiver/sdl_glue.h b/cast/standalone_receiver/sdl_glue.h index 59a3a020..7e136074 100644 --- a/cast/standalone_receiver/sdl_glue.h +++ b/cast/standalone_receiver/sdl_glue.h @@ -7,14 +7,16 @@ #include <stdint.h> -#include <functional> -#include <memory> - #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" #include <SDL2/SDL.h> #pragma GCC diagnostic pop +#include <functional> +#include <memory> +#include <utility> +#include <vector> + #include "util/alarm.h" namespace openscreen { @@ -66,11 +68,15 @@ class SDLEventLoopProcessor { std::function<void()> quit_callback); ~SDLEventLoopProcessor(); + using KeyboardEventCallback = std::function<void(const SDL_KeyboardEvent&)>; + void RegisterForKeyboardEvent(KeyboardEventCallback cb); + private: void ProcessPendingEvents(); Alarm alarm_; std::function<void()> quit_callback_; + std::vector<KeyboardEventCallback> keyboard_callbacks_; }; } // namespace cast |