From 4770d57a094dcbb64f4537636b7c1c5ea0c502d9 Mon Sep 17 00:00:00 2001 From: Michael Kaufmann Date: Thu, 3 Nov 2005 09:51:42 +0000 Subject: [PATCH] Scroll bar: Keep the caret blinking during scroll operations (only handle WM_SYSTIMER messages that belong to the scroll bar). --- dlls/user/scroll.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/dlls/user/scroll.c b/dlls/user/scroll.c index 3d0fbbcd5e5..895ae4e93fc 100644 --- a/dlls/user/scroll.c +++ b/dlls/user/scroll.c @@ -1085,19 +1085,18 @@ void SCROLL_TrackScrollBar( HWND hwnd, INT scrollbar, POINT pt ) { if (!GetMessageW( &msg, 0, 0, 0 )) break; if (CallMsgFilterW( &msg, MSGF_SCROLLBAR )) continue; - switch(msg.message) + if (msg.message == WM_LBUTTONUP || + msg.message == WM_MOUSEMOVE || + (msg.message == WM_SYSTIMER && msg.wParam == SCROLL_TIMER)) { - case WM_LBUTTONUP: - case WM_MOUSEMOVE: - case WM_SYSTIMER: pt.x = (short)LOWORD(msg.lParam) + xoffset; pt.y = (short)HIWORD(msg.lParam) + yoffset; SCROLL_HandleScrollEvent( hwnd, scrollbar, msg.message, pt ); - break; - default: + } + else + { TranslateMessage( &msg ); DispatchMessageW( &msg ); - break; } if (!IsWindow( hwnd )) {