From c10182573e2d29cb43fe763ec4e97e04a7d55d9b Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Tue, 3 Dec 2019 15:13:47 +0000 Subject: toolbar item visibilty defaults to false in GtkBuilder but true in vcl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I91152db48fee77b95fa542790839a574b87161db Reviewed-on: https://gerrit.libreoffice.org/84361 Tested-by: Jenkins Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- vcl/source/window/builder.cxx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'vcl') diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index e7c4e17d7c65..6f59df71ded5 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -1111,12 +1111,14 @@ namespace bool extractVisible(VclBuilder::stringmap &rMap) { + bool bRet = false; VclBuilder::stringmap::iterator aFind = rMap.find(OString("visible")); if (aFind != rMap.end()) { - return toBool(aFind->second); + bRet = toBool(aFind->second); + rMap.erase(aFind); } - return false; + return bRet; } Size extractSizeRequest(VclBuilder::stringmap &rMap) @@ -3643,6 +3645,8 @@ void VclBuilder::insertMenuObject(Menu *pParent, PopupMenu *pSubMenu, const OStr if (nOldCount != pParent->GetItemCount()) { pParent->SetHelpId(nNewId, m_sHelpRoot + rID); + if (!extractVisible(rProps)) + pParent->HideItem(nNewId); for (auto const& prop : rProps) { @@ -3653,8 +3657,6 @@ void VclBuilder::insertMenuObject(Menu *pParent, PopupMenu *pSubMenu, const OStr pParent->SetTipHelpText(nNewId, rValue); else if (rKey == "tooltip-text") pParent->SetTipHelpText(nNewId, rValue); - else if (rKey == "visible") - pParent->ShowItem(nNewId, toBool(rValue)); else SAL_INFO("vcl.layout", "unhandled property: " << rKey); } -- cgit