[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - vcl/source

Ilhan Yesil (via logerrit) logerrit at kemper.freedesktop.org
Tue May 18 13:29:11 UTC 2021


 vcl/source/control/button.cxx |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit a939574a8d229a45ef92262bf0f02f1ec1903125
Author:     Ilhan Yesil <ilhanyesil at gmx.de>
AuthorDate: Mon Dec 14 17:39:55 2020 +0100
Commit:     Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Tue May 18 15:28:37 2021 +0200

    tdf#138901 Refresh button tooltip in sidebar created by extension
    
    The button's tooltip is refreshed after setting the button's text.
    
    Change-Id: I08f272c43c3312d462981d46ab961ef925eeccbf
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107718
    Tested-by: Jenkins
    Reviewed-by: Ilhan Yesil <ilhanyesil at gmx.de>
    (cherry picked from commit f1d9648b5196eacac080a2a4db42c06829554107)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114292
    Tested-by: Thorsten Behrens <thorsten.behrens at allotropia.de>
    Reviewed-by: Thorsten Behrens <thorsten.behrens at allotropia.de>

diff --git a/vcl/source/control/button.cxx b/vcl/source/control/button.cxx
index a4ae36cffe15..5607a62d833a 100644
--- a/vcl/source/control/button.cxx
+++ b/vcl/source/control/button.cxx
@@ -77,6 +77,7 @@ public:
     long            mnSeparatorX;
     DrawButtonFlags mnButtonState;
     bool            mbSmallSymbol;
+    bool            mbGeneratedTooltip;
 
     Image           maImage;
     ImageAlign      meImageAlign;
@@ -87,7 +88,7 @@ public:
 };
 
 ImplCommonButtonData::ImplCommonButtonData() : maFocusRect(), mnSeparatorX(0), mnButtonState(DrawButtonFlags::NONE),
-mbSmallSymbol(false), maImage(), meImageAlign(ImageAlign::Top), meSymbolAlign(SymbolAlign::LEFT)
+mbSmallSymbol(false), mbGeneratedTooltip(false), maImage(), meImageAlign(ImageAlign::Top), meSymbolAlign(SymbolAlign::LEFT)
 {
 }
 
@@ -219,8 +220,13 @@ void Button::ImplDrawAlignedImage(OutputDevice* pDev, Point& rPos,
         tools::Rectangle textRect = GetTextRect(
             tools::Rectangle(Point(), Size(0x7fffffff, 0x7fffffff)), aText, nTextStyle);
         // If the button text doesn't fit into it, put it into a tooltip (might happen in sidebar)
+        if (GetQuickHelpText()!= aText && mpButtonData->mbGeneratedTooltip)
+            SetQuickHelpText("");
         if (GetQuickHelpText().isEmpty() && textRect.getWidth() > rSize.getWidth())
+        {
             SetQuickHelpText(aText);
+            mpButtonData->mbGeneratedTooltip = true;
+        }
 
         ImplSetFocusRect(aOutRect);
         rSize = aOutRect.GetSize();


More information about the Libreoffice-commits mailing list