From d8c3c53f057d8280a797d7a73b7311fc0a12f148 Mon Sep 17 00:00:00 2001 From: Ilya Sinitsyn Date: Wed, 18 Sep 2019 04:19:25 +0700 Subject: [PATCH] Make wxRendererMSW::GetHeaderButtonMargin() more accurate Follow Wine in using 3*SM_CXEDGE as margins on each side. This also has the advantage of working better in high DPI, as we don't hardcode the value in pixels any longer. --- src/msw/renderer.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/msw/renderer.cpp b/src/msw/renderer.cpp index 2b1a5470af..9372afbd29 100644 --- a/src/msw/renderer.cpp +++ b/src/msw/renderer.cpp @@ -590,9 +590,10 @@ int wxRendererMSW::GetHeaderButtonHeight(wxWindow * win) return Header_Layout(hwndHeader, &hdl) ? wp.cy : DEFAULT_HEIGHT; } -int wxRendererMSW::GetHeaderButtonMargin(wxWindow *WXUNUSED(win)) +int wxRendererMSW::GetHeaderButtonMargin(wxWindow *win) { - return 10; + // The native control seems to use 3*SM_CXEDGE margins on each size. + return 6*wxGetSystemMetrics(SM_CXEDGE, win); } // ============================================================================