avmedia/source/viewer/mediawindow.cxx                   |    1 
 basctl/source/basicide/basobj3.cxx                      |    1 
 basctl/source/basicide/iderdll.cxx                      |    1 
 basctl/source/basicide/moduldl2.cxx                     |    1 
 cui/source/dialogs/hldocntp.cxx                         |    1 
 cui/source/options/optgdlg.cxx                          |    1 
 cui/source/options/optupdt.cxx                          |    1 
 cui/source/tabpages/autocdlg.cxx                        |    1 
 desktop/qa/desktop_lib/test_desktop_lib.cxx             |    1 
 forms/source/component/ImageControl.cxx                 |    2 +
 forms/source/richtext/richtextcontrol.cxx               |    1 
 include/IwyuFilter_include.yaml                         |    3 ++
 include/sfx2/emojicontrol.hxx                           |    5 +--
 include/sfx2/emojipopup.hxx                             |    2 -
 include/sfx2/emojiview.hxx                              |    2 -
 include/sfx2/event.hxx                                  |    5 +--
 include/sfx2/evntconf.hxx                               |    7 +----
 include/sfx2/fcontnr.hxx                                |   21 ++++++----------
 include/sfx2/filedlghelper.hxx                          |   18 +++++++------
 include/sfx2/frame.hxx                                  |   15 -----------
 include/sfx2/frmdescr.hxx                               |    1 
 include/sfx2/frmhtml.hxx                                |    4 ---
 include/sfx2/frmhtmlw.hxx                               |   12 +++------
 include/sfx2/ipclient.hxx                               |    8 +++---
 include/sfx2/linkmgr.hxx                                |    1 
 include/sfx2/linksrc.hxx                                |    9 +++---
 include/sfx2/lnkbase.hxx                                |    7 +++--
 include/sfx2/lokcharthelper.hxx                         |    4 +--
 include/sfx2/lokhelper.hxx                              |    2 -
 include/sfx2/mailmodelapi.hxx                           |   12 ++++++---
 include/sfx2/mgetempl.hxx                               |   11 +++++---
 include/sfx2/mieclip.hxx                                |    6 ----
 include/sfx2/module.hxx                                 |   13 +++------
 include/sfx2/msg.hxx                                    |    3 --
 include/sfx2/msgpool.hxx                                |    3 --
 sc/IwyuFilter_sc.yaml                                   |    3 ++
 sc/inc/scmod.hxx                                        |    1 
 sc/source/core/tool/ddelink.cxx                         |    1 
 sc/source/ui/dbgui/csvgrid.cxx                          |    2 +
 sc/source/ui/docshell/docsh4.cxx                        |    1 
 sc/source/ui/docshell/servobj.cxx                       |    1 
 sc/source/ui/drawfunc/fuins2.cxx                        |    1 
 sc/source/ui/inc/anyrefdg.hxx                           |    1 
 sc/source/ui/unoobj/appluno.cxx                         |    1 
 sc/source/ui/unoobj/scdetect.cxx                        |    2 +
 sc/source/ui/view/viewfun4.cxx                          |    1 
 sd/IwyuFilter_sd.yaml                                   |    2 +
 sd/inc/sdmod.hxx                                        |    1 
 sd/source/core/drawdoc3.cxx                             |    1 
 sd/source/core/drawdoc4.cxx                             |    1 
 sd/source/ui/dlg/PhotoAlbumDialog.cxx                   |    1 
 sd/source/ui/dlg/vectdlg.cxx                            |    1 
 sd/source/ui/func/fuinsert.cxx                          |    1 
 sd/source/ui/view/drviews2.cxx                          |    1 
 sfx2/source/appl/appcfg.cxx                             |    1 
 sfx2/source/appl/appopen.cxx                            |    1 
 sfx2/source/appl/childwin.cxx                           |    1 
 sfx2/source/appl/impldde.hxx                            |    1 
 sfx2/source/appl/shutdownicon.cxx                       |    1 
 sfx2/source/bastyp/frmhtml.cxx                          |    1 
 sfx2/source/bastyp/frmhtmlw.cxx                         |    2 +
 sfx2/source/config/evntconf.cxx                         |    1 
 sfx2/source/control/emojicontrol.cxx                    |    1 
 sfx2/source/control/sfxstatuslistener.cxx               |    1 
 sfx2/source/control/unoctitm.cxx                        |    1 
 sfx2/source/dialog/filedlghelper.cxx                    |    1 
 sfx2/source/dialog/filedlgimpl.hxx                      |    1 
 sfx2/source/dialog/filtergrouping.cxx                   |    1 
 sfx2/source/dialog/partwnd.cxx                          |    1 
 sfx2/source/dialog/splitwin.cxx                         |    2 +
 sfx2/source/doc/objcont.cxx                             |    1 
 sfx2/source/doc/sfxbasemodel.cxx                        |    1 
 sfx2/source/doc/templatedlg.cxx                         |    1 
 sfx2/source/inc/workwin.hxx                             |    1 
 sfx2/source/sidebar/SidebarToolBox.cxx                  |    1 
 sfx2/source/statbar/stbitem.cxx                         |    2 +
 sfx2/source/toolbox/tbxitem.cxx                         |    1 
 sfx2/source/view/classificationcontroller.cxx           |    1 
 sfx2/source/view/classificationhelper.cxx               |    2 +
 sfx2/source/view/ipclient.cxx                           |    1 
 sfx2/source/view/lokcharthelper.cxx                     |    1 
 sfx2/source/view/lokhelper.cxx                          |    1 
 sfx2/source/view/viewfrm.cxx                            |    1 
 starmath/IwyuFilter_starmath.yaml                       |    3 ++
 starmath/inc/smmod.hxx                                  |    1 
 svx/source/form/filtnav.cxx                             |    2 +
 svx/source/form/fmtextcontrolshell.cxx                  |    1 
 svx/source/form/fmvwimp.cxx                             |    1 
 svx/source/form/tabwin.cxx                              |    1 
 svx/source/gallery2/galctrl.cxx                         |    2 +
 svx/source/sidebar/text/TextCharacterSpacingControl.cxx |    1 
 svx/source/stbctrls/pszctrl.cxx                         |    3 ++
 svx/source/stbctrls/xmlsecctrl.cxx                      |    2 +
 svx/source/svdraw/svdograf.cxx                          |    1 
 svx/source/svdraw/svdoole2.cxx                          |    1 
 sw/inc/swmodule.hxx                                     |    1 
 sw/qa/extras/uiwriter/uiwriter.cxx                      |    1 
 sw/source/core/doc/DocumentContentOperationsManager.cxx |    1 
 sw/source/core/doc/doclay.cxx                           |    1 
 sw/source/core/doc/swserv.cxx                           |    1 
 sw/source/core/docnode/section.cxx                      |    1 
 sw/source/core/docnode/swbaslnk.cxx                     |    1 
 sw/source/core/fields/ddefld.cxx                        |    1 
 sw/source/core/frmedt/fefly1.cxx                        |    1 
 sw/source/core/frmedt/feshview.cxx                      |    1 
 sw/source/core/ole/ndole.cxx                            |    1 
 sw/source/core/swg/SwXMLTextBlocks.cxx                  |    1 
 sw/source/core/text/EnhancedPDFExportHelper.cxx         |    1 
 sw/source/filter/html/htmlplug.cxx                      |    2 +
 sw/source/filter/html/wrthtml.cxx                       |    1 
 sw/source/filter/html/wrthtml.hxx                       |    1 
 sw/source/filter/ww8/docxattributeoutput.cxx            |    1 
 sw/source/filter/ww8/rtfattributeoutput.cxx             |    1 
 sw/source/filter/xml/xmltexte.cxx                       |    1 
 sw/source/ui/chrdlg/chardlg.cxx                         |    1 
 sw/source/ui/dbui/mmresultdialogs.cxx                   |    1 
 sw/source/ui/dialog/macassgn.cxx                        |    1 
 sw/source/ui/misc/glossary.cxx                          |    2 +
 sw/source/ui/vba/vbaapplication.cxx                     |    1 
 sw/source/uibase/app/docsh2.cxx                         |    1 
 sw/source/uibase/dbui/dbmgr.cxx                         |    1 
 sw/source/uibase/dochdl/gloshdl.cxx                     |    1 
 sw/source/uibase/sidebar/PageMarginControl.cxx          |    1 
 sw/source/uibase/sidebar/PageSizeControl.cxx            |    1 
 sw/source/uibase/utlui/bookctrl.cxx                     |    1 
 sw/source/uibase/utlui/glbltree.cxx                     |    1 
 sw/source/uibase/wrtsh/wrtsh1.cxx                       |    1 
 127 files changed, 190 insertions(+), 106 deletions(-)

New commits:
commit 1d39c5aa7bd6419060ed10d9fbdc2a643000f363
Author:     Gabor Kelemen <kelemen.gab...@nisz.hu>
AuthorDate: Sat Mar 23 13:17:16 2019 +0100
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Thu Mar 28 10:27:23 2019 +0100

    tdf#42949 Fix IWYU warnings in include/sfx2/[e-M]*
    
    Found with bin/find-unneeded-includes
    Only removal proposals are dealt with here.
    
    Change-Id: I6e97c7ed6c0211dfafee83b9bdbea672e415fc49
    Reviewed-on: https://gerrit.libreoffice.org/69715
    Tested-by: Jenkins
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>

diff --git a/avmedia/source/viewer/mediawindow.cxx 
b/avmedia/source/viewer/mediawindow.cxx
index 4cc6d4e043b4..81b8d968a36e 100644
--- a/avmedia/source/viewer/mediawindow.cxx
+++ b/avmedia/source/viewer/mediawindow.cxx
@@ -23,6 +23,7 @@
 #include <bitmaps.hlst>
 #include <strings.hrc>
 #include <tools/urlobj.hxx>
+#include <vcl/graph.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/weld.hxx>
 #include <unotools/pathoptions.hxx>
diff --git a/basctl/source/basicide/basobj3.cxx 
b/basctl/source/basicide/basobj3.cxx
index f9b50882cff7..1d9500ce4dcb 100644
--- a/basctl/source/basicide/basobj3.cxx
+++ b/basctl/source/basicide/basobj3.cxx
@@ -32,6 +32,7 @@
 #include <localizationmgr.hxx>
 #include <dlged.hxx>
 #include <com/sun/star/script/XLibraryContainerPassword.hpp>
+#include <sfx2/app.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/sfxsids.hrc>
 #include <sfx2/request.hxx>
diff --git a/basctl/source/basicide/iderdll.cxx 
b/basctl/source/basicide/iderdll.cxx
index 4fa61b7456ae..8659031a719f 100644
--- a/basctl/source/basicide/iderdll.cxx
+++ b/basctl/source/basicide/iderdll.cxx
@@ -35,6 +35,7 @@
 #include <com/sun/star/script/XLibraryContainerPassword.hpp>
 #include <unotools/resmgr.hxx>
 #include <vcl/settings.hxx>
