summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/input/input_sdlcommon.cpp
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2016-04-25 17:09:47 +0200
committer Miodrag Milanovic <mmicko@gmail.com>2016-04-25 17:09:47 +0200
commit5e831f6506ee06f8c30cb113551ee0fec53804db (patch)
tree13ac118e57f0e2f98953b6b8ba4858977dc0dad5 /src/osd/modules/input/input_sdlcommon.cpp
parent3e1af09ef5888a2dd328b0c1db94151ee4491fcb (diff)
Temp revert of Brad changes (nw)
Diffstat (limited to 'src/osd/modules/input/input_sdlcommon.cpp')
-rw-r--r--src/osd/modules/input/input_sdlcommon.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/osd/modules/input/input_sdlcommon.cpp b/src/osd/modules/input/input_sdlcommon.cpp
index 82c470534b2..5cc6c6f901d 100644
--- a/src/osd/modules/input/input_sdlcommon.cpp
+++ b/src/osd/modules/input/input_sdlcommon.cpp
@@ -35,11 +35,12 @@
#define GET_WINDOW(ev) window_from_id((ev)->windowID)
//#define GET_WINDOW(ev) ((ev)->windowID)
-static inline std::shared_ptr<sdl_window_info> window_from_id(Uint32 windowID)
+static inline sdl_window_info * window_from_id(Uint32 windowID)
{
+ sdl_window_info *w;
SDL_Window *window = SDL_GetWindowFromID(windowID);
- for (auto w : sdl_window_list)
+ for (w = sdl_window_list; w != NULL; w = w->m_next)
{
//printf("w->window_id: %d\n", w->window_id);
if (w->platform_window<SDL_Window*>() == window)
@@ -71,7 +72,7 @@ void sdl_event_manager::process_events(running_machine &machine)
void sdl_event_manager::process_window_event(running_machine &machine, SDL_Event &sdlevent)
{
- std::shared_ptr<sdl_window_info> window = GET_WINDOW(&sdlevent.window);
+ sdl_window_info *window = GET_WINDOW(&sdlevent.window);
if (window == nullptr)
return;
@@ -272,9 +273,7 @@ void sdl_osd_interface::poll_inputs(running_machine &machine)
void sdl_osd_interface::release_keys()
{
- auto keybd = dynamic_cast<input_module_base*>(m_keyboard_input);
- if (keybd != nullptr)
- keybd->devicelist()->reset_devices();
+ downcast<input_module_base*>(m_keyboard_input)->devicelist()->reset_devices();
}
bool sdl_osd_interface::should_hide_mouse()