vcl/inc/salvtables.hxx | 4 ++-- vcl/source/control/button.cxx | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-)
New commits: commit ea4fb1559f7b99a0bfaf18f26cb3b6972c9cde1c Author: Jan-Marek Glogowski <glo...@fbihome.de> AuthorDate: Wed Apr 7 00:07:53 2021 +0200 Commit: Jan-Marek Glogowski <glo...@fbihome.de> CommitDate: Wed Apr 7 01:27:51 2021 +0200 tdf#136918 restrict symbol size to button width ... and scale the button based on the DPI scaling factor. The symbol size is based on pDev->GetTextHeight(), but the button itself is fixed to 20px, which would break at some point. So this at least scales the button witdh based on DPI, just like commit 1eba1c4597f8c2698aa91e2218d8452ad0fbc39c ("tdf#130991 Scale the drop-down arrow size-request") did for the toolbar buttons. OTOH this should probably just use the full button width ignoring the GetTextHeight()... Change-Id: I43010443265c10ad92f46cdecd1d7155a7a07a3e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113710 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glo...@fbihome.de> diff --git a/vcl/inc/salvtables.hxx b/vcl/inc/salvtables.hxx index 60041654521f..b0c04b5b1f0b 100644 --- a/vcl/inc/salvtables.hxx +++ b/vcl/inc/salvtables.hxx @@ -845,8 +845,8 @@ public: int get_menu_button_width() const override { - const int nButtonWidth = 20; - return nButtonWidth; + OutputDevice* pDefault = Application::GetDefaultDevice(); + return 20 * (pDefault ? pDefault->GetDPIScaleFactor() : 1.0); } void CallHandleEventListener(VclWindowEvent& rEvent) diff --git a/vcl/source/control/button.cxx b/vcl/source/control/button.cxx index c19c29c5c750..2d68ab5f05c9 100644 --- a/vcl/source/control/button.cxx +++ b/vcl/source/control/button.cxx @@ -838,6 +838,8 @@ void PushButton::ImplDrawPushButtonContent(OutputDevice *pDev, DrawFlags nDrawFl // calculate symbol size tools::Long nSymbolSize = pDev->GetTextHeight() / 2 + 1; + if (nSymbolSize > aSize.Width() / 2) + nSymbolSize = aSize.Width() / 2; nSeparatorX = aInRect.Right() - 2*nSymbolSize; aSize.AdjustWidth( -(2*nSymbolSize) ); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits