X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5c33522fca7cddc441a316f5b9fb50d7685435ba..1afe8c83072c52d957db8a9877ca28011258ecac:/src/msw/notebook.cpp diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index 2e1739de7e..a4ee7df0d4 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -653,16 +653,18 @@ wxSize wxNotebook::CalcSizeFromPage(const wxSize& sizePage) const tabSize.y = rect.bottom - rect.top; } + const int rows = GetRowCount(); + // add an extra margin in both directions const int MARGIN = 8; if ( IsVertical() ) { sizeTotal.x += MARGIN; - sizeTotal.y += tabSize.y + MARGIN; + sizeTotal.y += tabSize.y * rows + MARGIN; } else // horizontal layout { - sizeTotal.x += tabSize.x + MARGIN; + sizeTotal.x += tabSize.x * rows + MARGIN; sizeTotal.y += MARGIN; } @@ -1026,6 +1028,10 @@ void wxNotebook::OnSize(wxSizeEvent& event) MAKELPARAM(rc.right, rc.bottom)); s_isInOnSize = false; } + + // The best size depends on the number of rows of tabs, which can + // change when the notepad is resized. + InvalidateBestSize(); } #if wxUSE_UXTHEME