Fix flicker when reducing wxDVC width

After 841c14c37c, reducing width of a
generic wxDataViewCtrl caused flickering (horizontal scrollbar
appearing and disappearing immediately) when the columns were resized
by user code to fix exactly.

Fixed by calling AdjustScrollbars() after determining column sizes. It
doesn’t make sense to call it before, because UpdateColumnSizes() may
change required width.

See #18295.
This commit is contained in:
Václav Slavík
2019-01-09 15:38:28 +01:00
committed by Václav Slavík
parent 7a45b7948a
commit 488cbb7848

View File

@@ -5183,13 +5183,13 @@ void wxDataViewCtrl::OnSize( wxSizeEvent &WXUNUSED(event) )
Layout();
AdjustScrollbars();
// Update the last column size to take all the available space. Note that
// this must be done after calling Layout() to update m_clientArea size.
if ( m_clientArea && GetColumnCount() )
m_clientArea->UpdateColumnSizes();
AdjustScrollbars();
// We must redraw the headers if their height changed. Normally this
// shouldn't happen as the control shouldn't let itself be resized beneath
// its minimal height but avoid the display artefacts that appear if it