1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
|
*/
static int TranslateKey(UINT message, WPARAM wParam, LPARAM lParam,
unsigned char *output) {
BYTE keystate[256];
int scan, left_alt = 0, key_down, shift_state;
int r, i, code;
unsigned char * p = output;
HKL kbd_layout = GetKeyboardLayout(0);
static WORD keys[3];
static int compose_char = 0;
static WPARAM compose_key = 0;
|
>
|
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
|
*/
static int TranslateKey(UINT message, WPARAM wParam, LPARAM lParam,
unsigned char *output) {
BYTE keystate[256];
int scan, left_alt = 0, key_down, shift_state;
int r, i, code;
unsigned char * p = output;
static int alt_state = 0;
HKL kbd_layout = GetKeyboardLayout(0);
static WORD keys[3];
static int compose_char = 0;
static WPARAM compose_key = 0;
|
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
|
term_mouse (MB_PASTE, MA_RELEASE, 0, 0);
return 0;
}
if (left_alt && wParam == VK_F4 && cfg.alt_f4) {
return -1;
}
if (left_alt && wParam == VK_SPACE && cfg.alt_space) {
PostMessage(hwnd, WM_CHAR, ' ', 0);
SendMessage (hwnd, WM_SYSCOMMAND, SC_KEYMENU, 0);
return -1;
}
/* Control-Numlock for app-keypad mode switch */
if (wParam == VK_PAUSE && shift_state == 2) {
app_keypad_keys ^= 1;
|
>
|
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
|
term_mouse (MB_PASTE, MA_RELEASE, 0, 0);
return 0;
}
if (left_alt && wParam == VK_F4 && cfg.alt_f4) {
return -1;
}
if (left_alt && wParam == VK_SPACE && cfg.alt_space) {
alt_state = 0;
PostMessage(hwnd, WM_CHAR, ' ', 0);
SendMessage (hwnd, WM_SYSCOMMAND, SC_KEYMENU, 0);
return -1;
}
/* Control-Numlock for app-keypad mode switch */
if (wParam == VK_PAUSE && shift_state == 2) {
app_keypad_keys ^= 1;
|
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
|
return p-output;
}
}
/* ALT alone may or may not want to bring up the System menu */
if (wParam == VK_MENU) {
if (cfg.alt_only) {
static int alt_state = 0;
if (message == WM_SYSKEYDOWN)
alt_state = 1;
else if (message == WM_SYSKEYUP && alt_state)
PostMessage(hwnd, WM_CHAR, ' ', 0);
if (message == WM_SYSKEYUP)
alt_state = 0;
} else
|
<
|
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
|
return p-output;
}
}
/* ALT alone may or may not want to bring up the System menu */
if (wParam == VK_MENU) {
if (cfg.alt_only) {
if (message == WM_SYSKEYDOWN)
alt_state = 1;
else if (message == WM_SYSKEYUP && alt_state)
PostMessage(hwnd, WM_CHAR, ' ', 0);
if (message == WM_SYSKEYUP)
alt_state = 0;
} else
|