diff options
-rw-r--r-- | ui/syntax/syntaxedit.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/ui/syntax/syntaxedit.c b/ui/syntax/syntaxedit.c index 921cc7b6..c04c1f8a 100644 --- a/ui/syntax/syntaxedit.c +++ b/ui/syntax/syntaxedit.c @@ -346,15 +346,15 @@ static LRESULT CALLBACK child_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lP case WM_PASTE: SendMessage(hWnd, EM_PASTESPECIAL, CF_TEXT, 0); return 0; - case WM_KEYDOWN: - if (!(GetKeyState(VK_CONTROL) & 0x8000)) - break; - switch (LOWORD(wParam)) { - case 'V': + case WM_KEYDOWN: { + WORD key = LOWORD(wParam); + if ((key == 'V' && GetKeyState(VK_CONTROL) < 0) || + (key == VK_INSERT && GetKeyState(VK_SHIFT) < 0)) { SendMessage(hWnd, EM_PASTESPECIAL, CF_TEXT, 0); return 0; } break; + } case WM_CONTEXTMENU: context_menu(hWnd, LOWORD(lParam), HIWORD(lParam)); return 0; |