From 4094edd1805b4dd8fcba1dec5d1818698d54d168 Mon Sep 17 00:00:00 2001 From: Charlie Fenton Date: Wed, 21 Jan 2015 23:45:26 -0800 Subject: [PATCH] MGR: Work around an apparent bug in wxWidgets 3.0 on Linux which drew blank lines at the top and failed to draw the bottom items. This could happen if the list was scrolled near the bottom and the user selected "Show active tasks." --- clientgui/BOINCBaseView.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/clientgui/BOINCBaseView.cpp b/clientgui/BOINCBaseView.cpp index cf453e6c61..6edc176261 100644 --- a/clientgui/BOINCBaseView.cpp +++ b/clientgui/BOINCBaseView.cpp @@ -286,6 +286,14 @@ void CBOINCBaseView::OnListRender(wxTimerEvent& event) { wxASSERT(GetDocCount() == GetCacheCount()); //fprintf(stderr, "CBOINCBaseView::OnListRender(): m_pListPane->RefreshItems(0, %d)\n", iDocCount - 1); m_pListPane->RefreshItems(0, iDocCount - 1); +#ifdef __WXGTK__ + // Work around an apparent bug in wxWidgets 3.0 + // which drew blank lines at the top and failed + // to draw the bottom items. This could happen + // if the list was scrolled near the bottom and + // the user selected "Show active tasks." + m_pListPane->EnsureVisible(iDocCount - 1); +#endif m_bNeedSort = true; } } @@ -304,7 +312,7 @@ void CBOINCBaseView::OnListRender(wxTimerEvent& event) { RestoreSelections(); UpdateSelection(); - + m_bProcessingListRenderEvent = false; }