X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/187c183c6a57140886bac1c93cb42b93aa5f4e29..4a46a5df879c4f820d0a0a435b34c7d5e4793991:/src/univ/scrolbar.cpp diff --git a/src/univ/scrolbar.cpp b/src/univ/scrolbar.cpp index 4445239eb9..e2f146b7d4 100644 --- a/src/univ/scrolbar.cpp +++ b/src/univ/scrolbar.cpp @@ -300,6 +300,12 @@ wxScrollArrows::Arrow wxScrollBar::HitTest(const wxPoint& pt) const // ---------------------------------------------------------------------------- void wxScrollBar::OnIdle(wxIdleEvent& event) +{ + UpdateThumb(); + event.Skip(); +} + +void wxScrollBar::UpdateThumb() { if ( m_dirty ) { @@ -373,8 +379,6 @@ void wxScrollBar::OnIdle(wxIdleEvent& event) m_dirty = FALSE; } - - event.Skip(); } void wxScrollBar::DoDraw(wxControlRenderer *renderer) @@ -464,6 +468,10 @@ bool wxScrollBar::PerformAction(const wxControlAction& action, { DoSetThumb(numArg); + // VS: we have to force redraw here, otherwise the thumb will lack + // behind mouse cursor + UpdateThumb(); + scrollType = wxEVT_SCROLLWIN_THUMBTRACK; } else if ( action == wxACTION_SCROLL_LINE_UP )