basctl/source/basicide/baside2b.cxx                              |    1 
 basctl/source/basicide/bastype2.cxx                              |    1 
 basctl/source/basicide/macrodlg.cxx                              |    1 
 cui/source/customize/SvxMenuConfigPage.cxx                       |    1 
 cui/source/customize/SvxToolbarConfigPage.cxx                    |    1 
 cui/source/customize/cfgutil.cxx                                 |    1 
 cui/source/dialogs/MacroManagerDialog.cxx                        |    1 
 cui/source/inc/cuitabline.hxx                                    |    1 
 cui/source/inc/numpages.hxx                                      |    1 
 dbaccess/source/ui/control/sqledit.cxx                           |    1 
 dbaccess/source/ui/inc/sbagrid.hxx                               |    2 
 dbaccess/source/ui/misc/WTypeSelect.cxx                          |    1 
 dbaccess/source/ui/querydesign/JoinTableView.cxx                 |    1 
 dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx            |    1 
 dbaccess/source/ui/querydesign/TableWindow.cxx                   |    1 
 dbaccess/source/ui/tabledesign/TEditControl.cxx                  |    1 
 dbaccess/source/ui/tabledesign/TableDesignControl.cxx            |    1 
 desktop/source/deployment/gui/dp_gui_extensionboxwithbuttons.cxx |    1 
 editeng/source/editeng/editview.cxx                              |    1 
 extensions/source/bibliography/toolbar.hxx                       |    1 
 fpicker/source/office/fileview.cxx                               |    1 
 fpicker/source/office/iodlgimp.hxx                               |    1 
 include/sfx2/templatelocalview.hxx                               |    2 
 include/vcl/jsdialog/executor.hxx                                |    1 
 include/vcl/weld/ComboBox.hxx                                    |    2 
 include/vcl/weld/Menu.hxx                                        |   85 
++++++++++
 include/vcl/weld/Toolbar.hxx                                     |    2 
 include/vcl/weld/weld.hxx                                        |   67 -------
 reportdesign/source/ui/dlg/GroupsSorting.cxx                     |    1 
 reportdesign/source/ui/dlg/Navigator.cxx                         |    1 
 sc/source/ui/app/inputwin.cxx                                    |    1 
 sc/source/ui/cctrl/checklistmenu.cxx                             |    1 
 sc/source/ui/dbgui/csvgrid.cxx                                   |    1 
 sc/source/ui/dbgui/csvtablebox.cxx                               |    1 
 sc/source/ui/inc/csvgrid.hxx                                     |    1 
 sc/source/ui/miscdlgs/acredlin.cxx                               |    1 
 sc/source/ui/navipi/content.cxx                                  |    1 
 sc/source/ui/navipi/scenwnd.cxx                                  |    1 
 sc/source/ui/view/tabcont.cxx                                    |    1 
 sd/source/ui/animations/CustomAnimationList.cxx                  |    1 
 sd/source/ui/annotations/annotationwindow.cxx                    |    1 
 sd/source/ui/app/scalectrl.cxx                                   |    1 
 sd/source/ui/app/sdpopup.cxx                                     |    1 
 sd/source/ui/app/tmplctrl.cxx                                    |    1 
 sd/source/ui/dlg/BulletAndPositionDlg.cxx                        |    1 
 sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx              |    1 
 sd/source/ui/sidebar/LayoutMenu.cxx                              |    1 
 sd/source/ui/sidebar/MasterPagesSelector.hxx                     |    1 
 sd/source/ui/slideshow/slideshowimpl.cxx                         |    1 
 sd/source/ui/table/TableDesignPane.cxx                           |    1 
 sd/source/ui/view/drviews4.cxx                                   |    1 
 sfx2/source/appl/newhelp.cxx                                     |    1 
 sfx2/source/control/charmapcontainer.cxx                         |    1 
 sfx2/source/control/templatedefaultview.cxx                      |    1 
 sfx2/source/control/templatedlglocalview.cxx                     |    1 
 sfx2/source/control/templatelocalview.cxx                        |    1 
 sfx2/source/devtools/ObjectInspectorTreeHandler.cxx              |    1 
 sfx2/source/dialog/StyleList.cxx                                 |    1 
 sfx2/source/dialog/backingwindow.cxx                             |    1 
 sfx2/source/dialog/templdlg.cxx                                  |    1 
 sfx2/source/doc/templatedlg.cxx                                  |    1 
 sfx2/source/sidebar/SidebarController.cxx                        |    1 
 sfx2/source/sidebar/TabBar.cxx                                   |    1 
 starmath/source/ElementsDockingWindow.cxx                        |    1 
 starmath/source/SmElementsPanel.cxx                              |    1 
 svx/source/dialog/charmap.cxx                                    |    1 
 svx/source/dialog/imapwnd.hxx                                    |    1 
 svx/source/dialog/svxruler.cxx                                   |    1 
 svx/source/fmcomp/fmgridcl.cxx                                   |    1 
 svx/source/fmcomp/gridctrl.cxx                                   |    1 
 svx/source/form/datanavi.cxx                                     |    1 
 svx/source/form/filtnav.cxx                                      |    1 
 svx/source/form/fmshimp.cxx                                      |    1 
 svx/source/form/navigatortree.cxx                                |    1 
 svx/source/gallery2/galbrws1.cxx                                 |    1 
 svx/source/mnuctrls/clipboardctl.cxx                             |    1 
 svx/source/stbctrls/pszctrl.cxx                                  |    1 
 svx/source/stbctrls/selctrl.cxx                                  |    1 
 svx/source/stbctrls/xmlsecctrl.cxx                               |    1 
 svx/source/stbctrls/zoomctrl.cxx                                 |    1 
 svx/source/tbxctrls/StylesPreviewWindow.cxx                      |    1 
 svx/source/tbxctrls/SvxPresetListBox.cxx                         |    1 
 svx/source/tbxctrls/tbcontrl.cxx                                 |    1 
 sw/source/uibase/misc/redlndlg.cxx                               |    1 
 sw/source/uibase/ribbar/inputwin.cxx                             |    1 
 sw/source/uibase/sidebar/CommentsPanel.cxx                       |    1 
 sw/source/uibase/utlui/bookctrl.cxx                              |    1 
 sw/source/uibase/utlui/content.cxx                               |    1 
 sw/source/uibase/utlui/glbltree.cxx                              |    1 
 sw/source/uibase/utlui/tmplctrl.cxx                              |    1 
 sw/source/uibase/utlui/unotools.cxx                              |    1 
 sw/source/uibase/wrtsh/wrtsh2.cxx                                |    1 
 vcl/inc/qt5/QtInstanceBuilder.hxx                                |    1 
 vcl/inc/qt5/QtInstanceMenu.hxx                                   |    3 
 vcl/inc/salvtables.hxx                                           |    1 
 vcl/qt5/QtInstanceMenu.cxx                                       |   10 +
 vcl/qt5/QtInstanceToolbar.cxx                                    |   23 ++
 vcl/unx/gtk3/gtkinst.cxx                                         |    1 
 98 files changed, 212 insertions(+), 73 deletions(-)

New commits:
commit 9ba4a4b3f72e1445f9d8b234a0f980c6a94466bc
Author:     Michael Weghorn <[email protected]>
AuthorDate: Fri Feb 6 00:04:30 2026 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Fri Feb 6 10:14:48 2026 +0100

    tdf#130857 qt weld: Implement QtInstanceToolbar::set_item_image
    
    This method is used e.g. for the icons for the buttons
    for the sidebar decks (which are not supported
    yet with native Qt widgets), see TabBar::UpdateButtonIcons.
    
    Change-Id: I42a9f6b572bea3a3eceb98a4047af6a4c7ddebbc
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198797
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/vcl/qt5/QtInstanceToolbar.cxx b/vcl/qt5/QtInstanceToolbar.cxx
index be06c979689b..53dda649742b 100644
--- a/vcl/qt5/QtInstanceToolbar.cxx
+++ b/vcl/qt5/QtInstanceToolbar.cxx
@@ -148,15 +148,28 @@ void QtInstanceToolbar::set_item_image_mirrored(const 
OUString&, bool)
     assert(false && "Not implemented yet");
 }
 
