Browse Source

Allow controller events to also interupt attract mode

pull/527/head
Anders Jenbo 6 years ago
parent
commit
faaddcfd28
  1. 60
      SourceX/DiabloUI/diabloui.cpp

60
SourceX/DiabloUI/diabloui.cpp

@ -189,6 +189,29 @@ void selhero_CatToName(char *in_buf, char *out_buf, int cnt)
void UiFocusNavigation(SDL_Event *event) void UiFocusNavigation(SDL_Event *event)
{ {
switch (event->type) {
case SDL_KEYUP:
case SDL_MOUSEBUTTONUP:
case SDL_MOUSEMOTION:
#ifndef USE_SDL1
case SDL_MOUSEWHEEL:
#endif
case SDL_JOYBUTTONUP:
case SDL_JOYAXISMOTION:
case SDL_JOYBALLMOTION:
case SDL_JOYHATMOTION:
#ifndef USE_SDL1
case SDL_FINGERUP:
case SDL_FINGERMOTION:
case SDL_CONTROLLERBUTTONUP:
case SDL_CONTROLLERAXISMOTION:
case SDL_WINDOWEVENT:
#endif
case SDL_SYSWMEVENT:
mainmenu_restart_repintro();
break;
}
switch (GetMenuAction(*event)) { switch (GetMenuAction(*event)) {
case MenuAction::SELECT: case MenuAction::SELECT:
UiFocusNavigationSelect(); UiFocusNavigationSelect();
@ -217,36 +240,6 @@ void UiFocusNavigation(SDL_Event *event)
break; break;
} }
switch (event->type) {
case SDL_KEYUP:
case SDL_MOUSEBUTTONUP:
case SDL_MOUSEMOTION:
#ifndef USE_SDL1
case SDL_MOUSEWHEEL:
#endif
case SDL_JOYBUTTONUP:
case SDL_JOYAXISMOTION:
case SDL_JOYBALLMOTION:
case SDL_JOYHATMOTION:
#ifndef USE_SDL1
case SDL_FINGERUP:
case SDL_FINGERMOTION:
case SDL_CONTROLLERBUTTONUP:
case SDL_CONTROLLERAXISMOTION:
#endif
case SDL_SYSWMEVENT:
mainmenu_restart_repintro();
break;
#ifndef USE_SDL1
case SDL_WINDOWEVENT:
if (event->window.event == SDL_WINDOWEVENT_SHOWN)
gbActive = true;
else if (event->window.event == SDL_WINDOWEVENT_HIDDEN)
gbActive = false;
break;
#endif
}
if (SDL_IsTextInputActive()) { if (SDL_IsTextInputActive()) {
switch (event->type) { switch (event->type) {
case SDL_KEYDOWN: { case SDL_KEYDOWN: {
@ -317,6 +310,13 @@ void UiHandleEvents(SDL_Event *event)
InitController(); InitController();
return; return;
} }
if (event->type == SDL_WINDOWEVENT) {
if (event->window.event == SDL_WINDOWEVENT_SHOWN)
gbActive = true;
else if (event->window.event == SDL_WINDOWEVENT_HIDDEN)
gbActive = false;
}
#endif #endif
} }

Loading…
Cancel
Save