include/vcl/graphic/GraphicMetadata.hxx     |    6 ++++++
 vcl/IwyuFilter_vcl.yaml                     |   16 ++++++++--------
 vcl/backendtest/outputdevice/common.cxx     |    2 ++
 vcl/headless/CairoCommon.cxx                |    1 +
 vcl/inc/DropdownBox.hxx                     |    2 ++
 vcl/inc/ImplLayoutArgs.hxx                  |    6 +++++-
 vcl/inc/ImplOutDevData.hxx                  |    1 +
 vcl/inc/PriorityMergedHBox.hxx              |    1 -
 vcl/inc/SalGradient.hxx                     |    1 +
 vcl/inc/accel.hxx                           |    2 --
 vcl/inc/bitmap/Octree.hxx                   |    1 +
 vcl/inc/bitmap/impoctree.hxx                |    2 +-
 vcl/inc/bitmaps.hlst                        |    2 ++
 vcl/inc/calendar.hxx                        |    1 -
 vcl/inc/debugevent.hxx                      |    1 -
 vcl/inc/dndlistenercontainer.hxx            |    3 ---
 vcl/inc/font/DirectFontSubstitution.hxx     |    2 +-
 vcl/inc/font/FeatureCollector.hxx           |    2 +-
 vcl/inc/font/FontMetricData.hxx             |    3 +--
 vcl/inc/font/LogicalFontInstance.hxx        |    1 -
 vcl/inc/font/PhysicalFontFace.hxx           |    1 -
 vcl/inc/font/PhysicalFontFaceCollection.hxx |    2 --
 vcl/inc/font/PhysicalFontFamily.hxx         |    2 --
 vcl/inc/font/fontsubstitution.hxx           |    2 --
 vcl/inc/fontattributes.hxx                  |    1 -
 vcl/inc/glyphid.hxx                         |    2 +-
 vcl/inc/graphic/DetectorTools.hxx           |    4 ++++
 vcl/inc/graphic/GraphicFormatDetector.hxx   |    4 +---
 vcl/inc/graphic/GraphicID.hxx               |    1 -
 vcl/inc/graphic/GraphicReader.hxx           |    3 ---
 vcl/inc/graphic/Manager.hxx                 |    1 -
 vcl/inc/graphic/UnoBinaryDataContainer.hxx  |    3 ---
 vcl/inc/graphic/UnoGraphicDescriptor.hxx    |    1 -
 vcl/inc/graphic/VectorGraphicLoader.hxx     |    1 -
 vcl/inc/headless/CairoCommon.hxx            |    2 --
 vcl/inc/headless/svpgdi.hxx                 |    2 --
 vcl/inc/headless/svpvd.hxx                  |    1 -
 vcl/inc/hyperlabel.hxx                      |    2 --
 vcl/inc/imagerepository.hxx                 |    1 -
 vcl/inc/impfont.hxx                         |    1 +
 vcl/inc/impglyphitem.hxx                    |    2 +-
 vcl/inc/jsdialog/enabled.hxx                |    2 +-
 vcl/inc/jsdialog/jsdialogbuilder.hxx        |    4 ----
 vcl/inc/listbox.hxx                         |    5 ++---
 vcl/inc/menubarvalue.hxx                    |    1 -
 vcl/inc/opengl/win/WinDeviceInfo.hxx        |    4 ----
 vcl/inc/opengl/zone.hxx                     |    1 -
 vcl/inc/pdf/BitmapID.hxx                    |    1 -
 vcl/inc/pdf/Matrix3.hxx                     |    1 -
 vcl/inc/pdf/ResourceDict.hxx                |    1 -
 vcl/inc/pdf/XmpMetadata.hxx                 |    1 -
 vcl/inc/pdf/objectcopier.hxx                |    1 -
 vcl/inc/pdf/pdfcompat.hxx                   |    6 ++----
 vcl/inc/pdf/pdfwriter_impl.hxx              |    1 -
 vcl/inc/print.h                             |    2 +-
 vcl/inc/printaccessoryview.hrc              |    2 ++
 vcl/inc/regband.hxx                         |    2 ++
 vcl/inc/salgdi.hxx                          |    1 -
 vcl/inc/sallayout.hxx                       |    4 ----
 vcl/inc/salprn.hxx                          |    1 +
 vcl/inc/salptype.hxx                        |    1 +
 vcl/inc/salvtables.hxx                      |    2 +-
 vcl/inc/salwtype.hxx                        |    1 -
 vcl/inc/scanlinewriter.hxx                  |    2 +-
 vcl/inc/schedulerimpl.hxx                   |    2 +-
 vcl/inc/sft.hxx                             |    7 ++++---
 vcl/inc/skia/x11/salvd.hxx                  |    2 ++
 vcl/inc/skia/x11/textrender.hxx             |    1 -
 vcl/inc/slider.hxx                          |    2 --
 vcl/inc/strhelper.hxx                       |    2 --
 vcl/inc/svdata.hxx                          |   10 +++++++---
 vcl/inc/svimpbox.hxx                        |    1 -
 vcl/inc/textlayout.hxx                      |    4 ++++
 vcl/inc/textlineinfo.hxx                    |    3 ++-
 vcl/inc/toolbox.h                           |    1 +
 vcl/inc/units.hrc                           |    3 +++
 vcl/inc/unx/fc_fontoptions.hxx              |    1 +
 vcl/inc/unx/fontmanager.hxx                 |    4 ----
 vcl/inc/unx/genpspgraphics.h                |    1 -
 vcl/inc/unx/glyphcache.hxx                  |    5 +----
 vcl/inc/unx/gtk/atkbridge.hxx               |    2 --
 vcl/inc/unx/i18n_im.hxx                     |    2 --
 vcl/inc/unx/i18n_xkb.hxx                    |    2 --
 vcl/inc/unx/saldata.hxx                     |    1 -
 vcl/inc/unx/saldisp.hxx                     |    2 --
 vcl/inc/unx/salframe.h                      |    2 --
 vcl/inc/unx/salgdi.h                        |    7 -------
 vcl/inc/unx/salinst.h                       |    1 -
 vcl/inc/unx/salobj.h                        |    1 -
 vcl/inc/unx/salvd.h                         |    2 ++
 vcl/inc/unx/sessioninhibitor.hxx            |    1 -
 vcl/inc/unx/sm.hxx                          |    2 --
 vcl/inc/unx/wmadaptor.hxx                   |    1 -
 vcl/inc/unx/x11/x11gdiimpl.h                |    2 +-
 vcl/inc/unx/x11/x11sys.hxx                  |    1 -
 vcl/inc/unx/x11/xlimits.hxx                 |    1 -
 vcl/inc/vcleventlisteners.hxx               |    3 +++
 vcl/inc/vclstatuslistener.hxx               |    2 +-
 vcl/inc/verticaltabctrl.hxx                 |    1 -
 vcl/inc/watchdog.hxx                        |    2 --
 vcl/inc/window.h                            |    2 +-
 vcl/source/app/salvtables.cxx               |    1 +
 vcl/source/app/svapp.cxx                    |    1 +
 vcl/source/control/imp_listbox.cxx          |    1 +
 vcl/source/filter/ipdf/pdfcompat.cxx        |    1 +
 vcl/source/filter/ipdf/pdfread.cxx          |    1 +
 vcl/source/gdi/CommonSalLayout.cxx          |    1 +
 vcl/source/graphic/UnoGraphicDescriptor.cxx |    1 +
 vcl/source/opengl/OpenGLHelper.cxx          |    1 +
 vcl/unx/generic/gdi/cairotextrender.cxx     |    1 +
 vcl/unx/generic/window/salframe.cxx         |    1 +
 vcl/unx/gtk3/gtkframe.cxx                   |    2 ++
 112 files changed, 101 insertions(+), 142 deletions(-)

New commits:
commit fabb63ff5f2b626724517e4a9ab1739e7956a37e
Author:     Gabor Kelemen <gabor.kelemen.ext...@allotropia.de>
AuthorDate: Mon Aug 14 15:51:56 2023 +0200
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Wed Aug 23 08:06:43 2023 +0200

    tdf#146619 Remove unused includes from vcl/inc
    
    Change-Id: I8fbe02547d5045cfdb5021720b10ddd10106209a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155750
    Tested-by: Jenkins
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>

diff --git a/include/vcl/graphic/GraphicMetadata.hxx 
b/include/vcl/graphic/GraphicMetadata.hxx
index 46c3d12a12a2..33ee9d81c3b4 100644
--- a/include/vcl/graphic/GraphicMetadata.hxx
+++ b/include/vcl/graphic/GraphicMetadata.hxx
@@ -8,6 +8,12 @@
  */
 #ifndef INCLUDED_VCL_GRAPHIC_GRAPHICMETADATA_HXX
 #define INCLUDED_VCL_GRAPHIC_GRAPHICMETADATA_HXX
