[Libreoffice-commits] core.git: Branch 'libreoffice-6-2' - vcl/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Wed Dec 19 20:12:36 UTC 2018


 vcl/source/window/builder.cxx |    2 +-
 vcl/source/window/toolbox.cxx |   13 ++++++++++++-
 2 files changed, 13 insertions(+), 2 deletions(-)

New commits:
commit 454f6c11ec85dcbea849d3288963db632c90ff3f
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Wed Dec 19 11:56:23 2018 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Wed Dec 19 21:12:07 2018 +0100

    Resolves: tdf#105602 fix extended help for non-dispatchable toolbox commands
    
    Change-Id: I832a043ca5ae3a4030b9ac22447cecfabd3650c0
    Reviewed-on: https://gerrit.libreoffice.org/65423
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index 91f5cd915baa..7f9e0fcec4d4 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -2123,9 +2123,9 @@ VclPtr<vcl::Window> VclBuilder::makeObject(vcl::Window *pParent, const OString &
                     //TODO: ImplToolItems::size_type -> sal_uInt16!
                 pToolBox->InsertItem(nItemId, extractLabel(rMap), nBits);
                 pToolBox->SetItemCommand(nItemId, aCommand);
-                pToolBox->SetHelpId(nItemId, m_sHelpRoot + id);
             }
 
+            pToolBox->SetHelpId(nItemId, m_sHelpRoot + id);
             OUString sTooltip(extractTooltipText(rMap));
             if (!sTooltip.isEmpty())
                 pToolBox->SetQuickHelpText(nItemId, sTooltip);
diff --git a/vcl/source/window/toolbox.cxx b/vcl/source/window/toolbox.cxx
index a5820aff5013..fffe1042ad19 100644
--- a/vcl/source/window/toolbox.cxx
+++ b/vcl/source/window/toolbox.cxx
@@ -3801,6 +3801,17 @@ void ToolBox::Resize()
     }
 }
 
+namespace
+{
+    bool DispatchableCommand(const OUString& rName)
+    {
+        return rName.startsWith(".uno")  ||
+               rName.startsWith("slot:")  ||
+               rName.startsWith("macro:")  ||
+               rName.startsWith("vnd.sun.star.script");
+    }
+}
+
 const OUString& ToolBox::ImplGetHelpText( sal_uInt16 nItemId ) const
 {
     ImplToolItem* pItem = ImplGetItem( nItemId );
@@ -3812,7 +3823,7 @@ const OUString& ToolBox::ImplGetHelpText( sal_uInt16 nItemId ) const
         Help* pHelp = Application::GetHelp();
         if ( pHelp )
         {
-            if ( pItem->maCommandStr.getLength() )
+            if (DispatchableCommand(pItem->maCommandStr))
                 pItem->maHelpText = pHelp->GetHelpText( pItem->maCommandStr, this );
             if ( pItem->maHelpText.isEmpty() && !pItem->maHelpId.isEmpty() )
                 pItem->maHelpText = pHelp->GetHelpText( OStringToOUString( pItem->maHelpId, RTL_TEXTENCODING_UTF8 ), this );


More information about the Libreoffice-commits mailing list