From a4da4cc6602263dc2c14e885ec3a1d72d099253a Mon Sep 17 00:00:00 2001 From: Oliver Specht Date: Wed, 27 Apr 2016 12:56:47 +0200 Subject: tdf#99527: show all accelerators in menus of extensions XCUBasedAcceleratorConfiguration::getPreferredKeyEventsForCommandList() throws if the command string of a menu entry is empty. Parent entries of sub menus of extensions are empty. As the method doesn't know about the source of the command a dummy entry is supplied. Change-Id: I1d12bbf41c22b66e9ee29f1f05ea216134168795 Reviewed-on: https://gerrit.libreoffice.org/24423 Tested-by: Jenkins Reviewed-by: Oliver Specht --- framework/source/uielement/menubarmanager.cxx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'framework') diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx index 902e277afffb..23178529682f 100644 --- a/framework/source/uielement/menubarmanager.cxx +++ b/framework/source/uielement/menubarmanager.cxx @@ -1500,7 +1500,10 @@ void MenuBarManager::RetrieveShortcuts( std::vector< MenuItemHandler* >& aMenuSh const sal_uInt32 nCount = aMenuShortCuts.size(); for ( sal_uInt32 i = 0; i < nCount; ++i ) { - aSeq[i] = aMenuShortCuts[i]->aMenuItemURL; + rtl::OUString aItemURL = aMenuShortCuts[i]->aMenuItemURL; + if( aItemURL.isEmpty() && aMenuShortCuts[i]->xSubMenuManager.is()) + aItemURL = "-"; // tdf#99527 prevent throw in case of empty commands + aSeq[i] = aItemURL; aMenuShortCuts[i]->aKeyCode = aEmptyKeyCode; } -- cgit