From aef4eb2f021fa8a32685e019bc484559d27df488 Mon Sep 17 00:00:00 2001 From: UnknownShadow200 Date: Sat, 14 Nov 2020 00:26:29 +1100 Subject: [PATCH] Mobile: Fix speed/half-speed on-screen controls getting stuck down --- src/Screens.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Screens.c b/src/Screens.c index d6c10334a..e0cf60ce7 100644 --- a/src/Screens.c +++ b/src/Screens.c @@ -1921,8 +1921,9 @@ static struct Widget* touch_widgets[1 + TOUCH_MAX_BTNS] = { static void TouchScreen_OnscreenClick(void* screen, void* widget) { struct TouchScreen* s = (struct TouchScreen*)screen; - int i = Screen_Index(screen, widget); - Input_SetPressed(KeyBinds[s->onscreenDescs[i]->bind], true); + int i = Screen_Index(screen, widget); + int key = KeyBinds[s->onscreenDescs[i]->bind]; + Input_SetPressed(KeyBinds[s->onscreenDescs[i]->bind], !Input_Pressed[key]); } static void TouchScreen_ChatClick(void* s, void* w) { ChatScreen_OpenInput(&String_Empty); } @@ -1936,8 +1937,7 @@ static void TouchScreen_MoreClick(void* s, void* w) { TouchMoreScreen_Show(); } static void TouchScreen_BindClick(void* screen, void* widget) { struct TouchScreen* s = (struct TouchScreen*)screen; int i = Screen_Index(screen, widget) - ONSCREEN_MAX_BTNS; - int key = KeyBinds[s->descs[i].bind]; - Input_SetPressed(key, !Input_Pressed[key]); + Input_SetPressed(KeyBinds[s->descs[i].bind], true); } static const struct TouchButtonDesc onscreenDescs[8] = {