+
+#include <tools/gen.hxx>
+#include <vcl/mapmod.hxx>
+
+#include <optional>
+
 // Info class for all supported file formats
 enum class GraphicFileFormat
 {
diff --git a/vcl/IwyuFilter_vcl.yaml b/vcl/IwyuFilter_vcl.yaml
index 69c5ec9a5d05..aba0e21f1375 100644
--- a/vcl/IwyuFilter_vcl.yaml
+++ b/vcl/IwyuFilter_vcl.yaml
@@ -4,9 +4,6 @@ excludelist:
     vcl/inc/salusereventlist.hxx:
     # Don't propose hxx -> h change in URE libs
     - osl/thread.hxx
-    vcl/inc/headless/svpgdi.hxx:
-    # OSL_BIGENDIAN is being checked
-    - osl/endian.h
     vcl/inc/headless/svpinst.hxx:
     # Don't propose hxx -> h change in URE libs
     - osl/thread.hxx
@@ -16,6 +13,14 @@ excludelist:
     vcl/inc/unx/saldisp.hxx:
     # Don't replace with generated header
     - epoxy/glx.h
+    vcl/inc/unx/svsys.h:
+    # Empty header, but keep intact for nice system abstraction
+    - X11/Xlib.h
+    - X11/Xutil.h
+    - X11/XKBlib.h
+    vcl/inc/svsys.h:
+    # Needed for nice system abstraction
+    - unx/svsys.h
     vcl/qa/cppunit/outdev.cxx:
     # Needed for direct member access
     - basegfx/matrix/b2dhommatrix.hxx
@@ -48,8 +53,6 @@ excludelist:
     # Actually these are used
     - com/sun/star/beans/PropertyValue.hpp
     vcl/source/fontsubset/sft.cxx:
-    # OSL_BIGENDIAN is being checked
-    - osl/endian.h
     # Needed on WIN32 / MAC / IOS
     - xlat.hxx
     vcl/source/gdi/configsettings.cxx:
@@ -80,9 +83,6 @@ excludelist:
     vcl/unx/generic/gdi/font.cxx:
     # Complete type needed for implicit dtor
     - vcl/fontcharmap.hxx
-    vcl/unx/generic/gdi/salbmp.cxx:
-    # OSL_BIGENDIAN is being checked
-    - osl/endian.h
     vcl/unx/generic/glyphs/freetype_glyphcache.cxx:
     # Needed for FreeType header macros
     - ft2build.h
diff --git a/vcl/backendtest/outputdevice/common.cxx 
b/vcl/backendtest/outputdevice/common.cxx
index d85791e40745..38c616bf3c93 100644
--- a/vcl/backendtest/outputdevice/common.cxx
+++ b/vcl/backendtest/outputdevice/common.cxx
@@ -13,6 +13,8 @@
 #include <bitmap/BitmapWriteAccess.hxx>
 #include <salgdi.hxx>
 
+#include <map>
+
 namespace vcl::test {
 
 namespace
diff --git a/vcl/headless/CairoCommon.cxx b/vcl/headless/CairoCommon.cxx
index d1a20ec1624b..954e29a2026d 100644
--- a/vcl/headless/CairoCommon.cxx
+++ b/vcl/headless/CairoCommon.cxx
@@ -28,6 +28,7 @@
 #include <basegfx/matrix/b2dhommatrixtools.hxx>
 #include <basegfx/polygon/b2dpolypolygontools.hxx>
 #include <basegfx/polygon/b2dpolygontools.hxx>
+#include <basegfx/range/b2irange.hxx>
 #include <unotools/configmgr.hxx>
 #include <sal/log.hxx>
 #include <osl/module.h>
diff --git a/vcl/inc/DropdownBox.hxx b/vcl/inc/DropdownBox.hxx
index 348444489e51..a6530babcaa1 100644
--- a/vcl/inc/DropdownBox.hxx
+++ b/vcl/inc/DropdownBox.hxx
@@ -24,6 +24,8 @@
 #include "IPrioritable.hxx"
 #include "NotebookbarPopup.hxx"
 
+class Button;
+
 class DropdownBox final : public VclHBox, public vcl::IPrioritable
 {
 private:
diff --git a/vcl/inc/ImplLayoutArgs.hxx b/vcl/inc/ImplLayoutArgs.hxx
index 1802ce19decd..faf170ca72b3 100644
--- a/vcl/inc/ImplLayoutArgs.hxx
+++ b/vcl/inc/ImplLayoutArgs.hxx
@@ -17,7 +17,11 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include "sallayout.hxx"
+#include <i18nlangtag/languagetag.hxx>
+#include <vcl/outdev.hxx>
+
+#include "impglyphitem.hxx"
+#include "ImplLayoutRuns.hxx"
 
 namespace vcl::text
 {
diff --git a/vcl/inc/ImplOutDevData.hxx b/vcl/inc/ImplOutDevData.hxx
index 34e9c058c1fa..f56caba1c33f 100644
--- a/vcl/inc/ImplOutDevData.hxx
+++ b/vcl/inc/ImplOutDevData.hxx
@@ -21,6 +21,7 @@
 
 #include <tools/gen.hxx>
 
+#include <vcl/virdev.hxx>
 #include <vcl/vclptr.hxx>
 
 class VirtualDevice;
diff --git a/vcl/inc/PriorityMergedHBox.hxx b/vcl/inc/PriorityMergedHBox.hxx
index fee998600bdd..ed2f105f20f4 100644
--- a/vcl/inc/PriorityMergedHBox.hxx
+++ b/vcl/inc/PriorityMergedHBox.hxx
@@ -18,7 +18,6 @@
 */
 
 #include <vcl/toolkit/button.hxx>
-#include <vcl/layout.hxx>
 #include "NotebookbarPopup.hxx"
 #include "PriorityHBox.hxx"
 
diff --git a/vcl/inc/SalGradient.hxx b/vcl/inc/SalGradient.hxx
index 1b4a47f9a6ff..c183d755063d 100644
--- a/vcl/inc/SalGradient.hxx
+++ b/vcl/inc/SalGradient.hxx
@@ -11,6 +11,7 @@
 #define INCLUDED_VCL_INC_SALGRADIENT_HXX
 
 #include <basegfx/point/b2dpoint.hxx>
+#include <tools/color.hxx>
 
 struct SalGradientStop
 {
diff --git a/vcl/inc/accel.hxx b/vcl/inc/accel.hxx
index b00950b30095..c7140db221fa 100644
--- a/vcl/inc/accel.hxx
+++ b/vcl/inc/accel.hxx
@@ -19,11 +19,9 @@
 
 #pragma once
 
-#include <config_options.h>
 #include <tools/solar.h>
 #include <tools/link.hxx>
 #include <vcl/keycod.hxx>
-#include <vcl/dllapi.h>
 #include <memory>
 #include <map>
 #include <vector>
diff --git a/vcl/inc/bitmap/Octree.hxx b/vcl/inc/bitmap/Octree.hxx
index 4db06502256d..3c9b5eb270a8 100644
--- a/vcl/inc/bitmap/Octree.hxx
+++ b/vcl/inc/bitmap/Octree.hxx
@@ -22,6 +22,7 @@
 
 #include <vcl/dllapi.h>
 #include <vcl/BitmapColor.hxx>
+#include <vcl/BitmapPalette.hxx>
 #include <tools/solar.h>
 
 struct OctreeNode
diff --git a/vcl/inc/bitmap/impoctree.hxx b/vcl/inc/bitmap/impoctree.hxx
index 3691e5c21289..7581b910885a 100644
--- a/vcl/inc/bitmap/impoctree.hxx
+++ b/vcl/inc/bitmap/impoctree.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_VCL_INC_IMPOCTREE_HXX
 #define INCLUDED_VCL_INC_IMPOCTREE_HXX
 
-#include "Octree.hxx"
+#include <vcl/BitmapColor.hxx>
 
 class ImpErrorQuad
 {
diff --git a/vcl/inc/bitmaps.hlst b/vcl/inc/bitmaps.hlst
index 4edd7b13b0b7..a9a0898716ee 100644
--- a/vcl/inc/bitmaps.hlst
+++ b/vcl/inc/bitmaps.hlst
@@ -8,6 +8,8 @@
  */
 #pragma once
 
+#include <rtl/ustring.hxx>
+
 inline constexpr OUStringLiteral SV_RESID_BITMAP_CHECK1 = 
u"vcl/res/check1.png";
 inline constexpr OUStringLiteral SV_RESID_BITMAP_CHECK2 = 
u"vcl/res/check2.png";
 inline constexpr OUStringLiteral SV_RESID_BITMAP_CHECK3 = 
u"vcl/res/check3.png";
diff --git a/vcl/inc/calendar.hxx b/vcl/inc/calendar.hxx
index 9c96b83708e5..b727039ceeb1 100644
--- a/vcl/inc/calendar.hxx
+++ b/vcl/inc/calendar.hxx
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_VCL_CALENDAR_HXX
 #define INCLUDED_VCL_CALENDAR_HXX
 
-#include <vcl/dllapi.h>
 #include <unotools/calendarwrapper.hxx>
 
 #include <vcl/ctrl.hxx>
diff --git a/vcl/inc/debugevent.hxx b/vcl/inc/debugevent.hxx
index a6f458265cbb..89010face23f 100644
--- a/vcl/inc/debugevent.hxx
+++ b/vcl/inc/debugevent.hxx
@@ -10,7 +10,6 @@
 #ifndef INCLUDED_VCL_DEBUGEVENT_HXX
 #define INCLUDED_VCL_DEBUGEVENT_HXX
 
-#include <vcl/dllapi.h>
 #include <vcl/timer.hxx>
 #include <sal/types.h>
 
diff --git a/vcl/inc/dndlistenercontainer.hxx b/vcl/inc/dndlistenercontainer.hxx
index 5a2f0571ca7a..bc4109d5e42c 100644
--- a/vcl/inc/dndlistenercontainer.hxx
+++ b/vcl/inc/dndlistenercontainer.hxx
@@ -25,12 +25,9 @@
 #include <com/sun/star/datatransfer/dnd/XDropTarget.hpp>
 #include <com/sun/star/datatransfer/dnd/XDropTargetDragContext.hpp>
 #include <com/sun/star/datatransfer/dnd/XDropTargetDropContext.hpp>
-#include <cppuhelper/compbase.hxx>
 #include <comphelper/compbase.hxx>
 #include <comphelper/interfacecontainer4.hxx>
 
-#include <vcl/unohelp2.hxx>
-
 class GenericDropTargetDropContext :
     public 
::cppu::WeakImplHelper<css::datatransfer::dnd::XDropTargetDropContext>
 {
diff --git a/vcl/inc/font/DirectFontSubstitution.hxx 
b/vcl/inc/font/DirectFontSubstitution.hxx
index 4abfb8832ea7..150bc3728192 100644
--- a/vcl/inc/font/DirectFontSubstitution.hxx
+++ b/vcl/inc/font/DirectFontSubstitution.hxx
@@ -22,12 +22,12 @@
 #include <sal/config.h>
 
 #include <rtl/ustring.hxx>
+#include <unotools/fontdefs.hxx>
 
 #include <vcl/rendercontext/AddFontSubstituteFlags.hxx>
 
 #include <font/fontsubstitution.hxx>
 
-#include <string>
 #include <string_view>
 #include <vector>
 
diff --git a/vcl/inc/font/FeatureCollector.hxx 
b/vcl/inc/font/FeatureCollector.hxx
index 0ffb5f9d424c..07957a6b3e27 100644
--- a/vcl/inc/font/FeatureCollector.hxx
+++ b/vcl/inc/font/FeatureCollector.hxx
@@ -13,7 +13,7 @@
 
 #include <vcl/font/Feature.hxx>
 #include <hb.h>
-#include <i18nlangtag/lang.h>
+#include <i18nlangtag/languagetag.hxx>
 
 #include <font/PhysicalFontFace.hxx>
 
diff --git a/vcl/inc/font/FontMetricData.hxx b/vcl/inc/font/FontMetricData.hxx
index bd552562ff9a..83eb77d54c6a 100644
--- a/vcl/inc/font/FontMetricData.hxx
+++ b/vcl/inc/font/FontMetricData.hxx
@@ -22,12 +22,11 @@
 #include <sal/config.h>
 
 #include <vcl/dllapi.h>
+#include <tools/degree.hxx>
 #include <tools/long.hxx>
 #include <tools/ref.hxx>
 #include <fontattributes.hxx>
 
-#include <vector>
-
 class FontMetricData;
 typedef tools::SvRef<FontMetricData> FontMetricDataRef;
 
diff --git a/vcl/inc/font/LogicalFontInstance.hxx 
b/vcl/inc/font/LogicalFontInstance.hxx
index 43b23d9cd0e9..40d3c57c4e67 100644
--- a/vcl/inc/font/LogicalFontInstance.hxx
+++ b/vcl/inc/font/LogicalFontInstance.hxx
@@ -35,7 +35,6 @@
 
 #include <optional>
 #include <unordered_map>
-#include <memory>
 
 #include <hb.h>
 
diff --git a/vcl/inc/font/PhysicalFontFace.hxx 
b/vcl/inc/font/PhysicalFontFace.hxx
index ac8ba2d958c7..1fce6a6cbab1 100644
--- a/vcl/inc/font/PhysicalFontFace.hxx
+++ b/vcl/inc/font/PhysicalFontFace.hxx
@@ -25,7 +25,6 @@
 #include <rtl/ref.hxx>
 #include <salhelper/simplereferenceobject.hxx>
 #include <tools/color.hxx>
-#include <tools/long.hxx>
 #include <vcl/dllapi.h>
 #include <vcl/fontcapabilities.hxx>
 #include <vcl/fontcharmap.hxx>
diff --git a/vcl/inc/font/PhysicalFontFaceCollection.hxx 
b/vcl/inc/font/PhysicalFontFaceCollection.hxx
index c9e3e64b6640..8208af44c465 100644
--- a/vcl/inc/font/PhysicalFontFaceCollection.hxx
+++ b/vcl/inc/font/PhysicalFontFaceCollection.hxx
@@ -21,8 +21,6 @@
 
 #include <sal/config.h>
 
-#include <vcl/dllapi.h>
-
 #include "PhysicalFontFace.hxx"
 
 #include <vector>
diff --git a/vcl/inc/font/PhysicalFontFamily.hxx 
b/vcl/inc/font/PhysicalFontFamily.hxx
index c5e38a293488..a944ed72fee3 100644
--- a/vcl/inc/font/PhysicalFontFamily.hxx
+++ b/vcl/inc/font/PhysicalFontFamily.hxx
@@ -24,8 +24,6 @@
 #include <vcl/dllapi.h>
 #include <vcl/outdev.hxx>
 
-#include <o3tl/sorted_vector.hxx>
-
 #include <unotools/fontcfg.hxx>
 
 namespace vcl::font
diff --git a/vcl/inc/font/fontsubstitution.hxx 
b/vcl/inc/font/fontsubstitution.hxx
index d721c9348e77..f7befca4c347 100644
--- a/vcl/inc/font/fontsubstitution.hxx
+++ b/vcl/inc/font/fontsubstitution.hxx
@@ -31,8 +31,6 @@
 
 #include <rtl/ustring.hxx>
 
-#include <vcl/rendercontext/AddFontSubstituteFlags.hxx>
-
 #include <font/FontSelectPattern.hxx>
 
 namespace vcl::font
diff --git a/vcl/inc/fontattributes.hxx b/vcl/inc/fontattributes.hxx
index 2135ba01d436..6d2983222bc7 100644
--- a/vcl/inc/fontattributes.hxx
+++ b/vcl/inc/fontattributes.hxx
@@ -22,7 +22,6 @@
 
 #include <vcl/dllapi.h>
 #include <rtl/ustring.hxx>
-#include <sal/log.hxx>
 #include <tools/fontenum.hxx>
 
 
diff --git a/vcl/inc/glyphid.hxx b/vcl/inc/glyphid.hxx
index 565beb618327..6bffe2722e93 100644
--- a/vcl/inc/glyphid.hxx
+++ b/vcl/inc/glyphid.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include <sal/types.h>
+#include <cstdint>
 
 typedef uint32_t sal_GlyphId;
 
diff --git a/vcl/inc/graphic/DetectorTools.hxx 
b/vcl/inc/graphic/DetectorTools.hxx
index 3847457fcfd8..3a3bae012edd 100644
--- a/vcl/inc/graphic/DetectorTools.hxx
+++ b/vcl/inc/graphic/DetectorTools.hxx
@@ -10,6 +10,10 @@
 
 #pragma once
 
+#include <rtl/string.hxx>
+
+#include <vector>
+
 namespace vcl
 {
 const char* matchArray(const char* pSource, sal_Int32 nSourceSize, const char* 
pSearch,
diff --git a/vcl/inc/graphic/GraphicFormatDetector.hxx 
b/vcl/inc/graphic/GraphicFormatDetector.hxx
index 2dfb41b461ba..d6791e377fc1 100644
--- a/vcl/inc/graphic/GraphicFormatDetector.hxx
+++ b/vcl/inc/graphic/GraphicFormatDetector.hxx
@@ -22,10 +22,8 @@
 
 #include <tools/stream.hxx>
 #include <vector>
-#include <vcl/mapmod.hxx>
-#include <tools/gen.hxx>
-#include <optional>
 #include <vcl/graphic/GraphicMetadata.hxx>
+
 namespace vcl
 {
 static inline OUString getImportFormatShortName(GraphicFileFormat nFormat)
diff --git a/vcl/inc/graphic/GraphicID.hxx b/vcl/inc/graphic/GraphicID.hxx
index 87ac6a50f37a..f2f156affee7 100644
--- a/vcl/inc/graphic/GraphicID.hxx
+++ b/vcl/inc/graphic/GraphicID.hxx
@@ -19,7 +19,6 @@
 
 #pragma once
 
-#include <vcl/dllapi.h>
 #include <rtl/string.hxx>
 #include <vcl/checksum.hxx>
 
diff --git a/vcl/inc/graphic/GraphicReader.hxx 
b/vcl/inc/graphic/GraphicReader.hxx
index 9576d42531d1..0faf5a7fe9d0 100644
--- a/vcl/inc/graphic/GraphicReader.hxx
+++ b/vcl/inc/graphic/GraphicReader.hxx
@@ -19,10 +19,7 @@
 
 #pragma once
 
-#include <vcl/dllapi.h>
 #include <rtl/ustring.hxx>
-#include <tools/gen.hxx>
-#include <memory>
 
 class GraphicReader
 {
diff --git a/vcl/inc/graphic/Manager.hxx b/vcl/inc/graphic/Manager.hxx
index f6791626d841..65e92146491c 100644
--- a/vcl/inc/graphic/Manager.hxx
+++ b/vcl/inc/graphic/Manager.hxx
@@ -12,7 +12,6 @@
 
 #include <sal/types.h>
 #include <rtl/strbuf.hxx>
-#include <rtl/ustring.hxx>
 #include <vcl/bitmapex.hxx>
 #include <vcl/animate/Animation.hxx>
 #include <vcl/vectorgraphicdata.hxx>
diff --git a/vcl/inc/graphic/UnoBinaryDataContainer.hxx 
b/vcl/inc/graphic/UnoBinaryDataContainer.hxx
index 7698afe254f7..f4a63ce60dc6 100644
--- a/vcl/inc/graphic/UnoBinaryDataContainer.hxx
+++ b/vcl/inc/graphic/UnoBinaryDataContainer.hxx
@@ -13,11 +13,8 @@
 #pragma once
 
 #include <cppuhelper/implbase.hxx>
-#include <cppuhelper/supportsservice.hxx>
-#include <comphelper/servicehelper.hxx>
 
 #include <com/sun/star/util/XBinaryDataContainer.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 
 #include <utility>
 #include <vcl/BinaryDataContainer.hxx>
diff --git a/vcl/inc/graphic/UnoGraphicDescriptor.hxx 
b/vcl/inc/graphic/UnoGraphicDescriptor.hxx
index 98b953b443e5..22ca048fc672 100644
--- a/vcl/inc/graphic/UnoGraphicDescriptor.hxx
+++ b/vcl/inc/graphic/UnoGraphicDescriptor.hxx
@@ -23,7 +23,6 @@
 #include <comphelper/propertysethelper.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 
-#include <cppuhelper/weakagg.hxx>
 #include <comphelper/propertysetinfo.hxx>
 #include <vcl/graph.hxx>
 
diff --git a/vcl/inc/graphic/VectorGraphicLoader.hxx 
b/vcl/inc/graphic/VectorGraphicLoader.hxx
index 943f7b8dc6d5..55714fd2be9e 100644
--- a/vcl/inc/graphic/VectorGraphicLoader.hxx
+++ b/vcl/inc/graphic/VectorGraphicLoader.hxx
@@ -10,7 +10,6 @@
 
 #pragma once
 
-#include <tools/stream.hxx>
 #include <vcl/vectorgraphicdata.hxx>
 #include <vcl/BinaryDataContainer.hxx>
 #include <memory>
diff --git a/vcl/inc/headless/CairoCommon.hxx b/vcl/inc/headless/CairoCommon.hxx
index ffe0affb137e..1d5cff353c72 100644
--- a/vcl/inc/headless/CairoCommon.hxx
+++ b/vcl/inc/headless/CairoCommon.hxx
@@ -20,7 +20,6 @@
 #pragma once
 
 #include <sal/config.h>
-#include <config_features.h>
 
 #include <cairo.h>
 
@@ -34,7 +33,6 @@
 
 #include <basegfx/utils/systemdependentdata.hxx>
 #include <basegfx/range/b2drange.hxx>
-#include <basegfx/range/b2irange.hxx>
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
diff --git a/vcl/inc/headless/svpgdi.hxx b/vcl/inc/headless/svpgdi.hxx
index d341c1f8b2f9..a68c1b974c8f 100644
--- a/vcl/inc/headless/svpgdi.hxx
+++ b/vcl/inc/headless/svpgdi.hxx
@@ -24,13 +24,11 @@
 #endif
 
 #include <sal/config.h>
-#include <config_features.h>
 
 #include <osl/endian.h>
 #include <vcl/sysdata.hxx>
 #include <config_cairo_canvas.h>
 
-#include <font/PhysicalFontFace.hxx>
 #include <salgdi.hxx>
 #include <sallayout.hxx>
 #include <unx/cairotextrender.hxx>
diff --git a/vcl/inc/headless/svpvd.hxx b/vcl/inc/headless/svpvd.hxx
index f76b78c1df67..f1666b689aca 100644
--- a/vcl/inc/headless/svpvd.hxx
+++ b/vcl/inc/headless/svpvd.hxx
@@ -21,7 +21,6 @@
 #define INCLUDED_VCL_INC_HEADLESS_SVPVD_HXX
 
 #include <salvd.hxx>
-#include <vcl/salgtype.hxx>
 #include <basegfx/vector/b2ivector.hxx>
 
 #include <vector>
diff --git a/vcl/inc/hyperlabel.hxx b/vcl/inc/hyperlabel.hxx
index d12cbd405db2..6415742616fb 100644
--- a/vcl/inc/hyperlabel.hxx
+++ b/vcl/inc/hyperlabel.hxx
@@ -19,8 +19,6 @@
 #ifndef INCLUDED_VCL_HYPERLABEL_HXX
 #define INCLUDED_VCL_HYPERLABEL_HXX
 
-#include <memory>
-
 #include <vcl/toolkit/fixed.hxx>
 
 namespace vcl
diff --git a/vcl/inc/imagerepository.hxx b/vcl/inc/imagerepository.hxx
index a1a28d3fa241..5e1b87595b60 100644
--- a/vcl/inc/imagerepository.hxx
+++ b/vcl/inc/imagerepository.hxx
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_VCL_IMAGEREPOSITORY_HXX
 #define INCLUDED_VCL_IMAGEREPOSITORY_HXX
 
-#include <vcl/dllapi.h>
 #include <rtl/ustring.hxx>
 
 class BitmapEx;
diff --git a/vcl/inc/impfont.hxx b/vcl/inc/impfont.hxx
index 08a1fd558ca1..1e697b9ee3d1 100644
--- a/vcl/inc/impfont.hxx
+++ b/vcl/inc/impfont.hxx
@@ -27,6 +27,7 @@
 #include <tools/gen.hxx>
 #include <i18nlangtag/languagetag.hxx>
 #include <vcl/fntstyle.hxx>
+#include <vcl/font.hxx>
 
 /* The following class is extraordinarily similar to FontAttributes. */
 
diff --git a/vcl/inc/impglyphitem.hxx b/vcl/inc/impglyphitem.hxx
index 8860243c0f4e..1fa8454e2ea8 100644
--- a/vcl/inc/impglyphitem.hxx
+++ b/vcl/inc/impglyphitem.hxx
@@ -23,7 +23,7 @@
 #include <o3tl/typed_flags_set.hxx>
 #include <tools/gen.hxx>
 #include <vcl/dllapi.h>
-#include <vcl/outdev.hxx>
+#include <vcl/rendercontext/SalLayoutFlags.hxx>
 #include <rtl/math.hxx>
 #include <vector>
 
diff --git a/vcl/inc/jsdialog/enabled.hxx b/vcl/inc/jsdialog/enabled.hxx
index 0f37301d0c0d..6354b70a8de7 100644
--- a/vcl/inc/jsdialog/enabled.hxx
+++ b/vcl/inc/jsdialog/enabled.hxx
@@ -9,7 +9,7 @@
 
 #pragma once
 
-#include <rtl/ustring.hxx>
+#include <string_view>
 
 namespace jsdialog
 {
diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index 527278e886bd..e4aa60558438 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -9,14 +9,10 @@
 
 #pragma once
 
-#include <comphelper/string.hxx>
-#include <osl/mutex.hxx>
 #include <utility>
 #include <vcl/weld.hxx>
 #include <vcl/jsdialog/executor.hxx>
-#include <vcl/sysdata.hxx>
 #include <vcl/virdev.hxx>
-#include <vcl/builder.hxx>
 #include <salvtables.hxx>
 #include <vcl/toolkit/button.hxx>
 #include <vcl/toolkit/fmtfield.hxx>
diff --git a/vcl/inc/listbox.hxx b/vcl/inc/listbox.hxx
index e9bd4f53b843..8b3756297187 100644
--- a/vcl/inc/listbox.hxx
+++ b/vcl/inc/listbox.hxx
@@ -24,12 +24,11 @@
 
 #include <o3tl/safeint.hxx>
 #include <utility>
+#include <vcl/glyphitem.hxx>
 #include <vcl/toolkit/button.hxx>
 #include <vcl/toolkit/floatwin.hxx>
+#include <vcl/toolkit/lstbox.hxx>
 #include <vcl/quickselectionengine.hxx>
-#include <vcl/vcllayout.hxx>
-
-#include "glyphid.hxx"
 
 #include <set>
 #include <vector>
diff --git a/vcl/inc/menubarvalue.hxx b/vcl/inc/menubarvalue.hxx
index 0185037ba326..0b9f0dbbec5b 100644
--- a/vcl/inc/menubarvalue.hxx
+++ b/vcl/inc/menubarvalue.hxx
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_VCL_INC_MENUBARVALUE_HXX
 #define INCLUDED_VCL_INC_MENUBARVALUE_HXX
 
-#include <tools/gen.hxx>
 #include <vcl/salnativewidgets.hxx>
 
 /*  MenubarValue:
diff --git a/vcl/inc/opengl/win/WinDeviceInfo.hxx 
b/vcl/inc/opengl/win/WinDeviceInfo.hxx
index e79905c24c37..2f9a52596bb3 100644
--- a/vcl/inc/opengl/win/WinDeviceInfo.hxx
+++ b/vcl/inc/opengl/win/WinDeviceInfo.hxx
@@ -12,11 +12,7 @@
 
 #include <vcl/dllapi.h>
 
-#include <driverblocklist.hxx>
-
 #include <rtl/ustring.hxx>
-#include <vector>
-#include <cstdint>
 
 class VCL_DLLPUBLIC WinOpenGLDeviceInfo
 {
diff --git a/vcl/inc/opengl/zone.hxx b/vcl/inc/opengl/zone.hxx
index 726479b7c15c..f03e07ccfdf2 100644
--- a/vcl/inc/opengl/zone.hxx
+++ b/vcl/inc/opengl/zone.hxx
@@ -11,7 +11,6 @@
 #define INCLUDED_VCL_INC_OPENGL_ZONE_H
 
 #include <sal/config.h>
-#include <sal/types.h>
 #include <vcl/dllapi.h>
 #include <comphelper/crashzone.hxx>
 
diff --git a/vcl/inc/pdf/BitmapID.hxx b/vcl/inc/pdf/BitmapID.hxx
index afc9aff9fcf6..34f99944dcb5 100644
--- a/vcl/inc/pdf/BitmapID.hxx
+++ b/vcl/inc/pdf/BitmapID.hxx
@@ -10,7 +10,6 @@
 
 #pragma once
 
-#include <vcl/dllapi.h>
 #include <vcl/checksum.hxx>
 #include <tools/gen.hxx>
 
diff --git a/vcl/inc/pdf/Matrix3.hxx b/vcl/inc/pdf/Matrix3.hxx
index 1cc5c47372fa..226235f5264f 100644
--- a/vcl/inc/pdf/Matrix3.hxx
+++ b/vcl/inc/pdf/Matrix3.hxx
@@ -10,7 +10,6 @@
 
 #pragma once
 
-#include <vcl/dllapi.h>
 #include <basegfx/point/b2dpoint.hxx>
 #include <tools/gen.hxx>
 
diff --git a/vcl/inc/pdf/ResourceDict.hxx b/vcl/inc/pdf/ResourceDict.hxx
index 57ecb8e0f33f..119d9314f48a 100644
--- a/vcl/inc/pdf/ResourceDict.hxx
+++ b/vcl/inc/pdf/ResourceDict.hxx
@@ -10,7 +10,6 @@
 
 #pragma once
 
-#include <vcl/dllapi.h>
 #include <rtl/strbuf.hxx>
 #include <map>
 
diff --git a/vcl/inc/pdf/XmpMetadata.hxx b/vcl/inc/pdf/XmpMetadata.hxx
index 7526d2bf9b4b..d94d6e690c3c 100644
--- a/vcl/inc/pdf/XmpMetadata.hxx
+++ b/vcl/inc/pdf/XmpMetadata.hxx
@@ -10,7 +10,6 @@
 
 #pragma once
 
-#include <vcl/dllapi.h>
 #include <rtl/string.hxx>
 #include <tools/stream.hxx>
 #include <memory>
diff --git a/vcl/inc/pdf/objectcopier.hxx b/vcl/inc/pdf/objectcopier.hxx
index f9b05725ce0c..0168f69717ae 100644
--- a/vcl/inc/pdf/objectcopier.hxx
+++ b/vcl/inc/pdf/objectcopier.hxx
@@ -15,7 +15,6 @@
 #include <rtl/strbuf.hxx>
 #include <rtl/string.hxx>
 #include <sal/types.h>
-#include <vcl/dllapi.h>
 
 class SvMemoryStream;
 
diff --git a/vcl/inc/pdf/pdfcompat.hxx b/vcl/inc/pdf/pdfcompat.hxx
index 5d6d623a107e..0664a400f90e 100644
--- a/vcl/inc/pdf/pdfcompat.hxx
+++ b/vcl/inc/pdf/pdfcompat.hxx
@@ -9,11 +9,9 @@
 
 #pragma once
 
-#include <config_features.h>
-#include <tools/gen.hxx>
+#include <o3tl/unit_conversion.hxx>
 #include <tools/stream.hxx>
-#include <tools/UnitConversion.hxx>
-#include <vcl/graph.hxx>
+#include <vcl/BinaryDataContainer.hxx>
 
 namespace vcl::pdf
 {
diff --git a/vcl/inc/pdf/pdfwriter_impl.hxx b/vcl/inc/pdf/pdfwriter_impl.hxx
index 48ebf50beaae..75f613060c04 100644
--- a/vcl/inc/pdf/pdfwriter_impl.hxx
+++ b/vcl/inc/pdf/pdfwriter_impl.hxx
@@ -36,7 +36,6 @@
 
 #include <com/sun/star/lang/Locale.hpp>
 #include <com/sun/star/util/XURLTransformer.hpp>
-#include <com/sun/star/uno/Sequence.h>
 #include <osl/file.hxx>
 #include <rtl/cipher.h>
 #include <rtl/strbuf.hxx>
diff --git a/vcl/inc/print.h b/vcl/inc/print.h
index 13650ceef34f..dc61c9cd9607 100644
--- a/vcl/inc/print.h
+++ b/vcl/inc/print.h
@@ -22,7 +22,7 @@
 
 #include <rtl/ustring.hxx>
 #include <vcl/dllapi.h>
-#include <vcl/print.hxx>
+#include <vcl/QueueInfo.hxx>
 #include "salprn.hxx"
 
 #include <vector>
diff --git a/vcl/inc/printaccessoryview.hrc b/vcl/inc/printaccessoryview.hrc
index c041d78c3e32..737ff11a621f 100644
--- a/vcl/inc/printaccessoryview.hrc
+++ b/vcl/inc/printaccessoryview.hrc
@@ -20,6 +20,8 @@
 #ifndef INCLUDED_VCL_INC_PRINTACCESSORYVIEW_HRC
 #define INCLUDED_VCL_INC_PRINTACCESSORYVIEW_HRC
 
+#include <unotools/resmgr.hxx>
+
 #define NC_(Context, String) TranslateId(Context, reinterpret_cast<char const 
*>(u8##String))
 
 const TranslateId SV_PRINT_NATIVE_STRINGS[] =
diff --git a/vcl/inc/regband.hxx b/vcl/inc/regband.hxx
index b0135fa56086..33cedcd309e8 100644
--- a/vcl/inc/regband.hxx
+++ b/vcl/inc/regband.hxx
@@ -20,6 +20,8 @@
 #ifndef INCLUDED_VCL_INC_REGBAND_HXX
 #define INCLUDED_VCL_INC_REGBAND_HXX
 
+#include <tools/long.hxx>
+
 /*
 
 class ImplRegionBand
diff --git a/vcl/inc/salgdi.hxx b/vcl/inc/salgdi.hxx
index b4536cc3ee3c..7e73e59daf0e 100644
--- a/vcl/inc/salgdi.hxx
+++ b/vcl/inc/salgdi.hxx
@@ -32,7 +32,6 @@
 
 #include <config_cairo_canvas.h>
 
-#include <map>
 #include <vector>
 
 class SalBitmap;
diff --git a/vcl/inc/sallayout.hxx b/vcl/inc/sallayout.hxx
index 94f0086b1517..bdbd45189086 100644
--- a/vcl/inc/sallayout.hxx
+++ b/vcl/inc/sallayout.hxx
@@ -24,9 +24,6 @@
 
 #include <basegfx/point/b2dpoint.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
-#include <tools/gen.hxx>
-#include <tools/degree.hxx>
-#include <i18nlangtag/languagetag.hxx>
 
 #include <vcl/dllapi.h>
 #include <vcl/vclenum.hxx> // for typedef sal_UCS4
@@ -39,7 +36,6 @@
 
 #include <hb.h>
 
-#include <iostream>
 #include <memory>
 #include <vector>
 
diff --git a/vcl/inc/salprn.hxx b/vcl/inc/salprn.hxx
index e7d0859263cc..97a0fe13aab2 100644
--- a/vcl/inc/salprn.hxx
+++ b/vcl/inc/salprn.hxx
@@ -21,6 +21,7 @@
 #define INCLUDED_VCL_INC_SALPRN_HXX
 
 #include <i18nutil/paper.hxx>
+#include <rtl/ustring.hxx>
 #include <vcl/prntypes.hxx>
 #include <vcl/dllapi.h>
 #include <tools/gen.hxx>
diff --git a/vcl/inc/salptype.hxx b/vcl/inc/salptype.hxx
index 9d09c869a697..32405aaf2484 100644
--- a/vcl/inc/salptype.hxx
+++ b/vcl/inc/salptype.hxx
@@ -22,6 +22,7 @@
 
 #include <sal/config.h>
 
+#include <sal/types.h>
 #include <o3tl/typed_flags_set.hxx>
 
 enum class JobSetFlags : sal_uInt16 {
diff --git a/vcl/inc/salvtables.hxx b/vcl/inc/salvtables.hxx
index fa4f3550280b..505720629a5e 100644
--- a/vcl/inc/salvtables.hxx
+++ b/vcl/inc/salvtables.hxx
@@ -8,6 +8,7 @@
  */
 #pragma once
 
+#include <vcl/builder.hxx>
 #include <vcl/weld.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/syswin.hxx>
@@ -29,7 +30,6 @@
 #include <o3tl/sorted_vector.hxx>
 #include "calendar.hxx"
 #include "iconview.hxx"
-#include "listbox.hxx"
 #include "messagedialog.hxx"
 
 namespace vcl
diff --git a/vcl/inc/salwtype.hxx b/vcl/inc/salwtype.hxx
index fd2b938d3a2c..d197f17fe47a 100644
--- a/vcl/inc/salwtype.hxx
+++ b/vcl/inc/salwtype.hxx
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_VCL_INC_SALWTYPE_HXX
 #define INCLUDED_VCL_INC_SALWTYPE_HXX
 
-#include <i18nlangtag/lang.h>
 #include <rtl/ref.hxx>
 #include <rtl/ustring.hxx>
 #include <tools/gen.hxx>
diff --git a/vcl/inc/scanlinewriter.hxx b/vcl/inc/scanlinewriter.hxx
index 43334f955c50..87a7827b7a47 100644
--- a/vcl/inc/scanlinewriter.hxx
+++ b/vcl/inc/scanlinewriter.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_VCL_INC_SCANLINEWRITER_HXX
 #define INCLUDED_VCL_INC_SCANLINEWRITER_HXX
 
-#include <vcl/bitmap.hxx>
+#include <tools/long.hxx>
 #include <vcl/BitmapPalette.hxx>
 
 namespace vcl
diff --git a/vcl/inc/schedulerimpl.hxx b/vcl/inc/schedulerimpl.hxx
index 56563ded4cc9..e7968c8f50e3 100644
--- a/vcl/inc/schedulerimpl.hxx
+++ b/vcl/inc/schedulerimpl.hxx
@@ -20,8 +20,8 @@
 #ifndef INCLUDED_VCL_INC_SCHEDULERIMPL_HXX
 #define INCLUDED_VCL_INC_SCHEDULERIMPL_HXX
 
-#include "salwtype.hxx"
 #include <vcl/scheduler.hxx>
+#include <vcl/task.hxx>
 
 class Task;
 
diff --git a/vcl/inc/sft.hxx b/vcl/inc/sft.hxx
index 339914e4fb73..96553ba7d8fa 100644
--- a/vcl/inc/sft.hxx
+++ b/vcl/inc/sft.hxx
@@ -40,17 +40,18 @@
 #ifndef INCLUDED_VCL_INC_SFT_HXX
 #define INCLUDED_VCL_INC_SFT_HXX
 
+#include <rtl/ustring.hxx>
 #include <vcl/dllapi.h>
 #include <vcl/fontcapabilities.hxx>
 #include <vcl/fontcharmap.hxx>
 #include <i18nlangtag/lang.h>
 
+#include "fontsubset.hxx"
+#include "glyphid.hxx"
+
 #include <array>
 #include <memory>
 #include <vector>
-#include <cstdint>
-
-#include "font/PhysicalFontFace.hxx"
 
 class SvStream;
 
diff --git a/vcl/inc/skia/x11/salvd.hxx b/vcl/inc/skia/x11/salvd.hxx
index fec4b8080cc1..137a58ae6790 100644
--- a/vcl/inc/skia/x11/salvd.hxx
+++ b/vcl/inc/skia/x11/salvd.hxx
@@ -11,6 +11,8 @@
 #define INCLUDED_VCL_INC_SKIA_X11_SALVD_H
 
 #include <salvd.hxx>
+#include <unx/saldisp.hxx>
+#include <unx/salgdi.h>
 
 class X11SkiaSalVirtualDevice final : public SalVirtualDevice
 {
diff --git a/vcl/inc/skia/x11/textrender.hxx b/vcl/inc/skia/x11/textrender.hxx
index 6943ab4ce416..623e229e8e33 100644
--- a/vcl/inc/skia/x11/textrender.hxx
+++ b/vcl/inc/skia/x11/textrender.hxx
@@ -23,7 +23,6 @@
 #include <unx/freetypetextrender.hxx>
 
 #include <SkFontMgr.h>
-#include <SkFontMgr_fontconfig.h>
 
 class VCL_DLLPUBLIC SkiaTextRender final : public FreeTypeTextRenderImpl
 {
diff --git a/vcl/inc/slider.hxx b/vcl/inc/slider.hxx
index dc69df8a0a1a..73a0dc0a2008 100644
--- a/vcl/inc/slider.hxx
+++ b/vcl/inc/slider.hxx
@@ -20,9 +20,7 @@
 #ifndef INCLUDED_VCL_SLIDER_HXX
 #define INCLUDED_VCL_SLIDER_HXX
 
-#include <vcl/dllapi.h>
 #include <vcl/ctrl.hxx>
-#include <vcl/toolkit/scrbar.hxx>
 
 class Slider final : public Control
 {
diff --git a/vcl/inc/strhelper.hxx b/vcl/inc/strhelper.hxx
index 8654400b2222..7793418334e1 100644
--- a/vcl/inc/strhelper.hxx
+++ b/vcl/inc/strhelper.hxx
@@ -19,10 +19,8 @@
 #ifndef INCLUDED_VCL_STRHELPER_HXX
 #define INCLUDED_VCL_STRHELPER_HXX
 
-#include <cstring>
 #include <rtl/math.hxx>
 #include <rtl/ustring.hxx>
-#include <vcl/dllapi.h>
 
 namespace psp
 {
diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx
index ad788f3a1345..44ed38f2eb9d 100644
--- a/vcl/inc/svdata.hxx
+++ b/vcl/inc/svdata.hxx
@@ -20,16 +20,20 @@
 #pragma once
 
 #include <sal/config.h>
-#include <config_version.h>
 
 #include <o3tl/lru_map.hxx>
 #include <o3tl/hash_combine.hxx>
 #include <tools/fldunit.hxx>
 #include <unotools/options.hxx>
 #include <vcl/bitmapex.hxx>
+#include <vcl/cvtgrf.hxx>
 #include <vcl/image.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/print.hxx>
+#include <vcl/uitest/logger.hxx>
+#include <vcl/virdev.hxx>
+#include <vcl/wrkwin.hxx>
 #include <vcl/window.hxx>
 #include <vcl/task.hxx>
 #include <LibreOfficeKit/LibreOfficeKitTypes.h>
@@ -37,16 +41,16 @@
 
 #include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/i18n/XCharacterClassification.hpp>
-
 #include "vcleventlisteners.hxx"
+#include "print.h"
 #include "salwtype.hxx"
+#include "windowdev.hxx"
 #include "displayconnectiondispatch.hxx"
 
 #include <mutex>
 #include <optional>
 #include <vector>
 #include <unordered_map>
-#include "ControlCacheKey.hxx"
 #include "schedulerimpl.hxx"
 #include <basegfx/DrawCommands.hxx>
 
diff --git a/vcl/inc/svimpbox.hxx b/vcl/inc/svimpbox.hxx
index 61e103e12b1f..2274f2b81108 100644
--- a/vcl/inc/svimpbox.hxx
+++ b/vcl/inc/svimpbox.hxx
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_VCL_SOURCE_INC_SVIMPBOX_HXX
 #define INCLUDED_VCL_SOURCE_INC_SVIMPBOX_HXX
 
-#include <vcl/dllapi.h>
 #include <vcl/seleng.hxx>
 #include <vcl/idle.hxx>
 #include <vcl/image.hxx>
diff --git a/vcl/inc/textlayout.hxx b/vcl/inc/textlayout.hxx
index 05be8adacb9d..5938a9d58ef7 100644
--- a/vcl/inc/textlayout.hxx
+++ b/vcl/inc/textlayout.hxx
@@ -20,7 +20,11 @@
 #ifndef INCLUDED_VCL_INC_TEXTLAYOUT_HXX
 #define INCLUDED_VCL_INC_TEXTLAYOUT_HXX
 
+#include <tools/long.hxx>
+#include <vcl/outdev.hxx>
+
 #include <memory>
+#include <vector>
 
 class Control;
 
diff --git a/vcl/inc/textlineinfo.hxx b/vcl/inc/textlineinfo.hxx
index 0dc199bff64e..0d5f4428920d 100644
--- a/vcl/inc/textlineinfo.hxx
+++ b/vcl/inc/textlineinfo.hxx
@@ -20,7 +20,8 @@
 #ifndef INCLUDED_VCL_INC_TEXTLINEINFO_HXX
 #define INCLUDED_VCL_INC_TEXTLINEINFO_HXX
 
-#include <memory>
+#include <tools/long.hxx>
+
 #include <vector>
 
 class ImplTextLineInfo
diff --git a/vcl/inc/toolbox.h b/vcl/inc/toolbox.h
index d467226f4ab7..bda27560cbd0 100644
--- a/vcl/inc/toolbox.h
+++ b/vcl/inc/toolbox.h
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_VCL_INC_TOOLBOX_H
 #define INCLUDED_VCL_INC_TOOLBOX_H
 
+#include <vcl/ctrl.hxx>
 #include <vcl/toolbox.hxx>
 
 #include <optional>
diff --git a/vcl/inc/units.hrc b/vcl/inc/units.hrc
index 79e433f12eb2..30809ee93d65 100644
--- a/vcl/inc/units.hrc
+++ b/vcl/inc/units.hrc
@@ -20,6 +20,9 @@
 #ifndef INCLUDED_VCL_INC_UNITS_HRC
 #define INCLUDED_VCL_INC_UNITS_HRC
 
+#include <tools/fldunit.hxx>
+#include <unotools/resmgr.hxx>
+
 #define NC_(Context, String) TranslateId(Context, reinterpret_cast<char const 
*>(u8##String))
 
 std::pair<TranslateId, FieldUnit> SV_FUNIT_STRINGS[] =
diff --git a/vcl/inc/unx/fc_fontoptions.hxx b/vcl/inc/unx/fc_fontoptions.hxx
index de6ed2aba5df..30411d5d0c60 100644
--- a/vcl/inc/unx/fc_fontoptions.hxx
+++ b/vcl/inc/unx/fc_fontoptions.hxx
@@ -21,6 +21,7 @@
 #define INCLUDED_VCL_INC_UNX_FC_FONTOPTIONS_HXX
 
 #include <rtl/string.hxx>
+#include <vcl/dllapi.h>
 
 typedef struct _FcPattern   FcPattern;
 class VCL_DLLPUBLIC FontConfigFontOptions
diff --git a/vcl/inc/unx/fontmanager.hxx b/vcl/inc/unx/fontmanager.hxx
index 1a1421aef77a..d39795dfa42a 100644
--- a/vcl/inc/unx/fontmanager.hxx
+++ b/vcl/inc/unx/fontmanager.hxx
@@ -20,7 +20,6 @@
 #pragma once
 
 #include <sal/config.h>
-#include <config_options.h>
 
 #include <o3tl/sorted_vector.hxx>
 #include <tools/fontenum.hxx>
@@ -31,9 +30,6 @@
 
 #include <font/PhysicalFontFace.hxx>
 
-#include <glyphid.hxx>
-
-#include <map>
 #include <set>
 #include <memory>
 #include <string_view>
diff --git a/vcl/inc/unx/genpspgraphics.h b/vcl/inc/unx/genpspgraphics.h
index 2a9c6aefcfda..cad46f77f57a 100644
--- a/vcl/inc/unx/genpspgraphics.h
+++ b/vcl/inc/unx/genpspgraphics.h
@@ -21,7 +21,6 @@
 
 #include <sal/config.h>
 
-#include <vcl/vclenum.hxx>
 #include <config_cairo_canvas.h>
 
 #include <salgdi.hxx>
diff --git a/vcl/inc/unx/glyphcache.hxx b/vcl/inc/unx/glyphcache.hxx
index 6d778d15d6c7..122e880228e8 100644
--- a/vcl/inc/unx/glyphcache.hxx
+++ b/vcl/inc/unx/glyphcache.hxx
@@ -26,15 +26,12 @@
 #include FT_FREETYPE_H
 #include FT_GLYPH_H
 
-#include <tools/gen.hxx>
-#include <tools/solar.h>
-#include <unx/gendata.hxx>
 #include <vcl/dllapi.h>
 #include <vcl/outdev.hxx>
 
 #include <fontattributes.hxx>
-#include <font/LogicalFontInstance.hxx>
 #include <font/FontMetricData.hxx>
+#include <glyphid.hxx>
 
 #include <unordered_map>
 
diff --git a/vcl/inc/unx/gtk/atkbridge.hxx b/vcl/inc/unx/gtk/atkbridge.hxx
index 19e37baab5cf..e77a9ab571e3 100644
--- a/vcl/inc/unx/gtk/atkbridge.hxx
+++ b/vcl/inc/unx/gtk/atkbridge.hxx
@@ -19,8 +19,6 @@
 
 #pragma once
 
-#include <vclpluginapi.h>
-
 bool InitAtkBridge();
 void DeInitAtkBridge();
 
diff --git a/vcl/inc/unx/i18n_im.hxx b/vcl/inc/unx/i18n_im.hxx
index 95f3a58db5fb..7322c53e11f8 100644
--- a/vcl/inc/unx/i18n_im.hxx
+++ b/vcl/inc/unx/i18n_im.hxx
@@ -22,8 +22,6 @@
 
 #include <X11/Xlib.h>
 
-#include <vclpluginapi.h>
-
 #define bUseInputMethodDefault True
 
 class SalI18N_InputMethod
diff --git a/vcl/inc/unx/i18n_xkb.hxx b/vcl/inc/unx/i18n_xkb.hxx
index 473251b48b1d..b33ba085b8da 100644
--- a/vcl/inc/unx/i18n_xkb.hxx
+++ b/vcl/inc/unx/i18n_xkb.hxx
@@ -22,8 +22,6 @@
 
 #include <X11/Xlib.h>
 
-#include <vclpluginapi.h>
-
 class SalI18N_KeyboardExtension
 {
 private:
diff --git a/vcl/inc/unx/saldata.hxx b/vcl/inc/unx/saldata.hxx
index 65e957fbbedc..c32ce0d27792 100644
--- a/vcl/inc/unx/saldata.hxx
+++ b/vcl/inc/unx/saldata.hxx
@@ -24,7 +24,6 @@
 
 #include <unx/saldisp.hxx>
 #include <unx/gendata.hxx>
-#include <vclpluginapi.h>
 
 class SalXLib;
 class SalDisplay;
diff --git a/vcl/inc/unx/saldisp.hxx b/vcl/inc/unx/saldisp.hxx
index 6cdd13b97494..44459c947334 100644
--- a/vcl/inc/unx/saldisp.hxx
+++ b/vcl/inc/unx/saldisp.hxx
@@ -22,7 +22,6 @@
 
 #include <X11/Xlib.h>
 #include <X11/Xutil.h>
-#include <X11/extensions/render.h>
 #include <epoxy/glx.h>
 
 #include <rtl/string.hxx>
@@ -32,7 +31,6 @@
 #include <sal/types.h>
 #include <cassert>
 #include <list>
-#include <unordered_map>
 #include <vector>
 #include <tools/gen.hxx>
 #include <salwtype.hxx>
diff --git a/vcl/inc/unx/salframe.h b/vcl/inc/unx/salframe.h
index efd1a9016d1b..833fb5330b70 100644
--- a/vcl/inc/unx/salframe.h
+++ b/vcl/inc/unx/salframe.h
@@ -27,12 +27,10 @@
 #include <unx/sessioninhibitor.hxx>
 #include <salframe.hxx>
 #include <salwtype.hxx>
-#include <salinst.hxx>
 
 #include <vcl/ptrstyle.hxx>
 #include <vcl/sysdata.hxx>
 #include <vcl/timer.hxx>
-#include <vclpluginapi.h>
 
 #include <list>
 
diff --git a/vcl/inc/unx/salgdi.h b/vcl/inc/unx/salgdi.h
index 55cbb747193f..261dd36651b5 100644
--- a/vcl/inc/unx/salgdi.h
+++ b/vcl/inc/unx/salgdi.h
@@ -22,17 +22,10 @@
 #include <sal/config.h>
 
 #include <X11/Xlib.h>
-#include <X11/Xutil.h>
 
-#include <vcl/salgtype.hxx>
-#include <vcl/vclenum.hxx>
-
-#include <unx/saldisp.hxx>
 #include <salgdi.hxx>
 #include <salgeom.hxx>
 #include <sallayout.hxx>
-#include <vclpluginapi.h>
-#include <ControlCacheKey.hxx>
 
 #include <headless/CairoCommon.hxx>
 
diff --git a/vcl/inc/unx/salinst.h b/vcl/inc/unx/salinst.h
index 1f8ccd92b19c..89aa796acd3c 100644
--- a/vcl/inc/unx/salinst.h
+++ b/vcl/inc/unx/salinst.h
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_VCL_INC_UNX_SALINST_H
 #define INCLUDED_VCL_INC_UNX_SALINST_H
 
-#include <vclpluginapi.h>
 #include <salinst.hxx>
 #include <unx/geninst.h>
 
diff --git a/vcl/inc/unx/salobj.h b/vcl/inc/unx/salobj.h
index eda1bd7efa67..25a24b69c6b2 100644
--- a/vcl/inc/unx/salobj.h
+++ b/vcl/inc/unx/salobj.h
@@ -24,7 +24,6 @@
 
 #include <salobj.hxx>
 #include <vcl/sysdata.hxx>
-#include <vclpluginapi.h>
 #include <memory>
 
 class SalClipRegion
diff --git a/vcl/inc/unx/salvd.h b/vcl/inc/unx/salvd.h
index 3acfbebd105d..91b53b74f05d 100644
--- a/vcl/inc/unx/salvd.h
+++ b/vcl/inc/unx/salvd.h
@@ -22,6 +22,8 @@
 
 #include <X11/Xlib.h>
 
+#include <vcl/salgtype.hxx>
+
 #include <unx/saldisp.hxx>
 #include <unx/saltype.h>
 #include <salvd.hxx>
diff --git a/vcl/inc/unx/sessioninhibitor.hxx b/vcl/inc/unx/sessioninhibitor.hxx
index 9d9fd7c9c58b..873685b234a7 100644
--- a/vcl/inc/unx/sessioninhibitor.hxx
+++ b/vcl/inc/unx/sessioninhibitor.hxx
@@ -13,7 +13,6 @@
 #include <X11/Xlib.h>
 #include <X11/Xmd.h>
 
-#include <rtl/ustring.hxx>
 #include <vcl/dllapi.h>
 
 #include <optional>
diff --git a/vcl/inc/unx/sm.hxx b/vcl/inc/unx/sm.hxx
index 164fd4f6df68..135e0d5efe71 100644
--- a/vcl/inc/unx/sm.hxx
+++ b/vcl/inc/unx/sm.hxx
@@ -27,8 +27,6 @@
 #include <rtl/ustring.hxx>
 #include <memory>
 
-#include <vclpluginapi.h>
-
 class ICEConnectionObserver;
 class SalSession;
 
diff --git a/vcl/inc/unx/wmadaptor.hxx b/vcl/inc/unx/wmadaptor.hxx
index c800a2270e27..afa3fa85c324 100644
--- a/vcl/inc/unx/wmadaptor.hxx
+++ b/vcl/inc/unx/wmadaptor.hxx
@@ -25,7 +25,6 @@
 
 #include <X11/Xlib.h>
 
-#include <vclpluginapi.h>
 #include "salframe.h"
 #include <vector>
 
diff --git a/vcl/inc/unx/x11/x11gdiimpl.h b/vcl/inc/unx/x11/x11gdiimpl.h
index 51c1298089ad..d740fb077c2e 100644
--- a/vcl/inc/unx/x11/x11gdiimpl.h
+++ b/vcl/inc/unx/x11/x11gdiimpl.h
@@ -10,7 +10,7 @@
 #ifndef INCLUDED_VCL_INC_UNX_X11_X11GDIIMPL_HXX
 #define INCLUDED_VCL_INC_UNX_X11_X11GDIIMPL_HXX
 
-#include <ControlCacheKey.hxx>
+#include <sal/types.h>
 
 class ControlCacheKey;
 
diff --git a/vcl/inc/unx/x11/x11sys.hxx b/vcl/inc/unx/x11/x11sys.hxx
index 4f43d0052e7b..b48cf26e6a75 100644
--- a/vcl/inc/unx/x11/x11sys.hxx
+++ b/vcl/inc/unx/x11/x11sys.hxx
@@ -21,7 +21,6 @@
 #define INCLUDED_VCL_INC_UNX_X11_X11SYS_HXX
 
 #include <unx/gensys.h>
-#include <vclpluginapi.h>
 
 class X11SalSystem final : public SalGenericSystem
 {
diff --git a/vcl/inc/unx/x11/xlimits.hxx b/vcl/inc/unx/x11/xlimits.hxx
index 85a00b17b23c..35cbd647e070 100644
--- a/vcl/inc/unx/x11/xlimits.hxx
+++ b/vcl/inc/unx/x11/xlimits.hxx
@@ -10,7 +10,6 @@
 #pragma once
 
 #include <X11/Xlib.h>
-#include <vclpluginapi.h>
 
 Pixmap limitXCreatePixmap(Display *display, Drawable d, unsigned int width, 
unsigned int height, unsigned int depth);
 
diff --git a/vcl/inc/vcleventlisteners.hxx b/vcl/inc/vcleventlisteners.hxx
index 4ae223dc7a47..5064e9170dbe 100644
--- a/vcl/inc/vcleventlisteners.hxx
+++ b/vcl/inc/vcleventlisteners.hxx
@@ -19,6 +19,9 @@
 
 #pragma once
 
+#include <tools/link.hxx>
+#include <vcl/vclevent.hxx>
+
 #include <vector>
 
 class VclEventListeners
diff --git a/vcl/inc/vclstatuslistener.hxx b/vcl/inc/vclstatuslistener.hxx
index aedcf3c70ead..bc10456650b0 100644
--- a/vcl/inc/vclstatuslistener.hxx
+++ b/vcl/inc/vclstatuslistener.hxx
@@ -13,10 +13,10 @@
 #include <comphelper/processfactory.hxx>
 #include <vcl/vclptr.hxx>
 
-#include <com/sun/star/frame/Desktop.hpp>
 #include <com/sun/star/frame/XStatusListener.hpp>
 #include <com/sun/star/frame/XDispatch.hpp>
 #include <com/sun/star/frame/XDispatchProvider.hpp>
+#include <com/sun/star/frame/XFrame.hpp>
 #include <com/sun/star/util/URL.hpp>
 #include <com/sun/star/util/URLTransformer.hpp>
 
diff --git a/vcl/inc/verticaltabctrl.hxx b/vcl/inc/verticaltabctrl.hxx
index 850e34476496..df05cfdf72b5 100644
--- a/vcl/inc/verticaltabctrl.hxx
+++ b/vcl/inc/verticaltabctrl.hxx
@@ -22,7 +22,6 @@
 #include <memory>
 #include <string_view>
 
-#include <vcl/dllapi.h>
 #include <vcl/toolkit/ivctrl.hxx>
 #include <vcl/layout.hxx>
 
diff --git a/vcl/inc/watchdog.hxx b/vcl/inc/watchdog.hxx
index 6e21461fa8b2..2555104a6b26 100644
--- a/vcl/inc/watchdog.hxx
+++ b/vcl/inc/watchdog.hxx
@@ -11,8 +11,6 @@
 
 #include <sal/config.h>
 #include <salhelper/thread.hxx>
-#include <atomic>
-#include <vector>
 
 class WatchdogThread final : private salhelper::Thread
 {
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index b4e706a4f96d..7ddbb340c0fe 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -25,11 +25,11 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/idle.hxx>
 #include <vcl/inputctx.hxx>
+#include <vcl/virdev.hxx>
 #include <vcl/window.hxx>
 #include <vcl/settings.hxx>
 #include <o3tl/deleter.hxx>
 #include <o3tl/typed_flags_set.hxx>
-#include <cppuhelper/weakref.hxx>
 #include "windowdev.hxx"
 #include "salwtype.hxx"
 
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index f5275eb5c68e..91c96ed4986a 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -76,6 +76,7 @@
 #include <vcl/toolkit/viewdataentry.hxx>
 #include <vcl/virdev.hxx>
 #include <bitmaps.hlst>
+#include <listbox.hxx>
 #include <menutogglebutton.hxx>
 #include <verticaltabctrl.hxx>
 #include <window.h>
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx
index 541256d8c26a..020a1315ea89 100644
--- a/vcl/source/app/svapp.cxx
+++ b/vcl/source/app/svapp.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <config_features.h>
+#include <config_version.h>
 
 #include <osl/file.hxx>
 #include <osl/thread.hxx>
diff --git a/vcl/source/control/imp_listbox.cxx 
b/vcl/source/control/imp_listbox.cxx
index 1b18498c68fc..04919ca26f20 100644
--- a/vcl/source/control/imp_listbox.cxx
+++ b/vcl/source/control/imp_listbox.cxx
@@ -24,6 +24,7 @@
 #include <vcl/event.hxx>
 #include <vcl/i18nhelp.hxx>
 #include <vcl/naturalsort.hxx>
+#include <vcl/vcllayout.hxx>
 #include <vcl/toolkit/lstbox.hxx>
 #include <vcl/toolkit/scrbar.hxx>
 
diff --git a/vcl/source/filter/ipdf/pdfcompat.cxx 
b/vcl/source/filter/ipdf/pdfcompat.cxx
index 7f324a386e39..2710b97a788c 100644
--- a/vcl/source/filter/ipdf/pdfcompat.cxx
+++ b/vcl/source/filter/ipdf/pdfcompat.cxx
@@ -10,6 +10,7 @@
 #include <pdf/pdfcompat.hxx>
 
 #include <o3tl/string_view.hxx>
+#include <tools/solar.h>
 #include <vcl/filter/PDFiumLibrary.hxx>
 #include <sal/log.hxx>
 
diff --git a/vcl/source/filter/ipdf/pdfread.cxx 
b/vcl/source/filter/ipdf/pdfread.cxx
index 8dc4c967a616..a75a432b52b4 100644
--- a/vcl/source/filter/ipdf/pdfread.cxx
+++ b/vcl/source/filter/ipdf/pdfread.cxx
@@ -15,6 +15,7 @@
 #include <bitmap/BitmapWriteAccess.hxx>
 #include <unotools/ucbstreamhelper.hxx>
 #include <unotools/datetime.hxx>
+#include <tools/UnitConversion.hxx>
 
 #include <vcl/filter/PDFiumLibrary.hxx>
 #include <sal/log.hxx>
diff --git a/vcl/source/gdi/CommonSalLayout.cxx 
b/vcl/source/gdi/CommonSalLayout.cxx
index 79f1a0d2c40c..da2c898c8b24 100644
--- a/vcl/source/gdi/CommonSalLayout.cxx
+++ b/vcl/source/gdi/CommonSalLayout.cxx
@@ -41,6 +41,7 @@
 #include <hb-graphite2.h>
 #include <hb-icu.h>
 
+#include <map>
 #include <memory>
 
 GenericSalLayout::GenericSalLayout(LogicalFontInstance &rFont)
diff --git a/vcl/source/graphic/UnoGraphicDescriptor.cxx 
b/vcl/source/graphic/UnoGraphicDescriptor.cxx
index 02d944e12ff4..57b8e5db6210 100644
--- a/vcl/source/graphic/UnoGraphicDescriptor.cxx
+++ b/vcl/source/graphic/UnoGraphicDescriptor.cxx
@@ -19,6 +19,7 @@
 
 #include <graphic/UnoGraphicDescriptor.hxx>
 
+#include <cppuhelper/weakagg.hxx>
 #include <unotools/ucbstreamhelper.hxx>
 #include <vcl/graphicfilter.hxx>
 #include <cppuhelper/supportsservice.hxx>
diff --git a/vcl/source/opengl/OpenGLHelper.cxx 
b/vcl/source/opengl/OpenGLHelper.cxx
index 223dbf87eb9c..ba46c5c716b8 100644
--- a/vcl/source/opengl/OpenGLHelper.cxx
+++ b/vcl/source/opengl/OpenGLHelper.cxx
@@ -30,6 +30,7 @@
 #include <vector>
 #include <unordered_map>
 
+#include <driverblocklist.hxx>
 #include <opengl/zone.hxx>
 #include <vcl/opengl/OpenGLWrapper.hxx>
 #include <vcl/opengl/OpenGLContext.hxx>
diff --git a/vcl/unx/generic/gdi/cairotextrender.cxx 
b/vcl/unx/generic/gdi/cairotextrender.cxx
index 0fce1b1a82e5..38bece7af54d 100644
--- a/vcl/unx/generic/gdi/cairotextrender.cxx
+++ b/vcl/unx/generic/gdi/cairotextrender.cxx
@@ -23,6 +23,7 @@
 #include <unx/cairotextrender.hxx>
 #include <unx/fc_fontoptions.hxx>
 #include <unx/freetype_glyphcache.hxx>
+#include <unx/gendata.hxx>
 #include <headless/CairoCommon.hxx>
 #include <vcl/svapp.hxx>
 #include <sallayout.hxx>
diff --git a/vcl/unx/generic/window/salframe.cxx 
b/vcl/unx/generic/window/salframe.cxx
index bce003bec4d9..7b7e946c4e47 100644
--- a/vcl/unx/generic/window/salframe.cxx
+++ b/vcl/unx/generic/window/salframe.cxx
@@ -57,6 +57,7 @@
 #include <o3tl/string_view.hxx>
 #include <com/sun/star/uno/Exception.hpp>
 
+#include <salinst.hxx>
 #include <svdata.hxx>
 #include <bitmaps.hlst>
 
diff --git a/vcl/unx/gtk3/gtkframe.cxx b/vcl/unx/gtk3/gtkframe.cxx
index facf11b466c3..ca83d17bb180 100644
--- a/vcl/unx/gtk3/gtkframe.cxx
+++ b/vcl/unx/gtk3/gtkframe.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_version.h>
+
 #include <unx/gtk/gtkframe.hxx>
 #include <unx/gtk/gtkdata.hxx>
 #include <unx/gtk/gtkinst.hxx>

Reply via email to