diff options
| author | trustable-code <krauter.simon@arcor.de> | 2019-12-26 12:26:05 +0100 |
|---|---|---|
| committer | trustable-code <krauter.simon@arcor.de> | 2019-12-26 12:26:05 +0100 |
| commit | cad7f42001f5f78bb262b4a26dac4e52ba799420 (patch) | |
| tree | 57a4f3848a6a4c985bf409aabe89452a41069c03 | |
| parent | 9ddaa817ee23b8beddab1081fcc41a194eb07107 (diff) | |
| download | NiGui-cad7f42001f5f78bb262b4a26dac4e52ba799420.tar.gz NiGui-cad7f42001f5f78bb262b4a26dac4e52ba799420.zip | |
Fix reception of ALT key press by adding WM_SYSKEYDOWN and WM_SYSKEYUP
Fixes #86
| -rwxr-xr-x | src/nigui/private/windows/platform_impl.nim | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/nigui/private/windows/platform_impl.nim b/src/nigui/private/windows/platform_impl.nim index 4799126..ab214b4 100755 --- a/src/nigui/private/windows/platform_impl.nim +++ b/src/nigui/private/windows/platform_impl.nim @@ -316,7 +316,7 @@ proc pWindowWndProc(hWnd: pointer, uMsg: int32, wParam, lParam: pointer): pointe event.window = window event.files = files window.handleDropFilesEvent(event) - of WM_KEYDOWN: + of WM_KEYDOWN, WM_SYSKEYDOWN: let window = cast[Window](pGetWindowLongPtr(hWnd, GWLP_USERDATA)) if window != nil and pHandleWMKEYDOWN(window, nil, wParam, lParam): return @@ -1128,15 +1128,15 @@ proc pCommonControlWndProc(hWnd: pointer, uMsg: int32, wParam, lParam: pointer): # Note: A WM_KEYDOWN is sent for every key, for some (mostly visual) keys WM_CHAR is sent in addition. # To discard a character in text input, WM_CHAR must return without calling the default window proc. - # Because we should not to trigger two events for one key press, WM_KEYDOWN must ignore all keys, + # Because we should not trigger two events for one key press, WM_KEYDOWN must ignore all keys, # which are handled by WM_CHAR. - of WM_KEYDOWN: + of WM_KEYDOWN, WM_SYSKEYDOWN: let control = cast[Control](pGetWindowLongPtr(hWnd, GWLP_USERDATA)) if control != nil and pHandleWMKEYDOWN(control.parentWindow, control, wParam, lParam): return PWndProcResult_False - of WM_KEYUP: + of WM_KEYUP, WM_SYSKEYUP: internalKeyUp(pWMParamsToKey(wParam, lParam)) # return nil # key is still inserted in text area |
