summaryrefslogtreecommitdiff
path: root/vcl/source/window/menu.cxx
diff options
context:
space:
mode:
authorAleksei Nikiforov <darktemplar@basealt.ru>2019-02-27 15:03:07 +0300
committerThorsten Behrens <Thorsten.Behrens@CIB.de>2019-02-27 20:53:11 +0100
commitf341921825370fb98ad896a20d823c5f0cb537f6 (patch)
treeddfd87bd4ffe81f092386c5a0e7fb6da65db0a3d /vcl/source/window/menu.cxx
parent110803068b75ffd895a9b1139aee2248d30f085b (diff)
tdf#121970 KDE5: Regenerate menu when it's set as submenu
Also add item bits change notification function for SalMenu to properly convert regenerated menu items to check or radiocheck items. Change-Id: I61f16a771b484644bbefd9afaf2776232d38a2f9 Reviewed-on: https://gerrit.libreoffice.org/68438 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'vcl/source/window/menu.cxx')
-rw-r--r--vcl/source/window/menu.cxx12
1 files changed, 10 insertions, 2 deletions
diff --git a/vcl/source/window/menu.cxx b/vcl/source/window/menu.cxx
index 2f9b87822c00..9d7c5cc9e3d2 100644
--- a/vcl/source/window/menu.cxx
+++ b/vcl/source/window/menu.cxx
@@ -695,9 +695,17 @@ OString Menu::GetItemIdent(sal_uInt16 nId) const
void Menu::SetItemBits( sal_uInt16 nItemId, MenuItemBits nBits )
{
- MenuItemData* pData = pItemList->GetData( nItemId );
- if ( pData )
+ size_t nPos;
+ MenuItemData* pData = pItemList->GetData(nItemId, nPos);
+
+ if (pData && (pData->nBits != nBits))
+ {
pData->nBits = nBits;
+
+ // update native menu
+ if (ImplGetSalMenu())
+ ImplGetSalMenu()->SetItemBits(nPos, nBits);
+ }
}
MenuItemBits Menu::GetItemBits( sal_uInt16 nItemId ) const