summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlhan Yesil <ilhanyesil@gmx.de>2020-12-14 17:39:55 +0100
committerSamuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>2022-05-23 10:40:31 +0200
commitcf1ef5d7d599d1d1f707e09f06cd794d91c8714f (patch)
tree3caf71e98ad2bcb9c4d80ade3216dd017e7dba62
parentb5bdf6ffe2d24a1ccb7bc57fc8d05702d34dafdc (diff)
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@gmx.de> (cherry picked from commit f1d9648b5196eacac080a2a4db42c06829554107) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114292 Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
-rw-r--r--vcl/source/control/button.cxx8
1 files changed, 7 insertions, 1 deletions
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();