more windows keyhandling follow-up

This commit is contained in:
nhmall
2021-11-23 17:14:10 -05:00
parent f9c66c9889
commit dc4b98ebdc

View File

@@ -302,7 +302,7 @@ struct keyboard_handling_t {
int (*pCheckInput)(HANDLE, INPUT_RECORD *, DWORD *, boolean, int (*pCheckInput)(HANDLE, INPUT_RECORD *, DWORD *, boolean,
int, int *, coord *); int, int *, coord *);
} keyboard_handling = { } keyboard_handling = {
0, no_keyhandling,
default_processkeystroke, default_processkeystroke,
default_kbhit, default_kbhit,
default_checkinput default_checkinput
@@ -2718,7 +2718,7 @@ void nethack_enter_consoletty(void)
/* This was overriding the handler that had already /* This was overriding the handler that had already
been loaded during options parsing. Needs to been loaded during options parsing. Needs to
check first */ check first */
if (!iflags.key_handling) { if (iflags.key_handling == no_keyhandling) {
if (primary_language == LANG_ENGLISH) { if (primary_language == LANG_ENGLISH) {
set_altkeyhandling("default"); set_altkeyhandling("default");
} else { } else {
@@ -2914,11 +2914,12 @@ static struct pad keypad[PADKEYS], numpad[PADKEYS];
static BYTE KeyState[256]; static BYTE KeyState[256];
static const char default_name[] = "default"; static const char default_name[] = "default";
const char *const legal_key_handling[] = { const char *const legal_key_handling[] = {
"none",
"default", "default",
"ray", "ray",
"340", "340",
}; };
enum windows_key_handling keyh[] = { default_keyhandling, ray_keyhandling, enum windows_key_handling keyh[] = { no_keyhandling, default_keyhandling, ray_keyhandling,
nh340_keyhandling }; nh340_keyhandling };
void set_altkeyhandling(const char *inName) void set_altkeyhandling(const char *inName)
@@ -2933,7 +2934,7 @@ void set_altkeyhandling(const char *inName)
else if (!strcmpi(inName, "nhdefkey.dll")) else if (!strcmpi(inName, "nhdefkey.dll"))
inName = legal_key_handling[default_keyhandling]; inName = legal_key_handling[default_keyhandling];
for (i = 0; i < SIZE(legal_key_handling); i++) { for (i = default_keyhandling; i < SIZE(legal_key_handling); i++) {
if (!strcmpi(inName, legal_key_handling[i])) { if (!strcmpi(inName, legal_key_handling[i])) {
iflags.key_handling = keyh[i]; iflags.key_handling = keyh[i];
if (keyboard_handling.pKeyHandlingName) { if (keyboard_handling.pKeyHandlingName) {
@@ -3001,7 +3002,7 @@ set_keyhandling_via_option(void)
tmpwin = create_nhwindow(NHW_MENU); tmpwin = create_nhwindow(NHW_MENU);
start_menu(tmpwin, MENU_BEHAVE_STANDARD); start_menu(tmpwin, MENU_BEHAVE_STANDARD);
any = cg.zeroany; any = cg.zeroany;
for (i = 0; i < SIZE(legal_key_handling); i++) { for (i = default_keyhandling; i < SIZE(legal_key_handling); i++) {
any.a_int = i + 1; any.a_int = i + 1;
add_menu(tmpwin, &nul_glyphinfo, &any, 'a' + i, add_menu(tmpwin, &nul_glyphinfo, &any, 'a' + i,
0, ATR_NONE, 0, ATR_NONE,