From d4bcf5f6282baad09d8c6bf3bb0b1088eeb7804c Mon Sep 17 00:00:00 2001 From: Alex Kompel Date: Thu, 4 Jun 2015 21:18:19 -0700 Subject: [PATCH] win32_gui: use menu keys (<, >, ^, |) to scroll text windows --- win/win32/mhmenu.c | 17 +++++++++++++++++ win/win32/mhtext.c | 17 +++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/win/win32/mhmenu.c b/win/win32/mhmenu.c index 07a881726..45b3efcf4 100644 --- a/win/win32/mhmenu.c +++ b/win/win32/mhmenu.c @@ -1650,6 +1650,23 @@ NHMenuTextWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) } break; + case WM_CHAR: + switch(wParam) { + case MENU_FIRST_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_TOP, 0); + return 0; + case MENU_LAST_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_BOTTOM, 0); + return 0; + case MENU_NEXT_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_PAGEDOWN, 0); + return 0; + case MENU_PREVIOUS_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_PAGEUP, 0); + return 0; + } + break; + /* edit control needs to know nothing of its focus */ case WM_SETFOCUS: HideCaret(hWnd); diff --git a/win/win32/mhtext.c b/win/win32/mhtext.c index a009716c0..4dd7a1059 100644 --- a/win/win32/mhtext.c +++ b/win/win32/mhtext.c @@ -305,6 +305,23 @@ NHEditHookWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) } break; + case WM_CHAR: + switch(wParam) { + case MENU_FIRST_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_TOP, 0); + return 0; + case MENU_LAST_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_BOTTOM, 0); + return 0; + case MENU_NEXT_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_PAGEDOWN, 0); + return 0; + case MENU_PREVIOUS_PAGE: + SendMessage(hWnd, EM_SCROLL, SB_PAGEUP, 0); + return 0; + } + break; + /* edit control needs to know nothing of focus. We will take care of it * for it */ case WM_SETFOCUS: -- 2.40.0