mirror of https://github.com/OpenTTD/OpenTTD
(svn r1171) Fix: Console hotkey works again on keyboards where this key is a deadkey.
parent
18dd7ebae2
commit
8c6c4e5262
12
win32.c
12
win32.c
|
@ -293,13 +293,6 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP
|
|||
return 0;
|
||||
}
|
||||
|
||||
case WM_CHAR: {
|
||||
uint16 scancode = (( lParam & 0xFF0000 ) >> 16 );
|
||||
if( scancode == 41 )
|
||||
_pressed_key = WKC_BACKQUOTE << 16;
|
||||
} break;
|
||||
|
||||
|
||||
case WM_KEYDOWN: {
|
||||
// this is the rewritten ascii input function
|
||||
// it disables windows deadkey handling --> more linux like :D
|
||||
|
@ -307,12 +300,17 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP
|
|||
int r = 0;
|
||||
byte ks[256];
|
||||
unsigned int scan = 0;
|
||||
uint16 scancode = (( lParam & 0xFF0000 ) >> 16 );
|
||||
|
||||
GetKeyboardState(ks);
|
||||
r = ToAscii(wParam, scan, ks, &w, 0);
|
||||
if (r == 0) w = 0; // no translation was possible
|
||||
|
||||
_pressed_key = w | MapWindowsKey(wParam) << 16;
|
||||
|
||||
if( scancode == 41 )
|
||||
_pressed_key = w | WKC_BACKQUOTE << 16;
|
||||
|
||||
if ((_pressed_key>>16) == ('D' | WKC_CTRL) && !_wnd.fullscreen) {
|
||||
_double_size ^= 1;
|
||||
_wnd.double_size = _double_size;
|
||||
|
|
Loading…
Reference in New Issue