From 2f1fb7783df299c1b30be9e2cea574c721b58ca4 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sat, 4 Jun 2016 04:54:12 +0200 Subject: [PATCH] Add set_focused function callback to window --- ui/drivers/null/ui_null_window.c | 7 ++++++- ui/drivers/win32/ui_win32_window.c | 9 ++++++++- ui/drivers/win32/ui_win32_window.h | 2 ++ ui/ui_companion_driver.h | 1 + 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/ui/drivers/null/ui_null_window.c b/ui/drivers/null/ui_null_window.c index 02035afb7b..6ebe1b1ec5 100644 --- a/ui/drivers/null/ui_null_window.c +++ b/ui/drivers/null/ui_null_window.c @@ -25,6 +25,10 @@ void ui_window_null_destroy(void *data) { } +void ui_window_null_set_focused(void *data) +{ +} + static void ui_window_null_set_visible(void *data, bool set_visible) { @@ -32,6 +36,7 @@ static void ui_window_null_set_visible(void *data, const ui_window_t ui_window_null = { ui_window_null_destroy, + ui_window_null_set_focused, ui_window_null_set_visible, - "null", + "null" }; diff --git a/ui/drivers/win32/ui_win32_window.c b/ui/drivers/win32/ui_win32_window.c index 3f5899f37c..4339d5399f 100644 --- a/ui/drivers/win32/ui_win32_window.c +++ b/ui/drivers/win32/ui_win32_window.c @@ -54,6 +54,12 @@ void ui_window_win32_destroy(void *data) DestroyWindow(window->hwnd); } +void ui_window_win32_set_focused(void *data) +{ + ui_window_win32_t *window = (ui_window_win32_t*)data; + SetFocus(window->hwnd); +} + void ui_window_win32_set_visible(void *data, bool set_visible) { @@ -61,6 +67,7 @@ void ui_window_win32_set_visible(void *data, const ui_window_t ui_window_win32 = { ui_window_win32_destroy, + ui_window_win32_set_focused, ui_window_win32_set_visible, - "win32", + "win32" }; diff --git a/ui/drivers/win32/ui_win32_window.h b/ui/drivers/win32/ui_win32_window.h index ffd263413b..632e4d2ed2 100644 --- a/ui/drivers/win32/ui_win32_window.h +++ b/ui/drivers/win32/ui_win32_window.h @@ -40,6 +40,8 @@ typedef struct ui_window_win32 void ui_window_win32_set_visible(void *data, bool set_visible); +void ui_window_win32_set_focused(void *data); + void ui_window_win32_destroy(void *data); RETRO_END_DECLS diff --git a/ui/ui_companion_driver.h b/ui/ui_companion_driver.h index 77cc2a00ae..8a45f732a5 100644 --- a/ui/ui_companion_driver.h +++ b/ui/ui_companion_driver.h @@ -34,6 +34,7 @@ RETRO_BEGIN_DECLS typedef struct ui_window { void (*destroy)(void *data); + void (*set_focused)(void *data); void (*set_visible)(void *data, bool visible); const char *ident; } ui_window_t;