-void QtInstanceToolbar::set_item_image(const OUString&,
-                                       const 
css::uno::Reference<css::graphic::XGraphic>&)
+void QtInstanceToolbar::set_item_image(const OUString& rIdent,
+                                       const 
css::uno::Reference<css::graphic::XGraphic>& rIcon)
 {
-    assert(false && "Not implemented yet");
+    SolarMutexGuard g;
+
+    GetQtInstance().RunInMainThread([&] {
+        QToolButton* pToolButton = 
m_pToolBar->findChild<QToolButton*>(toQString(rIdent));
+        assert(pToolButton && "No tool button with the given ID found");
+        pToolButton->setIcon(toQPixmap(rIcon));
+    });
 }
 
-void QtInstanceToolbar::set_item_image(const OUString&, VirtualDevice*)
+void QtInstanceToolbar::set_item_image(const OUString& rIdent, VirtualDevice* 
pDevice)
 {
-    assert(false && "Not implemented yet");
+    SolarMutexGuard g;
+
+    GetQtInstance().RunInMainThread([&] {
+        QToolButton* pToolButton = 
m_pToolBar->findChild<QToolButton*>(toQString(rIdent));
+        assert(pToolButton && "No tool button with the given ID found");
+        const QPixmap aIconPixmap = pDevice ? toQPixmap(*pDevice) : QPixmap();
+        pToolButton->setIcon(aIconPixmap);
+    });
 }
 
 void QtInstanceToolbar::insert_item(int, const OUString&)
commit 8121b2a0d4a6d443beaf03d68e21394c38ce0270
Author:     Michael Weghorn <[email protected]>
AuthorDate: Thu Feb 5 23:42:13 2026 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Fri Feb 6 10:14:40 2026 +0100

    tdf#130857 qt weld: Signal when menu item gets triggered/activated
    
    Change-Id: If1cb97fc8da95e1a3e3cdd60424a70d3b8278225
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198792
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/vcl/inc/qt5/QtInstanceMenu.hxx b/vcl/inc/qt5/QtInstanceMenu.hxx
index c6f8d3977858..f96a472007a9 100644
--- a/vcl/inc/qt5/QtInstanceMenu.hxx
+++ b/vcl/inc/qt5/QtInstanceMenu.hxx
@@ -61,6 +61,7 @@ private:
 
 private Q_SLOTS:
     void menuActionHovered(QAction* pAction);
+    void menuActionTriggered(QAction* pAction);
     void showHelp();
 };
 
