changeset 5099:528213e706cd draft

(svn r7170) -Fix: [sdl] Non-working console toggle for some keyboard layouts. Do not OR the backquote character but set it. Happened on Linux with Hungarian keyboard for example.
author Darkvater <Darkvater@openttd.org>
date Thu, 16 Nov 2006 16:50:54 +0000
parents 2baa11f5fc48
children 87dc67802186
files video/sdl_v.c
diffstat 1 files changed, 11 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/video/sdl_v.c
+++ b/video/sdl_v.c
@@ -272,21 +272,21 @@
 
 	// check scancode for BACKQUOTE key, because we want the key left of "1", not anything else (on non-US keyboards)
 #if defined(WIN32) || defined(__OS2__)
-	if (sym->scancode == 41) key |= WKC_BACKQUOTE;
+	if (sym->scancode == 41) key = WKC_BACKQUOTE;
 #elif defined(__APPLE__)
-	if (sym->scancode == 10) key |= WKC_BACKQUOTE;
+	if (sym->scancode == 10) key = WKC_BACKQUOTE;
 #elif defined(__MORPHOS__)
-	if (sym->scancode == 0)  key |= WKC_BACKQUOTE;  // yes, that key is code '0' under MorphOS :)
+	if (sym->scancode == 0)  key = WKC_BACKQUOTE;  // yes, that key is code '0' under MorphOS :)
 #elif defined(__BEOS__)
-	if (sym->scancode == 17)  key |= WKC_BACKQUOTE;
+	if (sym->scancode == 17) key = WKC_BACKQUOTE;
 #elif defined(__SVR4) && defined(__sun)
-	if (sym->scancode == 60) key |= WKC_BACKQUOTE;
-	if (sym->scancode == 49) key |= WKC_BACKSPACE;
+	if (sym->scancode == 60) key = WKC_BACKQUOTE;
+	if (sym->scancode == 49) key = WKC_BACKSPACE;
 #elif defined(__sgi__)
-	if (sym->scancode == 22) key |= WKC_BACKQUOTE;
+	if (sym->scancode == 22) key = WKC_BACKQUOTE;
 #else
-	if (sym->scancode == 41) key |= WKC_BACKQUOTE; // Linux console
-	if (sym->scancode == 49) key |= WKC_BACKQUOTE;
+	if (sym->scancode == 41) key = WKC_BACKQUOTE; // Linux console
+	if (sym->scancode == 49) key = WKC_BACKQUOTE;
 #endif
 
 	// META are the command keys on mac
@@ -296,8 +296,8 @@
 	if (sym->mod & KMOD_ALT)   key |= WKC_ALT;
 	// these two lines really help porting hotkey combos. Uncomment to use -- Bjarni
 #if 0
-	DEBUG(driver, 0) ("scancode character pressed %d", sym->scancode);
-	DEBUG(driver, 0) ("unicode character pressed %d", sym->unicode);
+	DEBUG(driver, 0) ("scancode character pressed %u", sym->scancode);
+	DEBUG(driver, 0) ("unicode character pressed %u", sym->unicode);
 #endif
 	return (key << 16) + sym->unicode;
 }