From 51ed2a1a304361ee33c76b6bd0fc038ebb88f661 Mon Sep 17 00:00:00 2001 From: Ian C Date: Mon, 9 Jan 2023 17:57:45 +0000 Subject: Fixed removal and setting of sticky shift for GUI input routines --- source/gui.c | 12 ++++++++++++ source/main.c | 3 +++ 2 files changed, 15 insertions(+) diff --git a/source/gui.c b/source/gui.c index 5e31ac5..57acbe0 100644 --- a/source/gui.c +++ b/source/gui.c @@ -820,6 +820,9 @@ int GUI_InputName(const char *prompt, const char *ext, char name[], int maxlen) name[0] = 0; + SK_SetSticky(SK_SHIFT, FALSE); + SK_SetSticky(SK_SYMBOL, FALSE); + while(!done) { FB_StartFrame(&upper, NULL); @@ -897,6 +900,9 @@ int GUI_InputName(const char *prompt, const char *ext, char name[], int maxlen) } } + SK_SetSticky(SK_SHIFT,DSSPEC_Config[DSSPEC_STICKY_SHIFT]); + SK_SetSticky(SK_SYMBOL,DSSPEC_Config[DSSPEC_STICKY_SHIFT]); + return accept; } @@ -927,6 +933,9 @@ int GUI_Input(const char *prompt, char text[], int maxlen) text[0] = 0; + SK_SetSticky(SK_SHIFT, FALSE); + SK_SetSticky(SK_SYMBOL, FALSE); + while(!done) { FB_StartFrame(&upper, NULL); @@ -1006,6 +1015,9 @@ int GUI_Input(const char *prompt, char text[], int maxlen) } } + SK_SetSticky(SK_SHIFT,DSSPEC_Config[DSSPEC_STICKY_SHIFT]); + SK_SetSticky(SK_SYMBOL,DSSPEC_Config[DSSPEC_STICKY_SHIFT]); + return accept; } diff --git a/source/main.c b/source/main.c index 30e9359..af91d19 100644 --- a/source/main.c +++ b/source/main.c @@ -349,6 +349,9 @@ int main(int argc, char *argv[]) SK_SetSticky (SK_SHIFT, DSSPEC_Config[DSSPEC_STICKY_SHIFT]); + SK_SetSticky + (SK_SYMBOL, + DSSPEC_Config[DSSPEC_STICKY_SHIFT]); SPECReconfigure(); break; -- cgit v1.2.3