diff --git a/vcl/qt5/QtInstanceMenu.cxx b/vcl/qt5/QtInstanceMenu.cxx
index c84b84fe0a64..22d63efc45a4 100644
--- a/vcl/qt5/QtInstanceMenu.cxx
+++ b/vcl/qt5/QtInstanceMenu.cxx
@@ -33,6 +33,8 @@ QtInstanceMenu::QtInstanceMenu(QMenu* pMenu)
 {
     assert(m_pMenu);
 
+    connect(m_pMenu, &QMenu::triggered, this, 
&QtInstanceMenu::menuActionTriggered);
+
     // connect slots in order to show help for current entry on F1
     connect(m_pMenu, &QMenu::hovered, this, 
&QtInstanceMenu::menuActionHovered);
     QKeySequence sequence(QKeySequence::HelpContents);
@@ -267,6 +269,14 @@ QAction* QtInstanceMenu::getAction(const OUString& rIdent) 
const
 
 void QtInstanceMenu::menuActionHovered(QAction* pAction) { m_pCurrentAction = 
pAction; }
 
+void QtInstanceMenu::menuActionTriggered(QAction* pAction)
+{
+    SolarMutexGuard g;
+
+    assert(pAction);
+    signal_activate(toOUString(pAction->objectName()));
+}
+
 void QtInstanceMenu::showHelp()
 {
     SolarMutexGuard aGuard;
commit 2866ba3e83c242406d53ed4486c3796c378a23e7
Author:     Michael Weghorn <[email protected]>
AuthorDate: Thu Feb 5 23:31:07 2026 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Fri Feb 6 10:14:33 2026 +0100

    weld: Move weld::Menu to own header
    
    Move the class out of weld.hxx into its own header, in
    order to make it easier to keep an overview and to avoid
    having to recompile ~all UI code when the class is
    modified.
    
    Change-Id: I86edb8abe2178862269f2fc2a1629fb682a6a752
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198790
    Reviewed-by: Michael Weghorn <[email protected]>
    Tested-by: Jenkins

diff --git a/basctl/source/basicide/baside2b.cxx 
b/basctl/source/basicide/baside2b.cxx
index 522e8748c3ba..ccd2afdf2929 100644
--- a/basctl/source/basicide/baside2b.cxx
+++ b/basctl/source/basicide/baside2b.cxx
@@ -54,6 +54,7 @@
 #include <vcl/image.hxx>
 #include <vcl/rendercontext/GetDefaultFontFlags.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <svl/urihelper.hxx>
diff --git a/basctl/source/basicide/bastype2.cxx 
b/basctl/source/basicide/bastype2.cxx
index fe514df641f8..ebaa1897bc57 100644
--- a/basctl/source/basicide/bastype2.cxx
+++ b/basctl/source/basicide/bastype2.cxx
@@ -38,6 +38,7 @@
 #include <svl/itemset.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <initializer_list>
 #include <memory>
diff --git a/basctl/source/basicide/macrodlg.cxx 
b/basctl/source/basicide/macrodlg.cxx
index 209c75358af5..df37fe86f50e 100644
--- a/basctl/source/basicide/macrodlg.cxx
+++ b/basctl/source/basicide/macrodlg.cxx
@@ -44,6 +44,7 @@
 #include <tools/debug.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <osl/diagnose.h>
 
diff --git a/cui/source/customize/SvxMenuConfigPage.cxx 
b/cui/source/customize/SvxMenuConfigPage.cxx
index 04f94dcf5fb0..929d39bb1e61 100644
--- a/cui/source/customize/SvxMenuConfigPage.cxx
+++ b/cui/source/customize/SvxMenuConfigPage.cxx
@@ -22,6 +22,7 @@
 
 #include <dlgname.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/commandevent.hxx>
diff --git a/cui/source/customize/SvxToolbarConfigPage.cxx 
b/cui/source/customize/SvxToolbarConfigPage.cxx
index f82b7e195ec9..c82ad0dfe464 100644
--- a/cui/source/customize/SvxToolbarConfigPage.cxx
+++ b/cui/source/customize/SvxToolbarConfigPage.cxx
@@ -22,6 +22,7 @@
 
 #include <vcl/event.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/commandevent.hxx>
diff --git a/cui/source/customize/cfgutil.cxx b/cui/source/customize/cfgutil.cxx
index ffa7f5c1401c..f4fcf59c6dcc 100644
--- a/cui/source/customize/cfgutil.cxx
+++ b/cui/source/customize/cfgutil.cxx
@@ -54,6 +54,7 @@
 #include <vcl/help.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <sfx2/sidebar/ResourceManager.hxx>
 #include <sfx2/sidebar/Context.hxx>
diff --git a/cui/source/dialogs/MacroManagerDialog.cxx 
b/cui/source/dialogs/MacroManagerDialog.cxx
index ea63d9198f33..2b86258d1232 100644
--- a/cui/source/dialogs/MacroManagerDialog.cxx
+++ b/cui/source/dialogs/MacroManagerDialog.cxx
@@ -39,6 +39,7 @@
 #include <vcl/svapp.hxx>
 #include <vcl/vclenum.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <dlgname.hxx>
 
 #include <com/sun/star/beans/XPropertySet.hpp>
diff --git a/cui/source/inc/cuitabline.hxx b/cui/source/inc/cuitabline.hxx
index 3ec903955db1..e81b7f36093e 100644
--- a/cui/source/inc/cuitabline.hxx
+++ b/cui/source/inc/cuitabline.hxx
@@ -30,6 +30,7 @@
 #include <svx/dlgctrl.hxx>
 #include <tools/fldunit.hxx>
 #include <vcl/weld/Entry.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/SpinButton.hxx>
 #include <vcl/weld/customweld.hxx>
 
diff --git a/cui/source/inc/numpages.hxx b/cui/source/inc/numpages.hxx
index 251870a932d1..12afc45e5655 100644
--- a/cui/source/inc/numpages.hxx
+++ b/cui/source/inc/numpages.hxx
@@ -27,6 +27,7 @@
 #include <svtools/ctrlbox.hxx>
 #include <svx/numberingpreview.hxx>
 #include <vcl/weld/Entry.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/MetricSpinButton.hxx>
 #include <vcl/weld/SpinButton.hxx>
 #include <vcl/weld/TreeView.hxx>
diff --git a/dbaccess/source/ui/control/sqledit.cxx 
b/dbaccess/source/ui/control/sqledit.cxx
index ab6dcb276ab0..ff1e104542d1 100644
--- a/dbaccess/source/ui/control/sqledit.cxx
+++ b/dbaccess/source/ui/control/sqledit.cxx
@@ -43,6 +43,7 @@
 #include <vcl/specialchars.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 using namespace dbaui;
 
diff --git a/dbaccess/source/ui/inc/sbagrid.hxx 
b/dbaccess/source/ui/inc/sbagrid.hxx
index dea84eae022d..9cf8c560dc79 100644
--- a/dbaccess/source/ui/inc/sbagrid.hxx
+++ b/dbaccess/source/ui/inc/sbagrid.hxx
@@ -30,6 +30,8 @@
 #include "sbamultiplex.hxx"
 #include <svx/dataaccessdescriptor.hxx>
 #include <rtl/ref.hxx>
+#include <vcl/weld/Menu.hxx>
+
 #include <map>
 #include <queue>
 
diff --git a/dbaccess/source/ui/misc/WTypeSelect.cxx 
b/dbaccess/source/ui/misc/WTypeSelect.cxx
index 37bdde5cc578..7424a57fb360 100644
--- a/dbaccess/source/ui/misc/WTypeSelect.cxx
+++ b/dbaccess/source/ui/misc/WTypeSelect.cxx
@@ -27,6 +27,7 @@
 #include <tools/stream.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <UITools.hxx>
 #include <core_resource.hxx>
 #include <FieldControls.hxx>
diff --git a/dbaccess/source/ui/querydesign/JoinTableView.cxx 
b/dbaccess/source/ui/querydesign/JoinTableView.cxx
index 951183837689..61897aa49fa1 100644
--- a/dbaccess/source/ui/querydesign/JoinTableView.cxx
+++ b/dbaccess/source/ui/querydesign/JoinTableView.cxx
@@ -39,6 +39,7 @@
 #include <vcl/event.hxx>
 #include <vcl/ptrstyle.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <TableWindowData.hxx>
 #include <JAccess.hxx>
diff --git a/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx 
b/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx
index 0e604be696bd..f031e6db195f 100644
--- a/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx
+++ b/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx
@@ -51,6 +51,7 @@
 #include <vcl/rendercontext/GetDefaultFontFlags.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <comphelper/diagnose_ex.hxx>
 #include <o3tl/string_view.hxx>
 
diff --git a/dbaccess/source/ui/querydesign/TableWindow.cxx 
b/dbaccess/source/ui/querydesign/TableWindow.cxx
index d93f3eb85ae9..e526aed1725c 100644
--- a/dbaccess/source/ui/querydesign/TableWindow.cxx
+++ b/dbaccess/source/ui/querydesign/TableWindow.cxx
@@ -33,6 +33,7 @@
 #include <vcl/ptrstyle.hxx>
 #include <vcl/wall.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <comphelper/diagnose_ex.hxx>
 
diff --git a/dbaccess/source/ui/tabledesign/TEditControl.cxx 
b/dbaccess/source/ui/tabledesign/TEditControl.cxx
index 062c0f5baa14..bdf03446e32e 100644
--- a/dbaccess/source/ui/tabledesign/TEditControl.cxx
+++ b/dbaccess/source/ui/tabledesign/TEditControl.cxx
@@ -43,6 +43,7 @@
 #include <dsntypes.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 
 using namespace ::dbaui;
 using namespace ::comphelper;
diff --git a/dbaccess/source/ui/tabledesign/TableDesignControl.cxx 
b/dbaccess/source/ui/tabledesign/TableDesignControl.cxx
index 43680e050983..f06bea1c45b2 100644
--- a/dbaccess/source/ui/tabledesign/TableDesignControl.cxx
+++ b/dbaccess/source/ui/tabledesign/TableDesignControl.cxx
@@ -26,6 +26,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <helpids.h>
 
diff --git a/desktop/source/deployment/gui/dp_gui_extensionboxwithbuttons.cxx 
b/desktop/source/deployment/gui/dp_gui_extensionboxwithbuttons.cxx
index b0a698c3f9ff..eb0546f21f7c 100644
--- a/desktop/source/deployment/gui/dp_gui_extensionboxwithbuttons.cxx
+++ b/desktop/source/deployment/gui/dp_gui_extensionboxwithbuttons.cxx
@@ -31,6 +31,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <memory>
 #include <utility>
diff --git a/editeng/source/editeng/editview.cxx 
b/editeng/source/editeng/editview.cxx
index 214dbff46c81..9d35e2636eee 100644
--- a/editeng/source/editeng/editview.cxx
+++ b/editeng/source/editeng/editview.cxx
@@ -47,6 +47,7 @@
 #include <editeng.hxx>
 #include <i18nlangtag/lang.h>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/window.hxx>
 #include <editeng/acorrcfg.hxx>
 #include <editeng/unolingu.hxx>
diff --git a/extensions/source/bibliography/toolbar.hxx 
b/extensions/source/bibliography/toolbar.hxx
index 21ac5114574b..7b3404587d21 100644
--- a/extensions/source/bibliography/toolbar.hxx
+++ b/extensions/source/bibliography/toolbar.hxx
@@ -28,6 +28,7 @@
 #include <vcl/weld/weld.hxx>
 #include <vcl/weld/ComboBox.hxx>
 #include <vcl/weld/Entry.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <cppuhelper/implbase.hxx>
 #include <vector>
 
diff --git a/fpicker/source/office/fileview.cxx 
b/fpicker/source/office/fileview.cxx
index 32c03def0af3..c16aa93cc309 100644
--- a/fpicker/source/office/fileview.cxx
+++ b/fpicker/source/office/fileview.cxx
@@ -62,6 +62,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/timer.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <memory>
 #include "fileview.hxx"
 
diff --git a/fpicker/source/office/iodlgimp.hxx 
b/fpicker/source/office/iodlgimp.hxx
index 901d563b4c43..b7e5082020d9 100644
--- a/fpicker/source/office/iodlgimp.hxx
+++ b/fpicker/source/office/iodlgimp.hxx
@@ -22,6 +22,7 @@
 
 #include <vcl/idle.hxx>
 #include <vcl/weld/ComboBox.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/Toolbar.hxx>
 
 #include <deque>
diff --git a/include/sfx2/templatelocalview.hxx 
b/include/sfx2/templatelocalview.hxx
index 137d3e500397..e03470a48959 100644
--- a/include/sfx2/templatelocalview.hxx
+++ b/include/sfx2/templatelocalview.hxx
@@ -34,6 +34,8 @@ class SfxDocumentTemplates;
 class TemplateContainerItem;
 class TemplateViewItem;
 
+namespace weld { class Menu; }
+
 enum class FILTER_APPLICATION
 {
     NONE,
diff --git a/include/vcl/jsdialog/executor.hxx 
b/include/vcl/jsdialog/executor.hxx
index 05841805e80c..3de4b6472c5e 100644
--- a/include/vcl/jsdialog/executor.hxx
+++ b/include/vcl/jsdialog/executor.hxx
@@ -16,6 +16,7 @@
 #include <vcl/weld/Entry.hxx>
 #include <vcl/weld/FormattedSpinButton.hxx>
 #include <vcl/weld/IconView.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/Notebook.hxx>
 #include <vcl/weld/ScrolledWindow.hxx>
 #include <vcl/weld/SpinButton.hxx>
diff --git a/include/vcl/weld/ComboBox.hxx b/include/vcl/weld/ComboBox.hxx
index adeef50a86e3..1f1155fa85f2 100644
--- a/include/vcl/weld/ComboBox.hxx
+++ b/include/vcl/weld/ComboBox.hxx
@@ -14,6 +14,8 @@
 
 namespace weld
 {
+class Menu;
+
 struct VCL_DLLPUBLIC ComboBoxEntry
 {
     OUString sString;
diff --git a/include/vcl/weld/Menu.hxx b/include/vcl/weld/Menu.hxx
new file mode 100644
index 000000000000..7513e994a222
--- /dev/null
+++ b/include/vcl/weld/Menu.hxx
@@ -0,0 +1,85 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; 
fill-column: 100 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#pragma once
+
+#include <vcl/dllapi.h>
+#include <vcl/weld/weld.hxx>
+
+namespace weld
+{
+class VCL_DLLPUBLIC Menu
+{
+    friend class ::LOKTrigger;
+
+    Link<const OUString&, void> m_aActivateHdl;
+
+protected:
+    void signal_activate(const OUString& rIdent) { 
m_aActivateHdl.Call(rIdent); }
+
+public:
+    virtual OUString popup_at_rect(weld::Widget* pParent, const 
tools::Rectangle& rRect,
+                                   Placement ePlace = Placement::Under)
+        = 0;
+
+    void connect_activate(const Link<const OUString&, void>& rLink) { 
m_aActivateHdl = rLink; }
+
+    virtual void set_sensitive(const OUString& rIdent, bool bSensitive) = 0;
+    virtual bool get_sensitive(const OUString& rIdent) const = 0;
+    virtual void set_label(const OUString& rIdent, const OUString& rLabel) = 0;
+    virtual OUString get_label(const OUString& rIdent) const = 0;
+    virtual void set_active(const OUString& rIdent, bool bActive) = 0;
+    virtual bool get_active(const OUString& rIdent) const = 0;
+    virtual void set_visible(const OUString& rIdent, bool bVisible) = 0;
+
+    virtual void insert(int pos, const OUString& rId, const OUString& rStr,
+                        const OUString* pIconName, VirtualDevice* 
pImageSurface,
+                        const css::uno::Reference<css::graphic::XGraphic>& 
rImage,
+                        TriState eCheckRadioFalse)
+        = 0;
+
+    virtual void set_item_help_id(const OUString& rIdent, const OUString& 
rHelpId) = 0;
+    virtual void remove(const OUString& rId) = 0;
+
+    virtual void clear() = 0;
+
+    virtual void insert_separator(int pos, const OUString& rId) = 0;
+    void append_separator(const OUString& rId) { insert_separator(-1, rId); }
+
+    void append(const OUString& rId, const OUString& rStr)
+    {
+        insert(-1, rId, rStr, nullptr, nullptr, nullptr, TRISTATE_INDET);
+    }
+    void append_check(const OUString& rId, const OUString& rStr)
+    {
+        insert(-1, rId, rStr, nullptr, nullptr, nullptr, TRISTATE_TRUE);
+    }
+    void append_radio(const OUString& rId, const OUString& rStr)
+    {
+        insert(-1, rId, rStr, nullptr, nullptr, nullptr, TRISTATE_FALSE);
+    }
+    void append(const OUString& rId, const OUString& rStr, const OUString& 
rImage)
+    {
+        insert(-1, rId, rStr, &rImage, nullptr, nullptr, TRISTATE_INDET);
+    }
+    void append(const OUString& rId, const OUString& rStr, VirtualDevice& 
rImage)
+    {
+        insert(-1, rId, rStr, nullptr, &rImage, nullptr, TRISTATE_INDET);
+    }
+
+    // return the number of toplevel nodes
+    virtual int n_children() const = 0;
+
+    virtual OUString get_id(int pos) const = 0;
+
+    virtual ~Menu() {}
+};
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s 
cinkeys+=0=break: */
diff --git a/include/vcl/weld/Toolbar.hxx b/include/vcl/weld/Toolbar.hxx
index c527874f5eb9..182d5e16067e 100644
--- a/include/vcl/weld/Toolbar.hxx
+++ b/include/vcl/weld/Toolbar.hxx
@@ -19,6 +19,8 @@ enum class ImageType;
 
 namespace weld
 {
+class Menu;
+
 class VCL_DLLPUBLIC Toolbar : virtual public Widget
 {
     Link<const OUString&, void> m_aClickHdl;
diff --git a/include/vcl/weld/weld.hxx b/include/vcl/weld/weld.hxx
index 9b617864e3ec..f07dd479c54a 100644
--- a/include/vcl/weld/weld.hxx
+++ b/include/vcl/weld/weld.hxx
@@ -941,73 +941,6 @@ enum class Placement
     End
 };
 
-class VCL_DLLPUBLIC Menu
-{
-    friend class ::LOKTrigger;
-
-    Link<const OUString&, void> m_aActivateHdl;
-
-protected:
-    void signal_activate(const OUString& rIdent) { 
m_aActivateHdl.Call(rIdent); }
-
-public:
-    virtual OUString popup_at_rect(weld::Widget* pParent, const 
tools::Rectangle& rRect,
-                                   Placement ePlace = Placement::Under)
-        = 0;
-
-    void connect_activate(const Link<const OUString&, void>& rLink) { 
m_aActivateHdl = rLink; }
-
-    virtual void set_sensitive(const OUString& rIdent, bool bSensitive) = 0;
-    virtual bool get_sensitive(const OUString& rIdent) const = 0;
-    virtual void set_label(const OUString& rIdent, const OUString& rLabel) = 0;
-    virtual OUString get_label(const OUString& rIdent) const = 0;
-    virtual void set_active(const OUString& rIdent, bool bActive) = 0;
-    virtual bool get_active(const OUString& rIdent) const = 0;
-    virtual void set_visible(const OUString& rIdent, bool bVisible) = 0;
-
-    virtual void insert(int pos, const OUString& rId, const OUString& rStr,
-                        const OUString* pIconName, VirtualDevice* 
pImageSurface,
-                        const css::uno::Reference<css::graphic::XGraphic>& 
rImage,
-                        TriState eCheckRadioFalse)
-        = 0;
-
-    virtual void set_item_help_id(const OUString& rIdent, const OUString& 
rHelpId) = 0;
-    virtual void remove(const OUString& rId) = 0;
-
-    virtual void clear() = 0;
-
-    virtual void insert_separator(int pos, const OUString& rId) = 0;
-    void append_separator(const OUString& rId) { insert_separator(-1, rId); }
-
-    void append(const OUString& rId, const OUString& rStr)
-    {
-        insert(-1, rId, rStr, nullptr, nullptr, nullptr, TRISTATE_INDET);
-    }
-    void append_check(const OUString& rId, const OUString& rStr)
-    {
-        insert(-1, rId, rStr, nullptr, nullptr, nullptr, TRISTATE_TRUE);
-    }
-    void append_radio(const OUString& rId, const OUString& rStr)
-    {
-        insert(-1, rId, rStr, nullptr, nullptr, nullptr, TRISTATE_FALSE);
-    }
-    void append(const OUString& rId, const OUString& rStr, const OUString& 
rImage)
-    {
-        insert(-1, rId, rStr, &rImage, nullptr, nullptr, TRISTATE_INDET);
-    }
-    void append(const OUString& rId, const OUString& rStr, VirtualDevice& 
rImage)
-    {
-        insert(-1, rId, rStr, nullptr, &rImage, nullptr, TRISTATE_INDET);
-    }
-
-    // return the number of toplevel nodes
-    virtual int n_children() const = 0;
-
-    virtual OUString get_id(int pos) const = 0;
-
-    virtual ~Menu() {}
-};
-
 class VCL_DLLPUBLIC Popover : virtual public Container
 {
     friend class ::LOKTrigger;
diff --git a/reportdesign/source/ui/dlg/GroupsSorting.cxx 
b/reportdesign/source/ui/dlg/GroupsSorting.cxx
index 82722c57d154..a57e12e31ea1 100644
--- a/reportdesign/source/ui/dlg/GroupsSorting.cxx
+++ b/reportdesign/source/ui/dlg/GroupsSorting.cxx
@@ -40,6 +40,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <comphelper/diagnose_ex.hxx>
 
 #include <algorithm>
diff --git a/reportdesign/source/ui/dlg/Navigator.cxx 
b/reportdesign/source/ui/dlg/Navigator.cxx
index 1745787a8e01..c8fcaac91c6f 100644
--- a/reportdesign/source/ui/dlg/Navigator.cxx
+++ b/reportdesign/source/ui/dlg/Navigator.cxx
@@ -40,6 +40,7 @@
 #include <utility>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/TreeView.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/commandevent.hxx>
diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx
index 82236fc27044..b8c2287e68a8 100644
--- a/sc/source/ui/app/inputwin.cxx
+++ b/sc/source/ui/app/inputwin.cxx
@@ -45,6 +45,7 @@
 #include <vcl/settings.hxx>
 #include <svl/stritem.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <unotools/charclass.hxx>
 
diff --git a/sc/source/ui/cctrl/checklistmenu.cxx 
b/sc/source/ui/cctrl/checklistmenu.cxx
index e942aa0f520b..9fb7ce93ed4c 100644
--- a/sc/source/ui/cctrl/checklistmenu.cxx
+++ b/sc/source/ui/cctrl/checklistmenu.cxx
@@ -29,6 +29,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <rtl/math.hxx>
 #include <unotools/charclass.hxx>
 #include <comphelper/lok.hxx>
diff --git a/sc/source/ui/dbgui/csvgrid.cxx b/sc/source/ui/dbgui/csvgrid.cxx
index e6ca23eee077..f1d7404b03e2 100644
--- a/sc/source/ui/dbgui/csvgrid.cxx
+++ b/sc/source/ui/dbgui/csvgrid.cxx
@@ -42,6 +42,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 
 #include <editeng/colritem.hxx>
diff --git a/sc/source/ui/dbgui/csvtablebox.cxx 
b/sc/source/ui/dbgui/csvtablebox.cxx
index 3e259f87413a..5ac35fd62426 100644
--- a/sc/source/ui/dbgui/csvtablebox.cxx
+++ b/sc/source/ui/dbgui/csvtablebox.cxx
@@ -19,6 +19,7 @@
 
 #include <csvtablebox.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/weld/Menu.hxx>
 
 ScCsvTableBox::ScCsvTableBox(weld::Builder& rBuilder)
     : mxRuler(new ScCsvRuler(maData, this))
diff --git a/sc/source/ui/inc/csvgrid.hxx b/sc/source/ui/inc/csvgrid.hxx
index 484e82b6e08f..5df4df8b14f9 100644
--- a/sc/source/ui/inc/csvgrid.hxx
+++ b/sc/source/ui/inc/csvgrid.hxx
@@ -30,6 +30,7 @@
 #include "csvsplits.hxx"
 
 namespace svtools { class ColorConfig; }
+namespace weld { class Menu; }
 class EditEngine;
 class ScAsciiOptions;
 class ScCsvTableBox;
diff --git a/sc/source/ui/miscdlgs/acredlin.cxx 
b/sc/source/ui/miscdlgs/acredlin.cxx
index 7a90157239b1..6892f42c826d 100644
--- a/sc/source/ui/miscdlgs/acredlin.cxx
+++ b/sc/source/ui/miscdlgs/acredlin.cxx
@@ -24,6 +24,7 @@
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/basedlgs.hxx>
 #include <vcl/commandevent.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <o3tl/string_view.hxx>
 
 #include <acredlin.hxx>
diff --git a/sc/source/ui/navipi/content.cxx b/sc/source/ui/navipi/content.cxx
index b8fb2c1cc30a..435a8cebd115 100644
--- a/sc/source/ui/navipi/content.cxx
+++ b/sc/source/ui/navipi/content.cxx
@@ -29,6 +29,7 @@
 #include <sfx2/viewfrm.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <osl/diagnose.h>
 #include <tools/urlobj.hxx>
 #include <sal/log.hxx>
diff --git a/sc/source/ui/navipi/scenwnd.cxx b/sc/source/ui/navipi/scenwnd.cxx
index 07279d17715d..5b2be5172c61 100644
--- a/sc/source/ui/navipi/scenwnd.cxx
+++ b/sc/source/ui/navipi/scenwnd.cxx
@@ -26,6 +26,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/event.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <navipi.hxx>
 #include <sc.hrc>
diff --git a/sc/source/ui/view/tabcont.cxx b/sc/source/ui/view/tabcont.cxx
index 0ce733703d0a..cdb77fd4645b 100644
--- a/sc/source/ui/view/tabcont.cxx
+++ b/sc/source/ui/view/tabcont.cxx
@@ -24,6 +24,7 @@
 #include <tools/urlobj.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <tabcont.hxx>
 #include <tabvwsh.hxx>
diff --git a/sd/source/ui/animations/CustomAnimationList.cxx 
b/sd/source/ui/animations/CustomAnimationList.cxx
index e2ee44ce4f2a..141c7445e243 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -38,6 +38,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <tools/debug.hxx>
 #include <tools/gen.hxx>
diff --git a/sd/source/ui/annotations/annotationwindow.cxx 
b/sd/source/ui/annotations/annotationwindow.cxx
index 721264df9f33..fb7200c211e3 100644
--- a/sd/source/ui/annotations/annotationwindow.cxx
+++ b/sd/source/ui/annotations/annotationwindow.cxx
@@ -49,6 +49,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/ptrstyle.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <strings.hrc>
 #include "annotationwindow.hxx"
diff --git a/sd/source/ui/app/scalectrl.cxx b/sd/source/ui/app/scalectrl.cxx
index 0f3b89f012d2..208bacb89ad1 100644
--- a/sd/source/ui/app/scalectrl.cxx
+++ b/sd/source/ui/app/scalectrl.cxx
@@ -22,6 +22,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/status.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <sfx2/bindings.hxx>
 #include <sfx2/viewfrm.hxx>
diff --git a/sd/source/ui/app/sdpopup.cxx b/sd/source/ui/app/sdpopup.cxx
index 8c9607421be7..622b77a70ea8 100644
--- a/sd/source/ui/app/sdpopup.cxx
+++ b/sd/source/ui/app/sdpopup.cxx
@@ -26,6 +26,7 @@
 #include <sfx2/docfile.hxx>
 #include <unotools/useroptions.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <strings.hrc>
 #include <sdpopup.hxx>
diff --git a/sd/source/ui/app/tmplctrl.cxx b/sd/source/ui/app/tmplctrl.cxx
index 29d6a7f77ca0..58f68114abbd 100644
--- a/sd/source/ui/app/tmplctrl.cxx
+++ b/sd/source/ui/app/tmplctrl.cxx
@@ -20,6 +20,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/status.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <svl/stritem.hxx>
 #include <sfx2/dispatch.hxx>
diff --git a/sd/source/ui/dlg/BulletAndPositionDlg.cxx 
b/sd/source/ui/dlg/BulletAndPositionDlg.cxx
index 312dd7425487..a2aa3d155c88 100644
--- a/sd/source/ui/dlg/BulletAndPositionDlg.cxx
+++ b/sd/source/ui/dlg/BulletAndPositionDlg.cxx
@@ -42,6 +42,7 @@
 #include <svl/stritem.hxx>
 #include <sal/log.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <svx/SvxNumOptionsTabPageHelper.hxx>
 #include <View.hxx>
 #include <drawdoc.hxx>
diff --git a/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx 
b/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx
index aa222e81766a..05846b61661f 100644
--- a/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx
+++ b/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx
@@ -28,6 +28,7 @@
 #include <EventMultiplexer.hxx>
 #include <DrawDocShell.hxx>
 #include <osl/diagnose.h>
+#include <vcl/weld/Menu.hxx>
 
 #include <helpids.h>
 
diff --git a/sd/source/ui/sidebar/LayoutMenu.cxx 
b/sd/source/ui/sidebar/LayoutMenu.cxx
index 47dd26289c97..d235943972c5 100644
--- a/sd/source/ui/sidebar/LayoutMenu.cxx
+++ b/sd/source/ui/sidebar/LayoutMenu.cxx
@@ -53,6 +53,7 @@
 #include <utility>
 #include <vcl/commandevent.hxx>
 #include <vcl/image.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <xmloff/autolayout.hxx>
 #include <comphelper/lok.hxx>
 
diff --git a/sd/source/ui/sidebar/MasterPagesSelector.hxx 
b/sd/source/ui/sidebar/MasterPagesSelector.hxx
index a170bf16b5ae..93162ddf9c63 100644
--- a/sd/source/ui/sidebar/MasterPagesSelector.hxx
+++ b/sd/source/ui/sidebar/MasterPagesSelector.hxx
@@ -26,6 +26,7 @@
 #include <vcl/vclptr.hxx>
 #include <vcl/virdev.hxx>
 #include <vcl/weld/IconView.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/idle.hxx>
 #include <sfx2/sidebar/ILayoutableWindow.hxx>
diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx 
b/sd/source/ui/slideshow/slideshowimpl.cxx
index 4ee3fc9acb70..e5248d2a17d8 100644
--- a/sd/source/ui/slideshow/slideshowimpl.cxx
+++ b/sd/source/ui/slideshow/slideshowimpl.cxx
@@ -76,6 +76,7 @@
 #include <vcl/canvastools.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 
 #include <vcl/settings.hxx>
diff --git a/sd/source/ui/table/TableDesignPane.cxx 
b/sd/source/ui/table/TableDesignPane.cxx
index b518b49535be..9c3fdb3306af 100644
--- a/sd/source/ui/table/TableDesignPane.cxx
+++ b/sd/source/ui/table/TableDesignPane.cxx
@@ -37,6 +37,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <tools/debug.hxx>
 #include <comphelper/diagnose_ex.hxx>
diff --git a/sd/source/ui/view/drviews4.cxx b/sd/source/ui/view/drviews4.cxx
index 3bf41239a1d3..68d699996118 100644
--- a/sd/source/ui/view/drviews4.cxx
+++ b/sd/source/ui/view/drviews4.cxx
@@ -40,6 +40,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/dialoghelper.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 
 #include <app.hrc>
diff --git a/sfx2/source/appl/newhelp.cxx b/sfx2/source/appl/newhelp.cxx
index 0ad758dc8488..721f7431195e 100644
--- a/sfx2/source/appl/newhelp.cxx
+++ b/sfx2/source/appl/newhelp.cxx
@@ -81,6 +81,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/unohelp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 
 #include <ucbhelper/content.hxx>
diff --git a/sfx2/source/control/charmapcontainer.cxx 
b/sfx2/source/control/charmapcontainer.cxx
index f52b2b4e7f08..c553d8d89af6 100644
--- a/sfx2/source/control/charmapcontainer.cxx
+++ b/sfx2/source/control/charmapcontainer.cxx
@@ -28,6 +28,7 @@
 #include <sfx2/strings.hrc>
 #include <sfx2/sfxresid.hxx>
 #include <vcl/commandevent.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 
 #include <unicode/uchar.h>
diff --git a/sfx2/source/control/templatedefaultview.cxx 
b/sfx2/source/control/templatedefaultview.cxx
index d45196736f59..35563613600d 100644
--- a/sfx2/source/control/templatedefaultview.cxx
+++ b/sfx2/source/control/templatedefaultview.cxx
@@ -13,6 +13,7 @@
 #include <sfx2/sfxresid.hxx>
 #include <vcl/event.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <sfx2/strings.hrc>
 
diff --git a/sfx2/source/control/templatedlglocalview.cxx 
b/sfx2/source/control/templatedlglocalview.cxx
index 78fd122d38fb..4ce5632324f6 100644
--- a/sfx2/source/control/templatedlglocalview.cxx
+++ b/sfx2/source/control/templatedlglocalview.cxx
@@ -19,6 +19,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/event.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <sfx2/doctempl.hxx>
 #include <helpids.h>
 #include <bitmaps.hlst>
diff --git a/sfx2/source/control/templatelocalview.cxx 
b/sfx2/source/control/templatelocalview.cxx
index e0f32d4445eb..79c52abafe52 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -19,6 +19,7 @@
 #include <tools/urlobj.hxx>
 #include <unotools/moduleoptions.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/commandevent.hxx>
 #include <vcl/event.hxx>
diff --git a/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx 
b/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx
index 59fa2df28d33..bdb4b0fb7db2 100644
--- a/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx
+++ b/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx
@@ -46,6 +46,7 @@
 #include <comphelper/extract.hxx>
 
 #include <vcl/settings.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <i18nlangtag/languagetag.hxx>
 
 using namespace css;
diff --git a/sfx2/source/dialog/StyleList.cxx b/sfx2/source/dialog/StyleList.cxx
index 8af452c0cac0..d854e18eba55 100644
--- a/sfx2/source/dialog/StyleList.cxx
+++ b/sfx2/source/dialog/StyleList.cxx
@@ -29,6 +29,7 @@
 #include <vcl/event.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <vcl/window.hxx>
 #include <svl/intitem.hxx>
diff --git a/sfx2/source/dialog/backingwindow.cxx 
b/sfx2/source/dialog/backingwindow.cxx
index 3ac6aa9e4de4..444848e2dfd0 100644
--- a/sfx2/source/dialog/backingwindow.cxx
+++ b/sfx2/source/dialog/backingwindow.cxx
@@ -26,6 +26,7 @@
 #include <vcl/svapp.hxx>
 #include <vcl/syswin.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <unotools/historyoptions.hxx>
 #include <unotools/moduleoptions.hxx>
diff --git a/sfx2/source/dialog/templdlg.cxx b/sfx2/source/dialog/templdlg.cxx
index 4a1e875bc1f7..477433ab6b6e 100644
--- a/sfx2/source/dialog/templdlg.cxx
+++ b/sfx2/source/dialog/templdlg.cxx
@@ -50,6 +50,7 @@
 #include <sfx2/strings.hrc>
 #include <helpids.h>
 #include <sfx2/viewfrm.hxx>
+#include <vcl/weld/Menu.hxx>
 
 using namespace css;
 using namespace css::beans;
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 22f4ef55e1f9..1db52711fe42 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -36,6 +36,7 @@
 #include <vcl/event.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 
 #include <com/sun/star/beans/NamedValue.hpp>
diff --git a/sfx2/source/sidebar/SidebarController.cxx 
b/sfx2/source/sidebar/SidebarController.cxx
index 63a681f7aa2d..2ce54ec22728 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -43,6 +43,7 @@
 #include <vcl/uitest/eventdescription.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/vclevent.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <splitwin.hxx>
 #include <comphelper/diagnose_ex.hxx>
 #include <tools/json_writer.hxx>
diff --git a/sfx2/source/sidebar/TabBar.cxx b/sfx2/source/sidebar/TabBar.cxx
index 1506c1b7cf21..4bd98e1143c4 100644
--- a/sfx2/source/sidebar/TabBar.cxx
+++ b/sfx2/source/sidebar/TabBar.cxx
@@ -32,6 +32,7 @@
 #include <vcl/commandinfoprovider.hxx>
 #include <vcl/event.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <svtools/acceleratorexecute.hxx>
 #include <osl/diagnose.h>
 
diff --git a/starmath/source/ElementsDockingWindow.cxx 
b/starmath/source/ElementsDockingWindow.cxx
index 60d29ccd999d..709f41bb0589 100644
--- a/starmath/source/ElementsDockingWindow.cxx
+++ b/starmath/source/ElementsDockingWindow.cxx
@@ -39,6 +39,7 @@
 #include <vcl/uitest/eventdescription.hxx>
 #include <vcl/uitest/logger.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <unordered_map>
 
diff --git a/starmath/source/SmElementsPanel.cxx 
b/starmath/source/SmElementsPanel.cxx
index 804be4600241..842197d19bd3 100644
--- a/starmath/source/SmElementsPanel.cxx
+++ b/starmath/source/SmElementsPanel.cxx
@@ -25,6 +25,7 @@
 #include <svl/stritem.hxx>
 #include <svl/itemset.hxx>
 #include <svl/hint.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include "SmElementsPanel.hxx"
 #include <starmath.hrc>
diff --git a/svx/source/dialog/charmap.cxx b/svx/source/dialog/charmap.cxx
index 694fb39eaa0b..fec4800f1599 100644
--- a/svx/source/dialog/charmap.cxx
+++ b/svx/source/dialog/charmap.cxx
@@ -27,6 +27,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/virdev.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <svx/ucsubset.hxx>
 
diff --git a/svx/source/dialog/imapwnd.hxx b/svx/source/dialog/imapwnd.hxx
index d08f18c12ce8..0d6c9b1eb622 100644
--- a/svx/source/dialog/imapwnd.hxx
+++ b/svx/source/dialog/imapwnd.hxx
@@ -26,6 +26,7 @@
 #include <sfx2/frame.hxx>
 #include <svx/graphctl.hxx>
 #include <svl/itempool.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <com/sun/star/frame/XFrame.hpp>
 
diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx
index 2a13725fc70d..b402d8d19089 100644
--- a/svx/source/dialog/svxruler.cxx
+++ b/svx/source/dialog/svxruler.cxx
@@ -27,6 +27,7 @@
 #include <vcl/svapp.hxx>
 #include <vcl/virdev.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <svl/eitem.hxx>
 #include <svl/rectitem.hxx>
diff --git a/svx/source/fmcomp/fmgridcl.cxx b/svx/source/fmcomp/fmgridcl.cxx
index fcf454785dd6..0583ee5313f8 100644
--- a/svx/source/fmcomp/fmgridcl.cxx
+++ b/svx/source/fmcomp/fmgridcl.cxx
@@ -69,6 +69,7 @@
 #include <vcl/help.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <sal/log.hxx>
 #include <i18nlangtag/languagetag.hxx>
 #include <memory>
diff --git a/svx/source/fmcomp/gridctrl.cxx b/svx/source/fmcomp/gridctrl.cxx
index 5894c81dbeea..ffe63829d8ee 100644
--- a/svx/source/fmcomp/gridctrl.cxx
+++ b/svx/source/fmcomp/gridctrl.cxx
@@ -48,6 +48,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/weld/weldutils.hxx>
 
diff --git a/svx/source/form/datanavi.cxx b/svx/source/form/datanavi.cxx
index 3ffed84fbbb7..c927daa89dfc 100644
--- a/svx/source/form/datanavi.cxx
+++ b/svx/source/form/datanavi.cxx
@@ -44,6 +44,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/event.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <com/sun/star/beans/PropertyAttribute.hpp>
 #include <com/sun/star/container/XSet.hpp>
diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx
index d2bb8eed49b6..8d06f0d36bf7 100644
--- a/svx/source/form/filtnav.cxx
+++ b/svx/source/form/filtnav.cxx
@@ -50,6 +50,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <bitmaps.hlst>
 
diff --git a/svx/source/form/fmshimp.cxx b/svx/source/form/fmshimp.cxx
index 52e36e4e16b5..d38f93a5b983 100644
--- a/svx/source/form/fmshimp.cxx
+++ b/svx/source/form/fmshimp.cxx
@@ -95,6 +95,7 @@
 #include <comphelper/configuration.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/window.hxx>
 
diff --git a/svx/source/form/navigatortree.cxx 
b/svx/source/form/navigatortree.cxx
index 0560e5df2f6e..d058938f40a2 100644
--- a/svx/source/form/navigatortree.cxx
+++ b/svx/source/form/navigatortree.cxx
@@ -56,6 +56,7 @@
 #include <bitmaps.hlst>
 #include <vcl/commandevent.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 namespace svxform
 {
diff --git a/svx/source/gallery2/galbrws1.cxx b/svx/source/gallery2/galbrws1.cxx
index ca3064aa568c..3c20efca9e2e 100644
--- a/svx/source/gallery2/galbrws1.cxx
+++ b/svx/source/gallery2/galbrws1.cxx
@@ -26,6 +26,7 @@
 #include <vcl/event.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/graphicfilter.hxx>
 #include <vcl/virdev.hxx>
diff --git a/svx/source/mnuctrls/clipboardctl.cxx 
b/svx/source/mnuctrls/clipboardctl.cxx
index 6288e34a9a75..729df99a560d 100644
--- a/svx/source/mnuctrls/clipboardctl.cxx
+++ b/svx/source/mnuctrls/clipboardctl.cxx
@@ -25,6 +25,7 @@
 #include <svl/voiditem.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/toolbox.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <svx/clipboardctl.hxx>
 #include <svx/clipfmtitem.hxx>
diff --git a/svx/source/stbctrls/pszctrl.cxx b/svx/source/stbctrls/pszctrl.cxx
index 6163bd1d3830..fd0dd65991bc 100644
--- a/svx/source/stbctrls/pszctrl.cxx
+++ b/svx/source/stbctrls/pszctrl.cxx
@@ -28,6 +28,7 @@
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <svl/stritem.hxx>
diff --git a/svx/source/stbctrls/selctrl.cxx b/svx/source/stbctrls/selctrl.cxx
index db6482869d20..d562dde26a50 100644
--- a/svx/source/stbctrls/selctrl.cxx
+++ b/svx/source/stbctrls/selctrl.cxx
@@ -26,6 +26,7 @@
 #include <vcl/status.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <svl/intitem.hxx>
 #include <tools/debug.hxx>
diff --git a/svx/source/stbctrls/xmlsecctrl.cxx 
b/svx/source/stbctrls/xmlsecctrl.cxx
index d962186aef15..51d2d8bae923 100644
--- a/svx/source/stbctrls/xmlsecctrl.cxx
+++ b/svx/source/stbctrls/xmlsecctrl.cxx
@@ -26,6 +26,7 @@
 #include <vcl/status.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <sfx2/signaturestate.hxx>
 #include <sfx2/module.hxx>
diff --git a/svx/source/stbctrls/zoomctrl.cxx b/svx/source/stbctrls/zoomctrl.cxx
index d46fd10a771a..81adcadeb790 100644
--- a/svx/source/stbctrls/zoomctrl.cxx
+++ b/svx/source/stbctrls/zoomctrl.cxx
@@ -27,6 +27,7 @@
 #include <vcl/svapp.hxx>
 #include <vcl/status.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <vcl/settings.hxx>
 #include <tools/urlobj.hxx>
diff --git a/svx/source/tbxctrls/StylesPreviewWindow.cxx 
b/svx/source/tbxctrls/StylesPreviewWindow.cxx
index 8230b61ec96a..f17fb9db4ad0 100644
--- a/svx/source/tbxctrls/StylesPreviewWindow.cxx
+++ b/svx/source/tbxctrls/StylesPreviewWindow.cxx
@@ -34,6 +34,7 @@
 #include <vcl/glyphitemcache.hxx>
 #include <vcl/virdev.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <editeng/editids.hrc>
 #include <editeng/fontitem.hxx>
diff --git a/svx/source/tbxctrls/SvxPresetListBox.cxx 
b/svx/source/tbxctrls/SvxPresetListBox.cxx
index f64e26731c25..bb48da9dc65c 100644
--- a/svx/source/tbxctrls/SvxPresetListBox.cxx
+++ b/svx/source/tbxctrls/SvxPresetListBox.cxx
@@ -23,6 +23,7 @@
 #include <vcl/image.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 
 SvxPresetListBox::SvxPresetListBox(std::unique_ptr<weld::ScrolledWindow> 
pWindow)
     : ValueSet(std::move(pWindow))
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index efef886f939d..3754abd940c3 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -32,6 +32,7 @@
 #include <vcl/event.hxx>
 #include <vcl/toolbox.hxx>
 #include <vcl/vclptr.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/TreeView.hxx>
 #include <vcl/weld/customweld.hxx>
 #include <vcl/weld/weldutils.hxx>
diff --git a/sw/source/uibase/misc/redlndlg.cxx 
b/sw/source/uibase/misc/redlndlg.cxx
index 0923cf31a979..e9d3acb689c5 100644
--- a/sw/source/uibase/misc/redlndlg.cxx
+++ b/sw/source/uibase/misc/redlndlg.cxx
@@ -27,6 +27,7 @@
 #include <svx/postattr.hxx>
 #include <utility>
 #include <vcl/commandevent.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <swtypes.hxx>
 #include <wrtsh.hxx>
 #include <view.hxx>
diff --git a/sw/source/uibase/ribbar/inputwin.cxx 
b/sw/source/uibase/ribbar/inputwin.cxx
index de77cd9d7e30..071a59e391ff 100644
--- a/sw/source/uibase/ribbar/inputwin.cxx
+++ b/sw/source/uibase/ribbar/inputwin.cxx
@@ -32,6 +32,7 @@
 #include <svl/stritem.hxx>
 #include <vcl/event.hxx>
 #include <vcl/image.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 
 #include <swtypes.hxx>
diff --git a/sw/source/uibase/sidebar/CommentsPanel.cxx 
b/sw/source/uibase/sidebar/CommentsPanel.cxx
index 1f1018a6c586..037af88df97f 100644
--- a/sw/source/uibase/sidebar/CommentsPanel.cxx
+++ b/sw/source/uibase/sidebar/CommentsPanel.cxx
@@ -47,6 +47,7 @@
 #include <editeng/editeng.hxx>
 #include <svtools/ctrlbox.hxx>
 #include <vcl/event.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <strings.hrc>
 #include <cmdid.h>
diff --git a/sw/source/uibase/utlui/bookctrl.cxx 
b/sw/source/uibase/utlui/bookctrl.cxx
index 88798a258e2a..6e1ed1105788 100644
--- a/sw/source/uibase/utlui/bookctrl.cxx
+++ b/sw/source/uibase/utlui/bookctrl.cxx
@@ -25,6 +25,7 @@
 #include <vcl/event.hxx>
 #include <vcl/status.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <cmdid.h>
 #include <swmodule.hxx>
diff --git a/sw/source/uibase/utlui/content.cxx 
b/sw/source/uibase/utlui/content.cxx
index 6363da4d3c45..b95e4c77ff26 100644
--- a/sw/source/uibase/utlui/content.cxx
+++ b/sw/source/uibase/utlui/content.cxx
@@ -33,6 +33,7 @@
 #include <o3tl/sorted_vector.hxx>
 #include <utility>
 #include <vcl/commandevent.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <sot/formats.hxx>
 #include <o3tl/string_view.hxx>
diff --git a/sw/source/uibase/utlui/glbltree.cxx 
b/sw/source/uibase/utlui/glbltree.cxx
index 32f883ac1925..98ee87f12550 100644
--- a/sw/source/uibase/utlui/glbltree.cxx
+++ b/sw/source/uibase/utlui/glbltree.cxx
@@ -31,6 +31,7 @@
 #include <sot/filelist.hxx>
 #include <svl/eitem.hxx>
 #include <vcl/graphicfilter.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <osl/diagnose.h>
 
 #include <sfx2/docinsert.hxx>
diff --git a/sw/source/uibase/utlui/tmplctrl.cxx 
b/sw/source/uibase/utlui/tmplctrl.cxx
index 7420a2f6a74d..ee72691a4895 100644
--- a/sw/source/uibase/utlui/tmplctrl.cxx
+++ b/sw/source/uibase/utlui/tmplctrl.cxx
@@ -24,6 +24,7 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/status.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 
 #include <swtypes.hxx>
diff --git a/sw/source/uibase/utlui/unotools.cxx 
b/sw/source/uibase/utlui/unotools.cxx
index 5d6467d001e2..fc7336527618 100644
--- a/sw/source/uibase/utlui/unotools.cxx
+++ b/sw/source/uibase/utlui/unotools.cxx
@@ -38,6 +38,7 @@
 #include <vcl/svapp.hxx>
 #include <vcl/virdev.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weld.hxx>
 #include <com/sun/star/frame/Desktop.hpp>
 #include <com/sun/star/text/XTextViewCursorSupplier.hpp>
diff --git a/sw/source/uibase/wrtsh/wrtsh2.cxx 
b/sw/source/uibase/wrtsh/wrtsh2.cxx
index cb31887afbbc..94bd4ac7e8ec 100644
--- a/sw/source/uibase/wrtsh/wrtsh2.cxx
+++ b/sw/source/uibase/wrtsh/wrtsh2.cxx
@@ -64,6 +64,7 @@
 
 #include <fldmgr.hxx>
 #include <vcl/weld/Builder.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/weldutils.hxx>
 #include <strings.hrc>
 #include <officecfg/Office/Common.hxx>
diff --git a/vcl/inc/qt5/QtInstanceBuilder.hxx 
b/vcl/inc/qt5/QtInstanceBuilder.hxx
index 32cdb2afa003..ad49cdd3a15b 100644
--- a/vcl/inc/qt5/QtInstanceBuilder.hxx
+++ b/vcl/inc/qt5/QtInstanceBuilder.hxx
@@ -23,6 +23,7 @@
 #include <vcl/weld/Entry.hxx>
 #include <vcl/weld/EntryTreeView.hxx>
 #include <vcl/weld/FormattedSpinButton.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/MetricSpinButton.hxx>
 #include <vcl/weld/Notebook.hxx>
 #include <vcl/weld/Paned.hxx>
diff --git a/vcl/inc/qt5/QtInstanceMenu.hxx b/vcl/inc/qt5/QtInstanceMenu.hxx
index 99050fe64e58..c6f8d3977858 100644
--- a/vcl/inc/qt5/QtInstanceMenu.hxx
+++ b/vcl/inc/qt5/QtInstanceMenu.hxx
@@ -9,7 +9,7 @@
 
 #pragma once
 
-#include <vcl/weld/weld.hxx>
+#include <vcl/weld/Menu.hxx>
 
 #include <QtCore/QPointer>
 #include <QtWidgets/QMenu>
diff --git a/vcl/inc/salvtables.hxx b/vcl/inc/salvtables.hxx
index e42a032f1298..08d64df6c2d7 100644
--- a/vcl/inc/salvtables.hxx
+++ b/vcl/inc/salvtables.hxx
@@ -17,6 +17,7 @@
 #include <vcl/weld/Entry.hxx>
 #include <vcl/weld/EntryTreeView.hxx>
 #include <vcl/weld/FormattedSpinButton.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/MetricSpinButton.hxx>
 #include <vcl/weld/Notebook.hxx>
 #include <vcl/weld/Scrollbar.hxx>
diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx
index 8cbe8673a88e..292592157e11 100644
--- a/vcl/unx/gtk3/gtkinst.cxx
+++ b/vcl/unx/gtk3/gtkinst.cxx
@@ -41,6 +41,7 @@
 #include <vcl/weld/DrawingArea.hxx>
 #include <vcl/weld/Builder.hxx>
 #include <vcl/weld/FormattedSpinButton.hxx>
+#include <vcl/weld/Menu.hxx>
 #include <vcl/weld/MetricSpinButton.hxx>
 #include <vcl/weld/Notebook.hxx>
 #include <vcl/weld/Paned.hxx>

Reply via email to