+#include <sfx2/app.hxx>
 
 namespace basctl
 {
diff --git a/basctl/source/basicide/moduldl2.cxx 
b/basctl/source/basicide/moduldl2.cxx
index 728de23842fa..7494d288266b 100644
--- a/basctl/source/basicide/moduldl2.cxx
+++ b/basctl/source/basicide/moduldl2.cxx
@@ -27,6 +27,7 @@
 #include <svx/passwd.hxx>
 #include <ucbhelper/content.hxx>
 #include <rtl/uri.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/dinfdlg.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/filedlghelper.hxx>
diff --git a/cui/source/dialogs/hldocntp.cxx b/cui/source/dialogs/hldocntp.cxx
index def0a72ea767..39adc1b3d46b 100644
--- a/cui/source/dialogs/hldocntp.cxx
+++ b/cui/source/dialogs/hldocntp.cxx
@@ -21,6 +21,7 @@
 #include <osl/file.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
 #include <com/sun/star/awt/XTopWindow.hpp>
 #include <com/sun/star/uno/Reference.h>
 #include <com/sun/star/uno/Sequence.h>
diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index 38d020438273..6c31ddbcdc60 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -96,6 +96,7 @@
 #include <svtools/apearcfg.hxx>
 #include <svtools/optionsdrawinglayer.hxx>
 #include <svtools/restartdialog.hxx>
+#include <svtools/imgdef.hxx>
 #include <comphelper/solarmutex.hxx>
 
 #include <config_vclplug.h>
diff --git a/cui/source/options/optupdt.cxx b/cui/source/options/optupdt.cxx
index 33b70f558718..63c6a2959189 100644
--- a/cui/source/options/optupdt.cxx
+++ b/cui/source/options/optupdt.cxx
@@ -37,6 +37,7 @@
 #include <com/sun/star/setup/UpdateCheckConfig.hpp>
 #include <com/sun/star/configuration/ReadWriteAccess.hpp>
 #include <com/sun/star/beans/PropertyAttribute.hpp>
+#include <com/sun/star/beans/NamedValue.hpp>
 #include <osl/file.hxx>
 #include <osl/security.hxx>
 #include <sal/log.hxx>
diff --git a/cui/source/tabpages/autocdlg.cxx b/cui/source/tabpages/autocdlg.cxx
index 678b29bc503f..0438cdadddfe 100644
--- a/cui/source/tabpages/autocdlg.cxx
+++ b/cui/source/tabpages/autocdlg.cxx
@@ -25,6 +25,7 @@
 #include <sot/exchange.hxx>
 #include <vcl/transfer.hxx>
 #include <unotools/syslocale.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/objsh.hxx>
 #include <sfx2/viewsh.hxx>
 #include <unotools/charclass.hxx>
diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx 
b/desktop/qa/desktop_lib/test_desktop_lib.cxx
index 413b697be70a..9157580e8bb7 100644
--- a/desktop/qa/desktop_lib/test_desktop_lib.cxx
+++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx
@@ -24,6 +24,7 @@
 #include <vcl/scheduler.hxx>
 #include <comphelper/processfactory.hxx>
 #include <rtl/uri.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/objsh.hxx>
 #include <sfx2/lokhelper.hxx>
 #include <test/unoapi_test.hxx>
diff --git a/forms/source/component/ImageControl.cxx 
b/forms/source/component/ImageControl.cxx
index 6bfb2d3b829f..37b2eda2cb07 100644
--- a/forms/source/component/ImageControl.cxx
+++ b/forms/source/component/ImageControl.cxx
@@ -47,12 +47,14 @@
 #include <tools/stream.hxx>
 #include <tools/debug.hxx>
 #include <tools/diagnose_ex.h>
+#include <vcl/graph.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/window.hxx>
 #include <unotools/streamhelper.hxx>
 #include <comphelper/guarding.hxx>
 #include <comphelper/property.hxx>
 #include <comphelper/types.hxx>
+#include <cppuhelper/queryinterface.hxx>
 #include <unotools/ucbstreamhelper.hxx>
 #include <svl/urihelper.hxx>
 
diff --git a/forms/source/richtext/richtextcontrol.cxx 
b/forms/source/richtext/richtextcontrol.cxx
index 0d90d3541e60..c5f24075225a 100644
--- a/forms/source/richtext/richtextcontrol.cxx
+++ b/forms/source/richtext/richtextcontrol.cxx
@@ -38,6 +38,7 @@
 #include <svl/itemset.hxx>
 #include <svl/itempool.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 
 namespace frm
 {
diff --git a/include/IwyuFilter_include.yaml b/include/IwyuFilter_include.yaml
index 18363b93fbb3..a66056a04972 100644
--- a/include/IwyuFilter_include.yaml
+++ b/include/IwyuFilter_include.yaml
@@ -695,3 +695,6 @@ blacklist:
     include/sfx2/DocumentMetadataAccess.hxx:
     # base class has to be a complete type
     - com/sun/star/rdf/XDocumentMetadataAccess.hpp
+    include/sfx2/mieclip.hxx:
+    # Needed for implicit dtor
+    - tools/stream.hxx
diff --git a/include/sfx2/emojicontrol.hxx b/include/sfx2/emojicontrol.hxx
index d759de4725b4..132fe247b774 100644
--- a/include/sfx2/emojicontrol.hxx
+++ b/include/sfx2/emojicontrol.hxx
@@ -12,14 +12,13 @@
 
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
-#include <vcl/button.hxx>
 #include <vcl/tabctrl.hxx>
-#include <vcl/tabpage.hxx>
 #include <sfx2/tbxctrl.hxx>
-#include <com/sun/star/frame/XFrame.hpp>
 
 #define TAB_FONT_SIZE 15
 
+namespace com::sun::star::frame { class XFrame; }
+
 class EmojiView;
 class ThumbnailViewItem;
 enum class FILTER_CATEGORY;
diff --git a/include/sfx2/emojipopup.hxx b/include/sfx2/emojipopup.hxx
index 471df173e802..40d25ef57934 100644
--- a/include/sfx2/emojipopup.hxx
+++ b/include/sfx2/emojipopup.hxx
@@ -23,8 +23,6 @@
 #include <sfx2/tbxctrl.hxx>
 #include <sfx2/dllapi.h>
 
-#include <functional>
-
 class SFX2_DLLPUBLIC EmojiPopup : public SfxToolBoxControl
 {
 public:
diff --git a/include/sfx2/emojiview.hxx b/include/sfx2/emojiview.hxx
index 6c311d740e0a..8a08e1d8c75d 100644
--- a/include/sfx2/emojiview.hxx
+++ b/include/sfx2/emojiview.hxx
@@ -18,8 +18,6 @@
 #define ITEM_PADDING 5
 #define ITEM_MAX_TEXT_LENGTH 10
 
-class EmojiViewItem;
-
 enum class FILTER_CATEGORY
 {
     PEOPLE,
diff --git a/include/sfx2/event.hxx b/include/sfx2/event.hxx
index 8a797d3379e1..46208943b210 100644
--- a/include/sfx2/event.hxx
+++ b/include/sfx2/event.hxx
@@ -29,10 +29,11 @@
 #include <rtl/ustring.hxx>
 
 #include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/beans/PropertyValue.hpp>
 #include <com/sun/star/frame/XController2.hpp>
 #include <com/sun/star/view/PrintableState.hpp>
 
+namespace com::sun::star::beans { struct PropertyValue; }
+
 /**
   these values get stored in streams in a 16-bit value
 */
@@ -230,8 +231,6 @@ public:
                         { return xViewController; }
 };
 
-class Printer;
-
 class SfxPrintingHint : public SfxViewEventHint
 {
     css::view::PrintableState const mnPrintableState;
diff --git a/include/sfx2/evntconf.hxx b/include/sfx2/evntconf.hxx
index 86769b324f95..efd330260f53 100644
--- a/include/sfx2/evntconf.hxx
+++ b/include/sfx2/evntconf.hxx
@@ -22,16 +22,13 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 #include <sal/types.h>
-#include <vcl/fixed.hxx>
-#include <vcl/button.hxx>
 #include <sfx2/event.hxx>
-#include <sfx2/sfxsids.hrc>
-#include <svl/macitem.hxx>
+#include <svl/poolitem.hxx>
 #include <memory>
 #include <vector>
 
 class SfxObjectShell;
-class SvxMacroTableDtor;
+class SvxMacro;
 
 struct SFX2_DLLPUBLIC SfxEventName
 {
diff --git a/include/sfx2/fcontnr.hxx b/include/sfx2/fcontnr.hxx
index 091599e82b9f..6d62f8cfa561 100644
--- a/include/sfx2/fcontnr.hxx
+++ b/include/sfx2/fcontnr.hxx
@@ -22,24 +22,22 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 #include <sal/types.h>
-#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/beans/NamedValue.hpp>
-#include <com/sun/star/container/XNameAccess.hpp>
-#include <svl/poolitem.hxx>
-#include <vcl/window.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/link.hxx>
+#include <comphelper/documentconstants.hxx>
+#include <sot/formats.hxx>
 
-#include <sfx2/docfilt.hxx>
-
-#include <tools/ref.hxx>
 #include <memory>
 
-namespace vcl { class Window; }
+namespace com::sun::star::beans { struct NamedValue; }
+namespace com::sun::star::container { class XNameAccess; }
+namespace com::sun::star::uno { template <typename > class Sequence; }
+namespace com::sun::star::uno { template <typename > class Reference; }
+
 class ErrCode;
 class SfxFilter;
-class SfxObjectFactory;
 class SfxMedium;
 class SfxFilterContainer_Impl;
-class SfxFrame;
 
 
 class SFX2_DLLPUBLIC SfxFilterContainer
@@ -97,7 +95,6 @@ public:
     std::shared_ptr<const SfxFilter>    GetAnyFilter( SfxFilterFlags 
nMustg=SfxFilterFlags::NONE, SfxFilterFlags nDont=SFX_FILTER_NOTINSTALLED ) 
const;
 };
 
-class SfxFilterContainer_Impl;
 class SFX2_DLLPUBLIC SfxFilterMatcherIter
 
 {
diff --git a/include/sfx2/filedlghelper.hxx b/include/sfx2/filedlghelper.hxx
index 2e2104eeb7fc..42d6b53c0cfb 100644
--- a/include/sfx2/filedlghelper.hxx
+++ b/include/sfx2/filedlghelper.hxx
@@ -22,18 +22,16 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 #include <sal/types.h>
-#include <com/sun/star/awt/XWindow.hpp>
-#include <com/sun/star/uno/Reference.hxx>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <rtl/ref.hxx>
 #include <rtl/ustring.hxx>
+#include <comphelper/documentconstants.hxx>
+#include <tools/link.hxx>
 #include <vcl/errcode.hxx>
-#include <vcl/graph.hxx>
-#include <vcl/weld.hxx>
-#include <sfx2/sfxuno.hxx>
-#include <sfx2/docfilt.hxx>
+#include <o3tl/typed_flags_set.hxx>
 
 #include <memory>
+#include <vector>
 
 namespace com
 {
@@ -46,7 +44,6 @@ namespace com
                 namespace dialogs
                 {
                     class XFilePicker3;
-                    class XFilePickerListener;
                     struct FilePickerEvent;
                     struct DialogClosedEvent;
                 }
@@ -55,8 +52,13 @@ namespace com
     }
 }
 
+namespace com::sun::star::awt { class XWindow; }
+namespace com::sun::star::uno { template <typename > class Reference; }
+namespace weld { class Window; }
+
+class Graphic;
+class SfxFilter;
 class SfxItemSet;
-namespace vcl { class Window; }
 
 enum class FileDialogFlags {
     NONE              = 0x00,
diff --git a/include/sfx2/frame.hxx b/include/sfx2/frame.hxx
index 9a3a96a91520..4878bcd460d7 100644
--- a/include/sfx2/frame.hxx
+++ b/include/sfx2/frame.hxx
@@ -39,20 +39,10 @@ namespace com
     {
         namespace star
         {
-            namespace awt
-            {
-                class XWindow;
-            }
             namespace frame
             {
                 class XFrame;
-                class XFrameLoader;
                 class XController;
-                class XDispatchProviderInterceptor;
-            }
-            namespace beans
-            {
-                struct PropertyValue;
             }
         }
     }
@@ -61,16 +51,11 @@ namespace com
 class SvBorder;
 class SfxWorkWindow;
 namespace vcl { class Window; }
-class SfxFrame;
 class SfxFrame_Impl;
 class SfxObjectShell;
-class SfxObjectFactory;
 class SfxViewFrame;
 class SfxFrameDescriptor;
-class SfxFrameSetDescriptor;
-class SfxDispatcher;
 namespace tools { class Rectangle; }
-class SfxRequest;
 class SystemWindow;
 
 typedef ::std::vector<OUString> TargetList;
diff --git a/include/sfx2/frmdescr.hxx b/include/sfx2/frmdescr.hxx
index 99e26280bebb..196a2ccc9356 100644
--- a/include/sfx2/frmdescr.hxx
+++ b/include/sfx2/frmdescr.hxx
@@ -23,7 +23,6 @@
 #include <rtl/ustring.hxx>
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
-#include <sfx2/sfxsids.hrc>
 #include <tools/gen.hxx>
 #include <tools/urlobj.hxx>
 
diff --git a/include/sfx2/frmhtml.hxx b/include/sfx2/frmhtml.hxx
index 4ca4a30f04c5..cb1fb6a2335c 100644
--- a/include/sfx2/frmhtml.hxx
+++ b/include/sfx2/frmhtml.hxx
@@ -23,11 +23,9 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 
-#include <sfx2/frmdescr.hxx>
 #include <sfx2/sfxhtml.hxx>
 
-class SfxFrameHTMLParser;
-class SfxMedium;
+class SfxFrameDescriptor;
 
 class SFX2_DLLPUBLIC SfxFrameHTMLParser : public SfxHTMLParser
 {
diff --git a/include/sfx2/frmhtmlw.hxx b/include/sfx2/frmhtmlw.hxx
index da44dc92968a..4b827a7c97ad 100644
--- a/include/sfx2/frmhtmlw.hxx
+++ b/include/sfx2/frmhtmlw.hxx
@@ -22,15 +22,8 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 #include <sal/types.h>
+#include <rtl/ustring.hxx>
 
-#include <sfx2/frmdescr.hxx>
-#include <com/sun/star/uno/Reference.h>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <svtools/parhtml.hxx>
-#include <svtools/htmlout.hxx>
-#include <svtools/htmlkywd.hxx>
-
-class SfxFrame;
 class SvStream;
 
 namespace com { namespace sun { namespace star {
@@ -39,6 +32,9 @@ namespace com { namespace sun { namespace star {
     }
 } } }
 
+namespace com::sun::star::beans { class XPropertySet; }
+namespace com::sun::star::uno { template <class interface_type> class 
Reference; }
+
 class SFX2_DLLPUBLIC SfxFrameHTMLWriter
 {
     SAL_DLLPRIVATE static void OutMeta( SvStream& rStrm,
diff --git a/include/sfx2/ipclient.hxx b/include/sfx2/ipclient.hxx
index 97aaf8db6f8d..eb4c2c825651 100644
--- a/include/sfx2/ipclient.hxx
+++ b/include/sfx2/ipclient.hxx
@@ -22,15 +22,15 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 #include <sal/types.h>
-#include <com/sun/star/uno/Reference.h>
-#include <com/sun/star/embed/Aspects.hpp>
-#include <com/sun/star/embed/XEmbeddedObject.hpp>
 #include <rtl/ref.hxx>
 
 #include <tools/gen.hxx>
 
-#include <sfx2/objsh.hxx>
 #include <vcl/window.hxx>
+#include <vcl/errcode.hxx>
+
+namespace com::sun::star::embed { class XEmbeddedObject; }
+namespace com::sun::star::uno { template <typename > class Reference; }
 
 class SfxInPlaceClient_Impl;
 class SfxViewShell;
diff --git a/include/sfx2/linkmgr.hxx b/include/sfx2/linkmgr.hxx
index 128dd47e4462..2646d2d61cdd 100644
--- a/include/sfx2/linkmgr.hxx
+++ b/include/sfx2/linkmgr.hxx
@@ -29,7 +29,6 @@
 
 class SfxObjectShell;
 class Graphic;
-class Size;
 
 namespace com { namespace sun { namespace star {
     namespace lang {
diff --git a/include/sfx2/linksrc.hxx b/include/sfx2/linksrc.hxx
index b0323cb11696..fe6706544b20 100644
--- a/include/sfx2/linksrc.hxx
+++ b/include/sfx2/linksrc.hxx
@@ -22,9 +22,8 @@
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 
-#include <tools/link.hxx>
 #include <tools/ref.hxx>
-#include <com/sun/star/io/XInputStream.hpp>
+#include <com/sun/star/uno/Reference.hxx>
 #include <memory>
 
 namespace com { namespace sun { namespace star { namespace uno
@@ -32,9 +31,9 @@ namespace com { namespace sun { namespace star { namespace uno
     class Any;
 }}}}
 namespace weld { class Window; }
-namespace rtl {
-    class OUString;
-}
+
+template <typename Arg, typename Ret> class Link;
+namespace com::sun::star::io { class XInputStream; }
 
 #ifndef ADVISEMODE_NODATA
 // Must be the same value as Ole2 ADVF_*
diff --git a/include/sfx2/lnkbase.hxx b/include/sfx2/lnkbase.hxx
index 09f14b3a1723..19ade2d601b0 100644
--- a/include/sfx2/lnkbase.hxx
+++ b/include/sfx2/lnkbase.hxx
@@ -19,13 +19,13 @@
 #ifndef INCLUDED_SFX2_LNKBASE_HXX
 #define INCLUDED_SFX2_LNKBASE_HXX
 
-#include <com/sun/star/io/XInputStream.hpp>
 #include <rtl/ustring.hxx>
 #include <sal/config.h>
 #include <sfx2/dllapi.h>
 #include <sfx2/linksrc.hxx>
-#include <sot/exchange.hxx>
+#include <sot/formats.hxx>
 #include <tools/ref.hxx>
+#include <tools/link.hxx>
 #include <memory>
 
 namespace com { namespace sun { namespace star { namespace uno
@@ -33,6 +33,8 @@ namespace com { namespace sun { namespace star { namespace uno
     class Any;
 }}}}
 
+namespace com::sun::star::io { class XInputStream; }
+
 enum class SfxLinkUpdateMode {
     NONE   = 0,
     // Ole2 compatible and persistent
@@ -45,7 +47,6 @@ namespace sfx2
 
 struct ImplBaseLinkData;
 class LinkManager;
-class SvLinkSource;
 class FileDialogHelper;
 
 #ifndef OBJECT_DDE_EXTERN
diff --git a/include/sfx2/lokcharthelper.hxx b/include/sfx2/lokcharthelper.hxx
index 92c57217f621..85b0baf66e1a 100644
--- a/include/sfx2/lokcharthelper.hxx
+++ b/include/sfx2/lokcharthelper.hxx
@@ -14,8 +14,8 @@
 #include <tools/gen.hxx>
 #include <vcl/window.hxx>
 
-#include <com/sun/star/frame/XController.hpp>
-#include <com/sun/star/frame/XDispatch.hpp>
+namespace com::sun::star::frame { class XController; }
+namespace com::sun::star::frame { class XDispatch; }
 
 class SfxViewShell;
 class VirtualDevice;
diff --git a/include/sfx2/lokhelper.hxx b/include/sfx2/lokhelper.hxx
index 62c024508de1..e874ee256412 100644
--- a/include/sfx2/lokhelper.hxx
+++ b/include/sfx2/lokhelper.hxx
@@ -16,8 +16,6 @@
 #include <cstddef>
 #include <rtl/string.hxx>
 
-class SfxViewShell;
-
 class SFX2_DLLPUBLIC SfxLokHelper
 {
 public:
diff --git a/include/sfx2/mailmodelapi.hxx b/include/sfx2/mailmodelapi.hxx
index e28b148a9523..8ee361cd7908 100644
--- a/include/sfx2/mailmodelapi.hxx
+++ b/include/sfx2/mailmodelapi.hxx
@@ -19,15 +19,19 @@
 #ifndef INCLUDED_SFX2_MAILMODELAPI_HXX
 #define INCLUDED_SFX2_MAILMODELAPI_HXX
 
-#include <com/sun/star/frame/XFrame.hpp>
-#include <com/sun/star/frame/XModel.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/Reference.hxx>
 #include <rtl/ustring.hxx>
 #include <sfx2/dllapi.h>
-#include <tools/link.hxx>
 #include <vector>
 #include <memory>
 
+namespace com::sun::star::beans { struct PropertyValue; }
+namespace com::sun::star::frame { class XFrame; }
+namespace com::sun::star::frame { class XModel; }
+namespace com::sun::star::lang { class XMultiServiceFactory; }
+namespace com::sun::star::uno { class XInterface; }
+namespace com::sun::star::uno { template <class E> class Sequence; }
+
 // class AddressList_Impl ------------------------------------------------
 typedef ::std::vector< OUString > AddressList_Impl;
 
diff --git a/include/sfx2/mgetempl.hxx b/include/sfx2/mgetempl.hxx
index 8433237da033..86764728d8de 100644
--- a/include/sfx2/mgetempl.hxx
+++ b/include/sfx2/mgetempl.hxx
@@ -21,17 +21,20 @@
 
 #include <sfx2/styfitem.hxx>
 #include <sfx2/tabdlg.hxx>
-#include <vcl/weld.hxx>
 #include <memory>
 
+namespace weld { class Button; }
+namespace weld { class CheckButton; }
+namespace weld { class ComboBox; }
+namespace weld { class Entry; }
+namespace weld { class Label; }
+namespace weld { class Widget; }
+
 /* expected:
     SID_TEMPLATE_NAME   :   In: StringItem, Name of Template
     SID_TEMPLATE_FAMILY :   In: Family of Template
 */
 
-class SfxStyleFamilyItem;
-class SfxStyleSheetBase;
-
 class SfxManageStyleSheetPage final : public SfxTabPage
 {
     SfxStyleSheetBase *pStyle;
diff --git a/include/sfx2/mieclip.hxx b/include/sfx2/mieclip.hxx
index 8fa29baa4ae6..103f93a3f68e 100644
--- a/include/sfx2/mieclip.hxx
+++ b/include/sfx2/mieclip.hxx
@@ -23,12 +23,8 @@
 #include <memory>
 #include <rtl/ustring.hxx>
 #include <sal/config.h>
-#include <sal/types.h>
 #include <sfx2/dllapi.h>
-
-class SvStream;
-class SotDataObject;
-class SvData;
+#include <tools/stream.hxx>
 
 class SFX2_DLLPUBLIC MSE40HTMLClipFormatObj
 {
diff --git a/include/sfx2/module.hxx b/include/sfx2/module.hxx
index 5709e4a90fbb..c4ad3d89aebf 100644
--- a/include/sfx2/module.hxx
+++ b/include/sfx2/module.hxx
@@ -21,29 +21,24 @@
 
 #include <memory>
 #include <sal/config.h>
-#include <sfx2/app.hxx>
 #include <sfx2/dllapi.h>
 #include <sfx2/shell.hxx>
 #include <sfx2/styfitem.hxx>
-#include <sfx2/tabdlg.hxx>
-#include <svtools/imgdef.hxx>
+#include <vcl/tabpage.hxx>
 #include <sal/types.h>
 #include <tools/fldunit.hxx>
 #include <com/sun/star/uno/Reference.hxx>
 
-class SfxBindings;
 class SfxObjectFactory;
-class ModalDialog;
-class SfxObjectFactory;
-class SfxModule;
 class SfxModule_Impl;
 class SfxSlotPool;
-struct SfxChildWinContextFactory;
 struct SfxChildWinFactory;
 struct SfxStbCtrlFactory;
 struct SfxTbxCtrlFactory;
 class SfxTabPage;
-namespace vcl { class Window; }
+class SfxTbxCtrlFactArr_Impl;
+class SfxStbCtrlFactArr_Impl;
+class SfxChildWinFactArr_Impl;
 
 namespace com { namespace sun { namespace star { namespace frame {
     class XFrame;
diff --git a/include/sfx2/msg.hxx b/include/sfx2/msg.hxx
index 6634584558b6..7f9eb2de916b 100644
--- a/include/sfx2/msg.hxx
+++ b/include/sfx2/msg.hxx
@@ -31,9 +31,6 @@
 #include <climits>
 
 class SfxItemPool;
-class SfxItemSet;
-class SfxPoolItem;
-class SfxRequest;
 
 enum class SfxSlotMode {
     NONE            =    0x0000L, // default
diff --git a/include/sfx2/msgpool.hxx b/include/sfx2/msgpool.hxx
index ea5650506414..357d86d67bed 100644
--- a/include/sfx2/msgpool.hxx
+++ b/include/sfx2/msgpool.hxx
@@ -23,13 +23,12 @@
 #include <sal/config.h>
 #include <sal/types.h>
 #include <sfx2/dllapi.h>
-#include <sfx2/msg.hxx>
 #include <sfx2/groupid.hxx>
-#include <memory>
 #include <vector>
 
 class SfxInterface;
 class SfxSlot;
+class SfxViewFrame;
 
 class SFX2_DLLPUBLIC SfxSlotPool
 {
diff --git a/sc/IwyuFilter_sc.yaml b/sc/IwyuFilter_sc.yaml
index fc77866f682d..43bbdc561c04 100644
--- a/sc/IwyuFilter_sc.yaml
+++ b/sc/IwyuFilter_sc.yaml
@@ -298,6 +298,9 @@ blacklist:
     sc/inc/scmatrix.hxx:
     # base class has to be a complete type
     - svl/sharedstringpool.hxx
+    sc/inc/scmod.hxx:
+    # Needed for macro define
+    - sfx2/app.hxx
     sc/inc/shapeuno.hxx:
     # base class has to be a complete type
     - com/sun/star/beans/XPropertySet.hpp
diff --git a/sc/inc/scmod.hxx b/sc/inc/scmod.hxx
index 3a389ecc2d45..883da0ba9be6 100644
--- a/sc/inc/scmod.hxx
+++ b/sc/inc/scmod.hxx
@@ -24,6 +24,7 @@
 #include <vcl/timer.hxx>
 #include <vcl/idle.hxx>
 #include <svl/lstner.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/module.hxx>
 #include "global.hxx"
 #include "shellids.hxx"
diff --git a/sc/source/core/tool/ddelink.cxx b/sc/source/core/tool/ddelink.cxx
index 06bc7c2b9700..8dec14385d80 100644
--- a/sc/source/core/tool/ddelink.cxx
+++ b/sc/source/core/tool/ddelink.cxx
@@ -20,6 +20,7 @@
 #include <comphelper/fileformat.h>
 #include <comphelper/string.hxx>
 #include <osl/thread.h>
+#include <sot/exchange.hxx>
 #include <sfx2/linkmgr.hxx>
 #include <sfx2/bindings.hxx>
 #include <svl/zforlist.hxx>
diff --git a/sc/source/ui/dbgui/csvgrid.cxx b/sc/source/ui/dbgui/csvgrid.cxx
index 8a3a9da66133..bc1979a28084 100644
--- a/sc/source/ui/dbgui/csvgrid.cxx
+++ b/sc/source/ui/dbgui/csvgrid.cxx
@@ -32,6 +32,8 @@
 
 // *** edit engine ***
 #include <editeng/eeitem.hxx>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/virdev.hxx>
 
diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx
index d75ef8138a10..3f03271240cd 100644
--- a/sc/source/ui/docshell/docsh4.cxx
+++ b/sc/source/ui/docshell/docsh4.cxx
@@ -31,6 +31,7 @@ using namespace ::com::sun::star;
 #include <sfx2/infobar.hxx>
 #include <sfx2/objface.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <svtools/ehdl.hxx>
 #include <svtools/langtab.hxx>
 #include <basic/sbxcore.hxx>
diff --git a/sc/source/ui/docshell/servobj.cxx 
b/sc/source/ui/docshell/servobj.cxx
index d0df8fe42348..7c93a4f3ab18 100644
--- a/sc/source/ui/docshell/servobj.cxx
+++ b/sc/source/ui/docshell/servobj.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <sot/exchange.hxx>
 #include <sot/formats.hxx>
 #include <sfx2/app.hxx>
 #include <sfx2/linkmgr.hxx>
diff --git a/sc/source/ui/drawfunc/fuins2.cxx b/sc/source/ui/drawfunc/fuins2.cxx
index 6593623a10d8..6f1771e9b19b 100644
--- a/sc/source/ui/drawfunc/fuins2.cxx
+++ b/sc/source/ui/drawfunc/fuins2.cxx
@@ -36,6 +36,7 @@
 #include <svx/svdpage.hxx>
 #include <svx/svdundo.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 #include <scmod.hxx>
 #include <sal/log.hxx>
 
diff --git a/sc/source/ui/inc/anyrefdg.hxx b/sc/source/ui/inc/anyrefdg.hxx
index 33fd056cc4ae..069bc2650ee5 100644
--- a/sc/source/ui/inc/anyrefdg.hxx
+++ b/sc/source/ui/inc/anyrefdg.hxx
@@ -23,6 +23,7 @@
 #include <sfx2/basedlgs.hxx>
 #include <address.hxx>
 #include <formula/funcutl.hxx>
+#include <vcl/accel.hxx>
 #include "IAnyRefDialog.hxx"
 #include <scmod.hxx>
 
diff --git a/sc/source/ui/unoobj/appluno.cxx b/sc/source/ui/unoobj/appluno.cxx
index febd4f2fcadd..c7f20cf96eb4 100644
--- a/sc/source/ui/unoobj/appluno.cxx
+++ b/sc/source/ui/unoobj/appluno.cxx
@@ -23,6 +23,7 @@
 #include <cppuhelper/factory.hxx>
 #include <formula/funcvarargs.h>
 
+#include <vcl/svapp.hxx>
 #include <sfx2/app.hxx>
 #include <sfx2/sfxmodelfactory.hxx>
 #include <afmtuno.hxx>
diff --git a/sc/source/ui/unoobj/scdetect.cxx b/sc/source/ui/unoobj/scdetect.cxx
index fe00d7a59975..272ddc950275 100644
--- a/sc/source/ui/unoobj/scdetect.cxx
+++ b/sc/source/ui/unoobj/scdetect.cxx
@@ -29,7 +29,9 @@
 #include <com/sun/star/io/XInputStream.hpp>
 #include <unotools/mediadescriptor.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/fcontnr.hxx>
+#include <tools/solar.h>
 
 using namespace ::com::sun::star;
 using utl::MediaDescriptor;
diff --git a/sc/source/ui/view/viewfun4.cxx b/sc/source/ui/view/viewfun4.cxx
index 06634e895fe8..db36cb004402 100644
--- a/sc/source/ui/view/viewfun4.cxx
+++ b/sc/source/ui/view/viewfun4.cxx
@@ -34,6 +34,7 @@
 #include <sfx2/bindings.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/fcontnr.hxx>
 #include <svtools/langtab.hxx>
 #include <vcl/graphicfilter.hxx>
diff --git a/sd/IwyuFilter_sd.yaml b/sd/IwyuFilter_sd.yaml
index b1c320db4a4c..a2dad7346275 100644
--- a/sd/IwyuFilter_sd.yaml
+++ b/sd/IwyuFilter_sd.yaml
@@ -28,6 +28,8 @@ blacklist:
     # base class has to be a complete type
     - com/sun/star/beans/XPropertySetInfo.hpp
     - sot/storage.hxx
+    # Needed for define
+    - sfx2/app.hxx
     sd/inc/sdpage.hxx:
     # base class has to be a complete type
     - com/sun/star/drawing/XDrawPage.hpp
diff --git a/sd/inc/sdmod.hxx b/sd/inc/sdmod.hxx
index 6c5c2b558a1a..65d9cdedf4e7 100644
--- a/sd/inc/sdmod.hxx
+++ b/sd/inc/sdmod.hxx
@@ -27,6 +27,7 @@
 #include "sddllapi.h"
 #include <svl/lstner.hxx>
 #include <com/sun/star/beans/XPropertySetInfo.hpp>
+#include <sfx2/app.hxx>
 #include <sfx2/module.hxx>
 #include <sal/types.h>
 #include <vcl/virdev.hxx>
diff --git a/sd/source/core/drawdoc3.cxx b/sd/source/core/drawdoc3.cxx
index d2112117d385..8f9f335bb837 100644
--- a/sd/source/core/drawdoc3.cxx
+++ b/sd/source/core/drawdoc3.cxx
@@ -21,6 +21,7 @@
 #include <memory>
 
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/app.hxx>
 #include <svl/itemset.hxx>
 
diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx
index f5fba2e58b1d..1018cf763f96 100644
--- a/sd/source/core/drawdoc4.cxx
+++ b/sd/source/core/drawdoc4.cxx
@@ -30,6 +30,7 @@
 #include <DrawDocShell.hxx>
 #include <editeng/eeitem.hxx>
 
+#include <vcl/idle.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 
diff --git a/sd/source/ui/dlg/PhotoAlbumDialog.cxx 
b/sd/source/ui/dlg/PhotoAlbumDialog.cxx
index 8c8f33407416..186c407e0095 100644
--- a/sd/source/ui/dlg/PhotoAlbumDialog.cxx
+++ b/sd/source/ui/dlg/PhotoAlbumDialog.cxx
@@ -13,6 +13,7 @@
 #include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
 #include <com/sun/star/graphic/GraphicProvider.hpp>
 #include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 
 #include <sfx2/filedlghelper.hxx>
 #include <tools/urlobj.hxx>
diff --git a/sd/source/ui/dlg/vectdlg.cxx b/sd/source/ui/dlg/vectdlg.cxx
index bcb12f0d807f..c48b64172f70 100644
--- a/sd/source/ui/dlg/vectdlg.cxx
+++ b/sd/source/ui/dlg/vectdlg.cxx
@@ -21,6 +21,7 @@
 #include <vcl/bitmapaccess.hxx>
 #include <vcl/metaact.hxx>
 #include <vcl/BitmapSimpleColorQuantizationFilter.hxx>
+#include <vcl/svapp.hxx>
 
 #include <DrawDocShell.hxx>
 #include <sdmod.hxx>
diff --git a/sd/source/ui/func/fuinsert.cxx b/sd/source/ui/func/fuinsert.cxx
index ffe73879d9c9..0553423b5eba 100644
--- a/sd/source/ui/func/fuinsert.cxx
+++ b/sd/source/ui/func/fuinsert.cxx
@@ -37,6 +37,7 @@
 #include <svl/urihelper.hxx>
 #include <sfx2/docfile.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 #include <sfx2/filedlghelper.hxx>
 #include <svtools/insdlg.hxx>
 #include <sfx2/request.hxx>
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index 58297a8bc942..6cde6563e7f0 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -51,6 +51,7 @@
 #include <sfx2/dispatch.hxx>
 #include <sfx2/docfile.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 #include <sfx2/request.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/zoomitem.hxx>
diff --git a/sfx2/source/appl/appcfg.cxx b/sfx2/source/appl/appcfg.cxx
index 5abd5594baeb..5ad63a9869f4 100644
--- a/sfx2/source/appl/appcfg.cxx
+++ b/sfx2/source/appl/appcfg.cxx
@@ -48,6 +48,7 @@
 #include <unotools/securityoptions.hxx>
 #include <unotools/pathoptions.hxx>
 #include <svtools/miscopt.hxx>
+#include <svtools/imgdef.hxx>
 #include <vcl/toolbox.hxx>
 #include <rtl/strbuf.hxx>
 #include <rtl/ustrbuf.hxx>
diff --git a/sfx2/source/appl/appopen.cxx b/sfx2/source/appl/appopen.cxx
index c52764404809..4a655f940d4c 100644
--- a/sfx2/source/appl/appopen.cxx
+++ b/sfx2/source/appl/appopen.cxx
@@ -70,6 +70,7 @@
 #include <sfx2/bindings.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/fcontnr.hxx>
 #include <sfx2/new.hxx>
 #include <sfx2/objitem.hxx>
diff --git a/sfx2/source/appl/childwin.cxx b/sfx2/source/appl/childwin.cxx
index 6a02b5bacab6..4dc55e2a126d 100644
--- a/sfx2/source/appl/childwin.cxx
+++ b/sfx2/source/appl/childwin.cxx
@@ -28,6 +28,7 @@
 #include <cppuhelper/implbase.hxx>
 #include <sal/log.hxx>
 
+#include <vcl/svapp.hxx>
 #include <sfx2/childwin.hxx>
 #include <sfx2/app.hxx>
 #include <sfx2/bindings.hxx>
diff --git a/sfx2/source/appl/impldde.hxx b/sfx2/source/appl/impldde.hxx
index 68bb0cd113d2..ee2f2ecb9238 100644
--- a/sfx2/source/appl/impldde.hxx
+++ b/sfx2/source/appl/impldde.hxx
@@ -21,6 +21,7 @@
 
 #include <rtl/ustring.hxx>
 #include <sfx2/linksrc.hxx>
+#include <tools/link.hxx>
 
 class DdeConnection;
 class DdeData;
diff --git a/sfx2/source/appl/shutdownicon.cxx 
b/sfx2/source/appl/shutdownicon.cxx
index f9c243b34a6f..b0e8792d8b37 100644
--- a/sfx2/source/appl/shutdownicon.cxx
+++ b/sfx2/source/appl/shutdownicon.cxx
@@ -49,6 +49,7 @@
 #include <com/sun/star/document/MacroExecMode.hpp>
 #include <com/sun/star/document/UpdateDocMode.hpp>
 #include <sfx2/filedlghelper.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/fcontnr.hxx>
 #include <comphelper/processfactory.hxx>
 #include <cppuhelper/implbase.hxx>
diff --git a/sfx2/source/bastyp/frmhtml.cxx b/sfx2/source/bastyp/frmhtml.cxx
index 5bcf59dfb167..5ff72824c7a8 100644
--- a/sfx2/source/bastyp/frmhtml.cxx
+++ b/sfx2/source/bastyp/frmhtml.cxx
@@ -21,6 +21,7 @@
 #include <svtools/htmltokn.h>
 #include <svtools/asynclink.hxx>
 
+#include <sfx2/frmdescr.hxx>
 #include <sfx2/frmhtml.hxx>
 #include <sfx2/docfile.hxx>
 #include <sfx2/viewfrm.hxx>
diff --git a/sfx2/source/bastyp/frmhtmlw.cxx b/sfx2/source/bastyp/frmhtmlw.cxx
index f5ba6bcf4b50..a318dc875f0f 100644
--- a/sfx2/source/bastyp/frmhtmlw.cxx
+++ b/sfx2/source/bastyp/frmhtmlw.cxx
@@ -28,7 +28,9 @@
 #include <tools/stream.hxx>
 #include <tools/debug.hxx>
 #include <unotools/resmgr.hxx>
+#include <svtools/htmlout.hxx>
 
+#include <sfx2/frmdescr.hxx>
 #include <sfx2/frmhtmlw.hxx>
 #include <sfx2/evntconf.hxx>
 #include <sfx2/frame.hxx>
diff --git a/sfx2/source/config/evntconf.cxx b/sfx2/source/config/evntconf.cxx
index 1e664d6371e3..fbcbe656dec1 100644
--- a/sfx2/source/config/evntconf.cxx
+++ b/sfx2/source/config/evntconf.cxx
@@ -32,6 +32,7 @@
 #include <com/sun/star/uno/Any.hxx>
 #include <comphelper/processfactory.hxx>
 #include <sfx2/evntconf.hxx>
+#include <svl/macitem.hxx>
 
 #include <sfx2/docfile.hxx>
 #include <sfx2/app.hxx>
diff --git a/sfx2/source/control/emojicontrol.cxx 
b/sfx2/source/control/emojicontrol.cxx
index 12b640c191fe..775ee77b3a75 100644
--- a/sfx2/source/control/emojicontrol.cxx
+++ b/sfx2/source/control/emojicontrol.cxx
@@ -20,6 +20,7 @@
 #include <sfx2/emojiview.hxx>
 #include <sfx2/emojiviewitem.hxx>
 #include <sfx2/emojicontrol.hxx>
+#include <vcl/tabpage.hxx>
 #include <comphelper/propertysequence.hxx>
 #include <comphelper/dispatchcommand.hxx>
 #include <officecfg/Office/Common.hxx>
diff --git a/sfx2/source/control/sfxstatuslistener.cxx 
b/sfx2/source/control/sfxstatuslistener.cxx
index 9323def48af9..cdb943f24d34 100644
--- a/sfx2/source/control/sfxstatuslistener.cxx
+++ b/sfx2/source/control/sfxstatuslistener.cxx
@@ -39,6 +39,7 @@
 #include <sfx2/dispatch.hxx>
 #include <sfx2/unoctitm.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 
 using namespace ::cppu;
 using namespace ::com::sun::star::uno;
diff --git a/sfx2/source/control/unoctitm.cxx b/sfx2/source/control/unoctitm.cxx
index 4a18c9fc587e..928616f99e13 100644
--- a/sfx2/source/control/unoctitm.cxx
+++ b/sfx2/source/control/unoctitm.cxx
@@ -60,6 +60,7 @@
 #include <sfx2/request.hxx>
 #include <statcach.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 #include <sfx2/objsh.hxx>
 #include <sfx2/viewsh.hxx>
 #include <osl/file.hxx>
diff --git a/sfx2/source/dialog/filedlghelper.cxx 
b/sfx2/source/dialog/filedlghelper.cxx
index 01a4ccf90ac0..6c30efc09bdb 100644
--- a/sfx2/source/dialog/filedlghelper.cxx
+++ b/sfx2/source/dialog/filedlghelper.cxx
@@ -83,6 +83,7 @@
 #include <sfx2/frame.hxx>
 #include <sfx2/docfile.hxx>
 #include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/objsh.hxx>
 #include <openflag.hxx>
 #include <sfx2/passwd.hxx>
diff --git a/sfx2/source/dialog/filedlgimpl.hxx 
b/sfx2/source/dialog/filedlgimpl.hxx
index b3de82cbe6a5..cdc8189692fb 100644
--- a/sfx2/source/dialog/filedlgimpl.hxx
+++ b/sfx2/source/dialog/filedlgimpl.hxx
@@ -34,6 +34,7 @@
 class SfxFilterMatcher;
 class GraphicFilter;
 class FileDialogHelper;
+struct ImplSVEvent;
 
 namespace sfx2
 {
diff --git a/sfx2/source/dialog/filtergrouping.cxx 
b/sfx2/source/dialog/filtergrouping.cxx
index 96f16e64fccd..5a5660f7e550 100644
--- a/sfx2/source/dialog/filtergrouping.cxx
+++ b/sfx2/source/dialog/filtergrouping.cxx
@@ -22,6 +22,7 @@
 #include <sfx2/filedlghelper.hxx>
 #include <sfx2/strings.hrc>
 #include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/sfxresid.hxx>
 #include <osl/thread.h>
 #include <rtl/strbuf.hxx>
diff --git a/sfx2/source/dialog/partwnd.cxx b/sfx2/source/dialog/partwnd.cxx
index 05312c84f1d4..f97bc2d30445 100644
--- a/sfx2/source/dialog/partwnd.cxx
+++ b/sfx2/source/dialog/partwnd.cxx
@@ -35,6 +35,7 @@
 
 #include <toolkit/helper/vclunohelper.hxx>
 
+#include <vcl/event.hxx>
 #include <sfx2/sfxsids.hrc>
 #include <partwnd.hxx>
 #include <sfx2/bindings.hxx>
diff --git a/sfx2/source/dialog/splitwin.cxx b/sfx2/source/dialog/splitwin.cxx
index 065ca5afde1a..b983787838e3 100644
--- a/sfx2/source/dialog/splitwin.cxx
+++ b/sfx2/source/dialog/splitwin.cxx
@@ -27,8 +27,10 @@
 #include <unotools/viewoptions.hxx>
 #include <sal/log.hxx>
 
+#include <vcl/event.hxx>
 #include <vcl/menu.hxx>
 #include <vcl/timer.hxx>
+#include <vcl/svapp.hxx>
 
 #include <splitwin.hxx>
 #include <workwin.hxx>
diff --git a/sfx2/source/doc/objcont.cxx b/sfx2/source/doc/objcont.cxx
index 5e17b9757cf9..02834f8fb98c 100644
--- a/sfx2/source/doc/objcont.cxx
+++ b/sfx2/source/doc/objcont.cxx
@@ -70,6 +70,7 @@
 #include <sfx2/strings.hrc>
 #include <sfx2/sfxbasemodel.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/request.hxx>
 #include <openflag.hxx>
 #include <memory>
diff --git a/sfx2/source/doc/sfxbasemodel.cxx b/sfx2/source/doc/sfxbasemodel.cxx
index 12af26232cec..8537b43de933 100644
--- a/sfx2/source/doc/sfxbasemodel.cxx
+++ b/sfx2/source/doc/sfxbasemodel.cxx
@@ -104,6 +104,7 @@
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/viewsh.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/request.hxx>
 #include <sfx2/printer.hxx>
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index dec6fe3e6353..351e610d6e71 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -20,6 +20,7 @@
 #include <officecfg/Office/Common.hxx>
 #include <sfx2/app.hxx>
 #include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/fcontnr.hxx>
 #include <sfx2/filedlghelper.hxx>
 #include <sfx2/objsh.hxx>
diff --git a/sfx2/source/inc/workwin.hxx b/sfx2/source/inc/workwin.hxx
index 6b9894628e94..159e6ceb0c6c 100644
--- a/sfx2/source/inc/workwin.hxx
+++ b/sfx2/source/inc/workwin.hxx
@@ -32,6 +32,7 @@
 #include <rtl/ustring.hxx>
 #include <o3tl/typed_flags_set.hxx>
 
+#include <sfx2/basedlgs.hxx>
 #include <sfx2/childwin.hxx>
 #include <sfx2/objface.hxx>
 #include <sfx2/shell.hxx>
diff --git a/sfx2/source/sidebar/SidebarToolBox.cxx 
b/sfx2/source/sidebar/SidebarToolBox.cxx
index 7182b479e282..4e9fe7916441 100644
--- a/sfx2/source/sidebar/SidebarToolBox.cxx
+++ b/sfx2/source/sidebar/SidebarToolBox.cxx
@@ -23,6 +23,7 @@
 
 #include <vcl/builderfactory.hxx>
 #include <vcl/commandinfoprovider.hxx>
+#include <vcl/event.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
diff --git a/sfx2/source/statbar/stbitem.cxx b/sfx2/source/statbar/stbitem.cxx
index ffa258f639c8..dd8eac28bcac 100644
--- a/sfx2/source/statbar/stbitem.cxx
+++ b/sfx2/source/statbar/stbitem.cxx
@@ -27,6 +27,8 @@
 #include <com/sun/star/frame/status/ItemState.hpp>
 #include <com/sun/star/awt/MouseButton.hpp>
 
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
 #include <vcl/status.hxx>
 
 #include <sfx2/app.hxx>
diff --git a/sfx2/source/toolbox/tbxitem.cxx b/sfx2/source/toolbox/tbxitem.cxx
index 7241d98101f2..1501c3a07708 100644
--- a/sfx2/source/toolbox/tbxitem.cxx
+++ b/sfx2/source/toolbox/tbxitem.cxx
@@ -59,6 +59,7 @@
 #include <framework/menuconfiguration.hxx>
 #include <framework/sfxhelperfunctions.hxx>
 #include <vcl/taskpanelist.hxx>
+#include <vcl/event.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
 #include <tools/globname.hxx>
 #include <svtools/menuoptions.hxx>
diff --git a/sfx2/source/view/classificationcontroller.cxx 
b/sfx2/source/view/classificationcontroller.cxx
index d2bc9824db88..0bb7b2daea70 100644
--- a/sfx2/source/view/classificationcontroller.cxx
+++ b/sfx2/source/view/classificationcontroller.cxx
@@ -21,6 +21,7 @@
 #include <toolkit/helper/vclunohelper.hxx>
 #include <vcl/toolbox.hxx>
 #include <vcl/fixed.hxx>
+#include <vcl/event.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/classificationhelper.hxx>
 #include <sfx2/strings.hrc>
diff --git a/sfx2/source/view/classificationhelper.cxx 
b/sfx2/source/view/classificationhelper.cxx
index c3d2f96c2f6f..db94f56a9b44 100644
--- a/sfx2/source/view/classificationhelper.cxx
+++ b/sfx2/source/view/classificationhelper.cxx
@@ -34,6 +34,8 @@
 #include <sfx2/viewfrm.hxx>
 #include <tools/datetime.hxx>
 #include <unotools/datetime.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/settings.hxx>
 #include <vcl/weld.hxx>
 #include <svl/fstathelper.hxx>
 #include <config_folders.h>
diff --git a/sfx2/source/view/ipclient.cxx b/sfx2/source/view/ipclient.cxx
index 9f59d7335e0c..a7d8ac8850f4 100644
--- a/sfx2/source/view/ipclient.cxx
+++ b/sfx2/source/view/ipclient.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <com/sun/star/embed/Aspects.hpp>
 #include <com/sun/star/embed/EmbedStates.hpp>
 #include <com/sun/star/embed/UnreachableStateException.hpp>
 #include <com/sun/star/embed/XVisualObject.hpp>
diff --git a/sfx2/source/view/lokcharthelper.cxx 
b/sfx2/source/view/lokcharthelper.cxx
index d0d37e4865a4..2622aba832cc 100644
--- a/sfx2/source/view/lokcharthelper.cxx
+++ b/sfx2/source/view/lokcharthelper.cxx
@@ -23,6 +23,7 @@
 #include <com/sun/star/beans/XPropertySet.hpp>
 #include <com/sun/star/embed/XEmbeddedObject.hpp>
 #include <com/sun/star/frame/XModel.hpp>
+#include <com/sun/star/frame/XDispatch.hpp>
 #include <com/sun/star/chart2/XChartDocument.hpp>
 
 #define TWIPS_PER_PIXEL 15
diff --git a/sfx2/source/view/lokhelper.cxx b/sfx2/source/view/lokhelper.cxx
index 768cedd9da44..581b78f87c5b 100644
--- a/sfx2/source/view/lokhelper.cxx
+++ b/sfx2/source/view/lokhelper.cxx
@@ -13,6 +13,7 @@
 
 #include <comphelper/processfactory.hxx>
 #include <vcl/svapp.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/viewsh.hxx>
 #include <sfx2/request.hxx>
 #include <sfx2/viewfrm.hxx>
diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx
index 1d8273bffb97..91092303671b 100644
--- a/sfx2/source/view/viewfrm.cxx
+++ b/sfx2/source/view/viewfrm.cxx
@@ -19,6 +19,7 @@
 
 #include <config_features.h>
 #include <osl/file.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/infobar.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/classificationhelper.hxx>
diff --git a/starmath/IwyuFilter_starmath.yaml 
b/starmath/IwyuFilter_starmath.yaml
index 9df24573b6e2..d3072282fdae 100644
--- a/starmath/IwyuFilter_starmath.yaml
+++ b/starmath/IwyuFilter_starmath.yaml
@@ -1,6 +1,9 @@
 ---
 assumeFilename: starmath/source/document.cxx
 blacklist:
+    starmath/inc/smmod.hxx:
+    # Needed for define
+    - sfx2/app.hxx
     starmath/source/accessibility.hxx:
     # Base class needs complete type
     - com/sun/star/accessibility/XAccessible.hpp
diff --git a/starmath/inc/smmod.hxx b/starmath/inc/smmod.hxx
index b225b654a8e5..fc97d5392912 100644
--- a/starmath/inc/smmod.hxx
+++ b/starmath/inc/smmod.hxx
@@ -21,6 +21,7 @@
 #define INCLUDED_STARMATH_INC_SMMOD_HXX
 
 #include <sfx2/module.hxx>
+#include <sfx2/app.hxx>
 
 #include <unotools/options.hxx>
 #include <memory>
diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx
index a99b6e215613..a05e6a56b9f9 100644
--- a/svx/source/form/filtnav.cxx
+++ b/svx/source/form/filtnav.cxx
@@ -49,9 +49,11 @@
 #include <vcl/wrkwin.hxx>
 #include <vcl/settings.hxx>
 #include <tools/diagnose_ex.h>
+#include <vcl/commandevent.hxx>
 #include <vcl/svlbitm.hxx>
 #include <vcl/treelistentry.hxx>
 #include <vcl/viewdataentry.hxx>
+#include <vcl/svapp.hxx>
 
 #include <bitmaps.hlst>
 
diff --git a/svx/source/form/fmtextcontrolshell.cxx 
b/svx/source/form/fmtextcontrolshell.cxx
index 7d1d35c50f19..f5eddefd23d5 100644
--- a/svx/source/form/fmtextcontrolshell.cxx
+++ b/svx/source/form/fmtextcontrolshell.cxx
@@ -45,6 +45,7 @@
 #include <sfx2/bindings.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 #include <sfx2/objsh.hxx>
 #include <sfx2/request.hxx>
 #include <sfx2/sfxuno.hxx>
diff --git a/svx/source/form/fmvwimp.cxx b/svx/source/form/fmvwimp.cxx
index a2ae47c50013..9441bf32fc7d 100644
--- a/svx/source/form/fmvwimp.cxx
+++ b/svx/source/form/fmvwimp.cxx
@@ -79,6 +79,7 @@
 #include <unotools/moduleoptions.hxx>
 #include <tools/diagnose_ex.h>
 #include <sal/log.hxx>
+#include <vcl/svapp.hxx>
 #include <vcl/stdtext.hxx>
 #include <connectivity/dbtools.hxx>
 
diff --git a/svx/source/form/tabwin.cxx b/svx/source/form/tabwin.cxx
index de3ee78e37fe..0b26759311eb 100644
--- a/svx/source/form/tabwin.cxx
+++ b/svx/source/form/tabwin.cxx
@@ -52,6 +52,7 @@
 #include <svx/dataaccessdescriptor.hxx>
 #include <vcl/treelistentry.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/svapp.hxx>
 #include <tabwin.hrc>
 
 const long STD_WIN_SIZE_X = 120;
diff --git a/svx/source/gallery2/galctrl.cxx b/svx/source/gallery2/galctrl.cxx
index 73d15e089512..b01e292402bb 100644
--- a/svx/source/gallery2/galctrl.cxx
+++ b/svx/source/gallery2/galctrl.cxx
@@ -34,6 +34,8 @@
 #include <galobj.hxx>
 #include <avmedia/mediawindow.hxx>
 #include <svx/strings.hrc>
+#include <vcl/event.hxx>
+#include <vcl/commandevent.hxx>
 #include <vcl/graphicfilter.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/builderfactory.hxx>
diff --git a/svx/source/sidebar/text/TextCharacterSpacingControl.cxx 
b/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
index 5182b6edb219..7ad11da8922b 100644
--- a/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
+++ b/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
@@ -22,6 +22,7 @@
 #include <editeng/editids.hrc>
 #include <editeng/kernitem.hxx>
 #include <editeng/fhgtitem.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/sidebar/Theme.hxx>
diff --git a/svx/source/stbctrls/pszctrl.cxx b/svx/source/stbctrls/pszctrl.cxx
index 8f4cae9a0cb0..80a94a589730 100644
--- a/svx/source/stbctrls/pszctrl.cxx
+++ b/svx/source/stbctrls/pszctrl.cxx
@@ -19,11 +19,14 @@
 
 #include <limits.h>
 #include <vcl/builder.hxx>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
 #include <vcl/field.hxx>
 #include <vcl/status.hxx>
 #include <vcl/menu.hxx>
 #include <vcl/image.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/svapp.hxx>
 #include <svl/stritem.hxx>
 #include <svl/ptitem.hxx>
 #include <svl/itempool.hxx>
diff --git a/svx/source/stbctrls/xmlsecctrl.cxx 
b/svx/source/stbctrls/xmlsecctrl.cxx
index 1f9ea639444d..deb717dacaf9 100644
--- a/svx/source/stbctrls/xmlsecctrl.cxx
+++ b/svx/source/stbctrls/xmlsecctrl.cxx
@@ -22,6 +22,8 @@
 #include <vcl/builder.hxx>
 #include <vcl/menu.hxx>
 #include <vcl/image.hxx>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
 #include <sfx2/signaturestate.hxx>
 #include <sfx2/app.hxx>
 #include <sfx2/module.hxx>
diff --git a/svx/source/svdraw/svdograf.cxx b/svx/source/svdraw/svdograf.cxx
index b98fa5efa4f6..c8eb04b37d3a 100644
--- a/svx/source/svdraw/svdograf.cxx
+++ b/svx/source/svdraw/svdograf.cxx
@@ -22,6 +22,7 @@
 #include <sfx2/lnkbase.hxx>
 #include <math.h>
 #include <tools/helpers.hxx>
+#include <sot/exchange.hxx>
 #include <sot/formats.hxx>
 #include <sot/storage.hxx>
 #include <unotools/ucbstreamhelper.hxx>
diff --git a/svx/source/svdraw/svdoole2.cxx b/svx/source/svdraw/svdoole2.cxx
index 68c972bc42a1..75a36a4af429 100644
--- a/svx/source/svdraw/svdoole2.cxx
+++ b/svx/source/svdraw/svdoole2.cxx
@@ -27,6 +27,7 @@
 #include <com/sun/star/embed/EmbedMisc.hpp>
 #include <com/sun/star/embed/Aspects.hpp>
 #include <com/sun/star/embed/ObjectSaveVetoException.hpp>
+#include <com/sun/star/embed/XEmbeddedObject.hpp>
 #include <com/sun/star/embed/XEmbedPersist2.hpp>
 #include <com/sun/star/embed/XInplaceClient.hpp>
 #include <com/sun/star/embed/XInplaceObject.hpp>
diff --git a/sw/inc/swmodule.hxx b/sw/inc/swmodule.hxx
index 4e4577f3fc10..52decb788a9e 100644
--- a/sw/inc/swmodule.hxx
+++ b/sw/inc/swmodule.hxx
@@ -27,6 +27,7 @@
 #include <svl/lstner.hxx>
 #include <unotools/options.hxx>
 #include <sfx2/module.hxx>
+#include <sfx2/app.hxx>
 
 #include "swdllapi.h"
 #include "shellid.hxx"
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx 
b/sw/qa/extras/uiwriter/uiwriter.cxx
index ea1091a93907..c283aa5a755a 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -105,6 +105,7 @@
 #include <comphelper/propertysequence.hxx>
 #include <sfx2/classificationhelper.hxx>
 #include <LibreOfficeKit/LibreOfficeKitEnums.h>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/dispatch.hxx>
 #include <comphelper/configurationhelper.hxx>
diff --git a/sw/source/core/doc/DocumentContentOperationsManager.cxx 
b/sw/source/core/doc/DocumentContentOperationsManager.cxx
index eb7df745682f..c6ff7c163462 100644
--- a/sw/source/core/doc/DocumentContentOperationsManager.cxx
+++ b/sw/source/core/doc/DocumentContentOperationsManager.cxx
@@ -72,6 +72,7 @@
 #include <unotools/charclass.hxx>
 #include <unotools/configmgr.hxx>
 #include <sfx2/Metadatable.hxx>
+#include <sot/exchange.hxx>
 #include <svl/stritem.hxx>
 #include <svl/itemiter.hxx>
 #include <svx/svdobj.hxx>
diff --git a/sw/source/core/doc/doclay.cxx b/sw/source/core/doc/doclay.cxx
index 396fbc042f40..200b46592426 100644
--- a/sw/source/core/doc/doclay.cxx
+++ b/sw/source/core/doc/doclay.cxx
@@ -20,6 +20,7 @@
 #include <unotools/linguprops.hxx>
 #include <unotools/lingucfg.hxx>
 #include <hintids.hxx>
+#include <sot/exchange.hxx>
 #include <sfx2/progress.hxx>
 #include <svx/svdmodel.hxx>
 #include <svx/svdpage.hxx>
diff --git a/sw/source/core/doc/swserv.cxx b/sw/source/core/doc/swserv.cxx
index 6bf133cbf352..5dfe6d92b36b 100644
--- a/sw/source/core/doc/swserv.cxx
+++ b/sw/source/core/doc/swserv.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <sot/storage.hxx>
+#include <sot/exchange.hxx>
 #include <sfx2/linkmgr.hxx>
 #include <com/sun/star/uno/Sequence.h>
 #include <doc.hxx>
diff --git a/sw/source/core/docnode/section.cxx 
b/sw/source/core/docnode/section.cxx
index e0ca1175f1c7..d2474855d4ad 100644
--- a/sw/source/core/docnode/section.cxx
+++ b/sw/source/core/docnode/section.cxx
@@ -21,6 +21,7 @@
 #include <libxml/xmlwriter.h>
 #include <stdlib.h>
 #include <hintids.hxx>
+#include <sot/exchange.hxx>
 #include <svl/intitem.hxx>
 #include <svl/stritem.hxx>
 #include <sfx2/docfile.hxx>
diff --git a/sw/source/core/docnode/swbaslnk.cxx 
b/sw/source/core/docnode/swbaslnk.cxx
index bce6076aa523..7d0edf5fedf0 100644
--- a/sw/source/core/docnode/swbaslnk.cxx
+++ b/sw/source/core/docnode/swbaslnk.cxx
@@ -31,6 +31,7 @@
 #include <sfx2/linkmgr.hxx>
 #include <sfx2/event.hxx>
 #include <svtools/soerr.hxx>
+#include <sot/exchange.hxx>
 #include <fmtfsize.hxx>
 #include <fmtanchr.hxx>
 #include <frmatr.hxx>
diff --git a/sw/source/core/fields/ddefld.cxx b/sw/source/core/fields/ddefld.cxx
index 4211f3fcb770..4aaeadb7274e 100644
--- a/sw/source/core/fields/ddefld.cxx
+++ b/sw/source/core/fields/ddefld.cxx
@@ -23,6 +23,7 @@
 #include <osl/diagnose.h>
 #include <osl/thread.h>
 #include <sfx2/linkmgr.hxx>
+#include <sot/exchange.hxx>
 #include <doc.hxx>
 #include <IDocumentLinksAdministration.hxx>
 #include <IDocumentState.hxx>
diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx
index 7d63fdfdca95..363f1056583a 100644
--- a/sw/source/core/frmedt/fefly1.cxx
+++ b/sw/source/core/frmedt/fefly1.cxx
@@ -27,6 +27,7 @@
 #include <svx/svdouno.hxx>
 #include <svx/fmglob.hxx>
 #include <tools/globname.hxx>
+#include <sot/exchange.hxx>
 #include <com/sun/star/form/FormButtonType.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
 #include <com/sun/star/embed/XEmbeddedObject.hpp>
diff --git a/sw/source/core/frmedt/feshview.cxx 
b/sw/source/core/frmedt/feshview.cxx
index 83b2a5c5ede8..c570d094fe3a 100644
--- a/sw/source/core/frmedt/feshview.cxx
+++ b/sw/source/core/frmedt/feshview.cxx
@@ -45,6 +45,7 @@
 #include <svx/svdpagv.hxx>
 #include <svx/dialmgr.hxx>
 #include <tools/globname.hxx>
+#include <sot/exchange.hxx>
 #include <IDocumentDrawModelAccess.hxx>
 #include <IDocumentSettingAccess.hxx>
 #include <DocumentSettingManager.hxx>
diff --git a/sw/source/core/ole/ndole.cxx b/sw/source/core/ole/ndole.cxx
index 9cad7b17a68b..1990919993e3 100644
--- a/sw/source/core/ole/ndole.cxx
+++ b/sw/source/core/ole/ndole.cxx
@@ -27,6 +27,7 @@
 #include <com/sun/star/chart2/XChartDocument.hpp>
 #include <cppuhelper/implbase.hxx>
 
+#include <sot/exchange.hxx>
 #include <tools/globname.hxx>
 #include <hintids.hxx>
 #include <sfx2/docfile.hxx>
diff --git a/sw/source/core/swg/SwXMLTextBlocks.cxx 
b/sw/source/core/swg/SwXMLTextBlocks.cxx
index 4828ab1afcf6..af17beb63f07 100644
--- a/sw/source/core/swg/SwXMLTextBlocks.cxx
+++ b/sw/source/core/swg/SwXMLTextBlocks.cxx
@@ -22,6 +22,7 @@
 #include <osl/file.hxx>
 #include <rtl/ustring.hxx>
 #include <sal/log.hxx>
+#include <sot/exchange.hxx>
 #include <sot/stg.hxx>
 #include <sfx2/docfile.hxx>
 #include <tools/urlobj.hxx>
diff --git a/sw/source/core/text/EnhancedPDFExportHelper.cxx 
b/sw/source/core/text/EnhancedPDFExportHelper.cxx
index cbfbac447f06..79de6f34239e 100644
--- a/sw/source/core/text/EnhancedPDFExportHelper.cxx
+++ b/sw/source/core/text/EnhancedPDFExportHelper.cxx
@@ -23,6 +23,7 @@
 #include <EnhancedPDFExportHelper.hxx>
 #include <hintids.hxx>
 
+#include <sot/exchange.hxx>
 #include <vcl/outdev.hxx>
 #include <vcl/pdfextoutdevdata.hxx>
 #include <tools/multisel.hxx>
diff --git a/sw/source/filter/html/htmlplug.cxx 
b/sw/source/filter/html/htmlplug.cxx
index f71e81b9a8cc..ca1eeb9b9ce5 100644
--- a/sw/source/filter/html/htmlplug.cxx
+++ b/sw/source/filter/html/htmlplug.cxx
@@ -26,11 +26,13 @@
 #include <vcl/svapp.hxx>
 #include <sfx2/frmhtml.hxx>
 #include <sfx2/frmhtmlw.hxx>
+#include <sfx2/frmdescr.hxx>
 #include <vcl/wrkwin.hxx>
 #include <sot/storage.hxx>
 #include <svx/xoutbmp.hxx>
 #include <editeng/ulspitem.hxx>
 #include <editeng/lrspitem.hxx>
+#include <svtools/htmlout.hxx>
 #include <svtools/htmlkywd.hxx>
 #include <svtools/htmltokn.h>
 #include <SwAppletImpl.hxx>
diff --git a/sw/source/filter/html/wrthtml.cxx 
b/sw/source/filter/html/wrthtml.cxx
index 1e3afd632211..3f72b20f696b 100644
--- a/sw/source/filter/html/wrthtml.cxx
+++ b/sw/source/filter/html/wrthtml.cxx
@@ -28,6 +28,7 @@
 
 #include <svtools/htmlcfg.hxx>
 #include <svtools/htmltokn.h>
+#include <svtools/htmlkywd.hxx>
 #include <vcl/svapp.hxx>
 #include <i18nlangtag/languagetag.hxx>
 #include <sfx2/frmhtmlw.hxx>
diff --git a/sw/source/filter/html/wrthtml.hxx 
b/sw/source/filter/html/wrthtml.hxx
index b92b95f70e27..c90c784e7abc 100644
--- a/sw/source/filter/html/wrthtml.hxx
+++ b/sw/source/filter/html/wrthtml.hxx
@@ -32,6 +32,7 @@
 #include <o3tl/sorted_vector.hxx>
 #include <o3tl/typed_flags_set.hxx>
 #include <rtl/ref.hxx>
+#include <svtools/htmlout.hxx>
 
 #include <shellio.hxx>
 #include <wrt_fn.hxx>
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx 
b/sw/source/filter/ww8/docxattributeoutput.cxx
index ed388364a1ba..2c058f07fd48 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -99,6 +99,7 @@
 #include <svl/whiter.hxx>
 #include <rtl/tencinfo.h>
 #include <sal/log.hxx>
+#include <sot/exchange.hxx>
 
 #include <docufld.hxx>
 #include <authfld.hxx>
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx 
b/sw/source/filter/ww8/rtfattributeoutput.cxx
index da67362138c9..b5462838ec55 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -26,6 +26,7 @@
 #include <fmtcntnt.hxx>
 #include <rtl/tencinfo.h>
 #include <sal/log.hxx>
+#include <sot/exchange.hxx>
 #include <svtools/rtfkeywd.hxx>
 #include <editeng/fontitem.hxx>
 #include <editeng/tstpitem.hxx>
diff --git a/sw/source/filter/xml/xmltexte.cxx 
b/sw/source/filter/xml/xmltexte.cxx
index 168f9a8b3406..b2ae6f5ff08c 100644
--- a/sw/source/filter/xml/xmltexte.cxx
+++ b/sw/source/filter/xml/xmltexte.cxx
@@ -44,6 +44,7 @@
 #include <SwAppletImpl.hxx>
 #include <ndindex.hxx>
 
+#include <sot/exchange.hxx>
 #include <svl/urihelper.hxx>
 #include <sfx2/frmdescr.hxx>
 #include <SwStyleNameMapper.hxx>
diff --git a/sw/source/ui/chrdlg/chardlg.cxx b/sw/source/ui/chrdlg/chardlg.cxx
index 15576805856c..06b3cedd074b 100644
--- a/sw/source/ui/chrdlg/chardlg.cxx
+++ b/sw/source/ui/chrdlg/chardlg.cxx
@@ -26,6 +26,7 @@
 #include <editeng/flstitem.hxx>
 #include <sfx2/htmlmode.hxx>
 #include <svl/cjkoptions.hxx>
+#include <svl/macitem.hxx>
 
 #include <cmdid.h>
 #include <swtypes.hxx>
diff --git a/sw/source/ui/dbui/mmresultdialogs.cxx 
b/sw/source/ui/dbui/mmresultdialogs.cxx
index 318229fa3104..230d26c98cb7 100644
--- a/sw/source/ui/dbui/mmresultdialogs.cxx
+++ b/sw/source/ui/dbui/mmresultdialogs.cxx
@@ -48,6 +48,7 @@
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <tools/urlobj.hxx>
 #include <svl/urihelper.hxx>
 #include <vcl/print.hxx>
diff --git a/sw/source/ui/dialog/macassgn.cxx b/sw/source/ui/dialog/macassgn.cxx
index a8ae8c16f73a..77235ec72f67 100644
--- a/sw/source/ui/dialog/macassgn.cxx
+++ b/sw/source/ui/dialog/macassgn.cxx
@@ -22,6 +22,7 @@
 #include <sfx2/htmlmode.hxx>
 #include <svx/svxids.hrc>
 #include <sfx2/app.hxx>
+#include <svl/macitem.hxx>
 
 #include <swtypes.hxx>
 #include <wrtsh.hxx>
diff --git a/sw/source/ui/misc/glossary.cxx b/sw/source/ui/misc/glossary.cxx
index a29266b9de16..cd3853f38f64 100644
--- a/sw/source/ui/misc/glossary.cxx
+++ b/sw/source/ui/misc/glossary.cxx
@@ -25,10 +25,12 @@
 #include <vcl/help.hxx>
 #include <vcl/builderfactory.hxx>
 #include <svl/stritem.hxx>
+#include <svl/macitem.hxx>
 #include <unotools/pathoptions.hxx>
 #include <unotools/lingucfg.hxx>
 #include <sfx2/request.hxx>
 #include <sfx2/fcontnr.hxx>
+#include <sfx2/docfilt.hxx>
 
 #include <svx/svxdlg.hxx>
 #include <svx/dialogs.hrc>
diff --git a/sw/source/ui/vba/vbaapplication.cxx 
b/sw/source/ui/vba/vbaapplication.cxx
index 962029e793ff..9dbe23c66289 100644
--- a/sw/source/ui/vba/vbaapplication.cxx
+++ b/sw/source/ui/vba/vbaapplication.cxx
@@ -24,6 +24,7 @@
 #include "vbadocument.hxx"
 #include <sal/log.hxx>
 #include <osl/file.hxx>
+#include <vcl/svapp.hxx>
 #include <vbahelper/vbahelper.hxx>
 #include "vbawindow.hxx"
 #include "vbasystem.hxx"
diff --git a/sw/source/uibase/app/docsh2.cxx b/sw/source/uibase/app/docsh2.cxx
index 32e337393ac3..e140f6cad49f 100644
--- a/sw/source/uibase/app/docsh2.cxx
+++ b/sw/source/uibase/app/docsh2.cxx
@@ -37,6 +37,7 @@
 #include <vcl/wrkwin.hxx>
 #include <svl/lckbitem.hxx>
 #include <svl/eitem.hxx>
+#include <svl/macitem.hxx>
 #include <svl/zforlist.hxx>
 #include <svl/zformat.hxx>
 #include <unotools/pathoptions.hxx>
diff --git a/sw/source/uibase/dbui/dbmgr.cxx b/sw/source/uibase/dbui/dbmgr.cxx
index 6b09746db85f..508c2760807d 100644
--- a/sw/source/uibase/dbui/dbmgr.cxx
+++ b/sw/source/uibase/dbui/dbmgr.cxx
@@ -60,6 +60,7 @@
 #include <svl/eitem.hxx>
 #include <vcl/oldprintadaptor.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <sfx2/progress.hxx>
 #include <sfx2/dispatch.hxx>
 #include <cmdid.h>
diff --git a/sw/source/uibase/dochdl/gloshdl.cxx 
b/sw/source/uibase/dochdl/gloshdl.cxx
index b486c3b3041a..fc1f13dae296 100644
--- a/sw/source/uibase/dochdl/gloshdl.cxx
+++ b/sw/source/uibase/dochdl/gloshdl.cxx
@@ -25,6 +25,7 @@
 #include <svl/macitem.hxx>
 #include <sfx2/fcontnr.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <svl/urihelper.hxx>
 #include <unotools/transliterationwrapper.hxx>
 #include <poolfmt.hxx>
diff --git a/sw/source/uibase/sidebar/PageMarginControl.cxx 
b/sw/source/uibase/sidebar/PageMarginControl.cxx
index 337e665a62e8..2083966a01d2 100644
--- a/sw/source/uibase/sidebar/PageMarginControl.cxx
+++ b/sw/source/uibase/sidebar/PageMarginControl.cxx
@@ -26,6 +26,7 @@
 #include <strings.hrc>
 
 #include <editeng/sizeitem.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <svx/svxids.hrc>
diff --git a/sw/source/uibase/sidebar/PageSizeControl.cxx 
b/sw/source/uibase/sidebar/PageSizeControl.cxx
index fe9e78e2ddb3..7afe30a4d859 100644
--- a/sw/source/uibase/sidebar/PageSizeControl.cxx
+++ b/sw/source/uibase/sidebar/PageSizeControl.cxx
@@ -29,6 +29,7 @@
 #include <unotools/localedatawrapper.hxx>
 #include <rtl/character.hxx>
 #include <editeng/paperinf.hxx>
+#include <sfx2/app.hxx>
 #include <sfx2/bindings.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/viewfrm.hxx>
diff --git a/sw/source/uibase/utlui/bookctrl.cxx 
b/sw/source/uibase/utlui/bookctrl.cxx
index 747f8fb77e9b..72f7316fd899 100644
--- a/sw/source/uibase/utlui/bookctrl.cxx
+++ b/sw/source/uibase/utlui/bookctrl.cxx
@@ -26,6 +26,7 @@
 #include <svl/eitem.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/viewfrm.hxx>
+#include <vcl/commandevent.hxx>
 #include <vcl/event.hxx>
 #include <vcl/status.hxx>
 #include <vcl/menu.hxx>
diff --git a/sw/source/uibase/utlui/glbltree.cxx 
b/sw/source/uibase/utlui/glbltree.cxx
index 19105d4f1156..232501b05455 100644
--- a/sw/source/uibase/utlui/glbltree.cxx
+++ b/sw/source/uibase/utlui/glbltree.cxx
@@ -24,6 +24,7 @@
 #include <sfx2/viewfrm.hxx>
 #include <svl/urihelper.hxx>
 #include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
 #include <vcl/help.hxx>
 #include <sot/filelist.hxx>
 #include <svl/eitem.hxx>
diff --git a/sw/source/uibase/wrtsh/wrtsh1.cxx 
b/sw/source/uibase/wrtsh/wrtsh1.cxx
index 5d5745bb85fa..1e721a638f9a 100644
--- a/sw/source/uibase/wrtsh/wrtsh1.cxx
+++ b/sw/source/uibase/wrtsh/wrtsh1.cxx
@@ -103,6 +103,7 @@
 #include <FrameControlsManager.hxx>
 
 #include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
 #include <svtools/embedhlp.hxx>
 #include <memory>
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to