vcl/CppunitTest_vcl_bitmap_render_test.mk          |    5 ++++-
 vcl/CppunitTest_vcl_bitmap_test.mk                 |    2 ++
 vcl/CppunitTest_vcl_outdev.mk                      |    2 ++
 vcl/CppunitTest_vcl_timer.mk                       |    2 ++
 vcl/IwyuFilter_vcl.yaml                            |    6 ++++--
 vcl/inc/SalGradient.hxx                            |    2 ++
 vcl/inc/accessibility/vclxaccessiblelist.hxx       |    1 +
 vcl/inc/accessibility/vclxaccessiblestatusbar.hxx  |    1 +
 vcl/inc/accessibility/vclxaccessibletabcontrol.hxx |    1 +
 vcl/inc/bitmap/BitmapDuoToneFilter.hxx             |    3 ++-
 vcl/inc/filter/MetReader.hxx                       |    2 ++
 vcl/inc/filter/PcxReader.hxx                       |    2 ++
 vcl/inc/graphic/MemoryManaged.hxx                  |    2 ++
 vcl/inc/graphic/SwapInfo.hxx                       |    2 ++
 vcl/inc/impfontcache.hxx                           |    1 +
 vcl/inc/qt5/QtMenu.hxx                             |    1 +
 vcl/inc/qt5/QtVirtualDevice.hxx                    |    1 +
 vcl/inc/salwtype.hxx                               |    2 ++
 vcl/source/bitmap/floyd.hxx                        |    2 ++
 vcl/source/control/thumbpos.hxx                    |    2 ++
 vcl/unx/generic/dtrans/bmp.hxx                     |    1 +
 vcl/unx/generic/gdi/cairo_xlib_cairo.hxx           |    2 ++
 vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx        |    3 +++
 23 files changed, 44 insertions(+), 4 deletions(-)

New commits:
commit 50a7ed2138b8adea5fc7df832148aff070326e4c
Author:     Gabor Kelemen <[email protected]>
AuthorDate: Tue Jan 6 11:53:54 2026 +0100
Commit:     Gabor Kelemen <[email protected]>
CommitDate: Thu Jan 22 23:05:15 2026 +0100

    Fix some non self contained headers in module vcl
    
    Change-Id: I2bbfd2034333277d7e1e776b5e802c2de9384eb5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196640
    Reviewed-by: Gabor Kelemen <[email protected]>
    Tested-by: Jenkins

diff --git a/vcl/CppunitTest_vcl_bitmap_render_test.mk 
b/vcl/CppunitTest_vcl_bitmap_render_test.mk
index 3af9c9fafd51..6c2f23cdea77 100644
--- a/vcl/CppunitTest_vcl_bitmap_render_test.mk
+++ b/vcl/CppunitTest_vcl_bitmap_render_test.mk
@@ -35,7 +35,10 @@ $(eval $(call 
gb_CppunitTest_use_sdk_api,vcl_bitmap_render_test))
 $(eval $(call gb_CppunitTest_use_ure,vcl_bitmap_render_test))
 $(eval $(call gb_CppunitTest_use_vcl,vcl_bitmap_render_test))
 
-$(eval $(call 
gb_CppunitTest_use_externals,vcl_bitmap_render_test,boost_headers))
+$(eval $(call gb_CppunitTest_use_externals,vcl_bitmap_render_test,\
+    boost_headers \
+    harfbuzz \
+))
 
 $(eval $(call gb_CppunitTest_use_components,vcl_bitmap_render_test,\
     configmgr/source/configmgr \
diff --git a/vcl/CppunitTest_vcl_bitmap_test.mk 
b/vcl/CppunitTest_vcl_bitmap_test.mk
index bcf250d3b054..73489b6fae39 100644
--- a/vcl/CppunitTest_vcl_bitmap_test.mk
+++ b/vcl/CppunitTest_vcl_bitmap_test.mk
@@ -48,6 +48,8 @@ $(eval $(call gb_CppunitTest_use_vcl,vcl_bitmap_test))
 
 $(eval $(call gb_CppunitTest_use_rdb,vcl_bitmap_test,services))
 
+$(eval $(call gb_CppunitTest_use_externals,vcl_bitmap_test,harfbuzz))
+
 $(eval $(call gb_CppunitTest_use_configuration,vcl_bitmap_test))
 
 # vim: set noet sw=4 ts=4:
diff --git a/vcl/CppunitTest_vcl_outdev.mk b/vcl/CppunitTest_vcl_outdev.mk
index 65fd6b5fa17e..ef3fd9893b89 100644
--- a/vcl/CppunitTest_vcl_outdev.mk
+++ b/vcl/CppunitTest_vcl_outdev.mk
@@ -39,6 +39,8 @@ $(eval $(call gb_CppunitTest_use_sdk_api,vcl_outdev))
 $(eval $(call gb_CppunitTest_use_ure,vcl_outdev))
 $(eval $(call gb_CppunitTest_use_vcl,vcl_outdev))
 
+$(eval $(call gb_CppunitTest_use_externals,vcl_outdev,harfbuzz))
+
 $(eval $(call gb_CppunitTest_use_components,vcl_outdev,\
        configmgr/source/configmgr \
        i18npool/util/i18npool \
diff --git a/vcl/CppunitTest_vcl_timer.mk b/vcl/CppunitTest_vcl_timer.mk
index a89e4e070ec8..9af386725219 100644
--- a/vcl/CppunitTest_vcl_timer.mk
+++ b/vcl/CppunitTest_vcl_timer.mk
@@ -37,6 +37,8 @@ $(eval $(call gb_CppunitTest_use_sdk_api,vcl_timer))
 $(eval $(call gb_CppunitTest_use_ure,vcl_timer))
 $(eval $(call gb_CppunitTest_use_vcl,vcl_timer))
 
+$(eval $(call gb_CppunitTest_use_externals,vcl_timer,harfbuzz))
+
 $(eval $(call gb_CppunitTest_use_components,vcl_timer,\
        configmgr/source/configmgr \
        i18npool/util/i18npool \
diff --git a/vcl/IwyuFilter_vcl.yaml b/vcl/IwyuFilter_vcl.yaml
index 0da726dbec7b..d5fe8ae147f7 100644
--- a/vcl/IwyuFilter_vcl.yaml
+++ b/vcl/IwyuFilter_vcl.yaml
@@ -6,9 +6,11 @@ customAssumeFilenames:
     # Needs -isystem /usr/include/x86_64-linux-gnu/qt6
     vcl/inc/qt6: vcl/qt6/QtInstance.cxx
     # Needs -isystem /usr/include/x86_64-linux-gnu/qt5
-    vcl/unx/gtk3_kde5: vcl/qt5/QtInstance.cxx
+    vcl/unx/gtk3_kde5: vcl/unx/gtk3_kde5/kde5_filepicker.cxx
     # Needs -isystem /usr/include/gtk-3.0 -isystem /usr/include/gstreamer-1.0
-    vcl/inc/unx: vcl/unx/gtk3/gtkinst.cxx
+    vcl/inc/unx/gtk3: vcl/unx/gtk3/gtkframe.cxx
+    # Needs -isystem /usr/include/gtk-3.0 -isystem /usr/include/gstreamer-1.0
+    vcl/unx/gtk3: vcl/unx/gtk3/gtkframe.cxx
     # Needs -isystem /usr/include/x86_64-linux-gnu/qt5
     vcl/unx/kf5: vcl/qt5/QtInstance.cxx
     # Needs -isystem /usr/include/x86_64-linux-gnu/qt5
diff --git a/vcl/inc/SalGradient.hxx b/vcl/inc/SalGradient.hxx
index 22933b05e9c9..2394e9b396a2 100644
--- a/vcl/inc/SalGradient.hxx
+++ b/vcl/inc/SalGradient.hxx
@@ -12,6 +12,8 @@
 #include <basegfx/point/b2dpoint.hxx>
 #include <tools/color.hxx>
 
+#include <vector>
+
 struct SalGradientStop
 {
     Color maColor;
diff --git a/vcl/inc/accessibility/vclxaccessiblelist.hxx 
b/vcl/inc/accessibility/vclxaccessiblelist.hxx
index 0d13a833411c..33ea535007a5 100644
--- a/vcl/inc/accessibility/vclxaccessiblelist.hxx
+++ b/vcl/inc/accessibility/vclxaccessiblelist.hxx
@@ -26,6 +26,7 @@
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <vcl/accessibility/vclxaccessiblecomponent.hxx>
+#include <accessibility/IComboListBoxHelper.hxx>
 
 class IComboListBoxHelper;
 class VCLXAccessibleListItem;
diff --git a/vcl/inc/accessibility/vclxaccessiblestatusbar.hxx 
b/vcl/inc/accessibility/vclxaccessiblestatusbar.hxx
index 855795602842..3c34ba056244 100644
--- a/vcl/inc/accessibility/vclxaccessiblestatusbar.hxx
+++ b/vcl/inc/accessibility/vclxaccessiblestatusbar.hxx
@@ -20,6 +20,7 @@
 #pragma once
 
 #include <vcl/accessibility/vclxaccessiblecomponent.hxx>
+#include <accessibility/vclxaccessiblestatusbaritem.hxx>
 #include <vcl/status.hxx>
 #include <vcl/vclptr.hxx>
 
diff --git a/vcl/inc/accessibility/vclxaccessibletabcontrol.hxx 
b/vcl/inc/accessibility/vclxaccessibletabcontrol.hxx
index 5dfa69d3cd93..ab65394b920c 100644
--- a/vcl/inc/accessibility/vclxaccessibletabcontrol.hxx
+++ b/vcl/inc/accessibility/vclxaccessibletabcontrol.hxx
@@ -21,6 +21,7 @@
 
 #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
 #include <cppuhelper/implbase.hxx>
+#include <accessibility/vclxaccessibletabpage.hxx>
 #include <vcl/accessibility/vclxaccessiblecomponent.hxx>
 #include <vcl/tabctrl.hxx>
 #include <vcl/vclptr.hxx>
diff --git a/vcl/inc/bitmap/BitmapDuoToneFilter.hxx 
b/vcl/inc/bitmap/BitmapDuoToneFilter.hxx
index 6f0690fa894c..be98840dee26 100644
--- a/vcl/inc/bitmap/BitmapDuoToneFilter.hxx
+++ b/vcl/inc/bitmap/BitmapDuoToneFilter.hxx
@@ -10,7 +10,8 @@
 
 #pragma once
 
-#include <vcl/BitmapColor.hxx>
+#include <tools/color.hxx>
+
 #include <vcl/bitmap/BitmapFilter.hxx>
 
 class VCL_DLLPUBLIC BitmapDuoToneFilter final : public BitmapFilter
diff --git a/vcl/inc/filter/MetReader.hxx b/vcl/inc/filter/MetReader.hxx
index 2fcfabad6761..ebfe2179cffe 100644
--- a/vcl/inc/filter/MetReader.hxx
+++ b/vcl/inc/filter/MetReader.hxx
@@ -19,6 +19,8 @@
 
 #pragma once
 
+#include <vcl/dllapi.h>
+
 class SvStream;
 class ImportOutput;
 
diff --git a/vcl/inc/filter/PcxReader.hxx b/vcl/inc/filter/PcxReader.hxx
index 4ecef879c07f..54449f3fdf4b 100644
--- a/vcl/inc/filter/PcxReader.hxx
+++ b/vcl/inc/filter/PcxReader.hxx
@@ -19,6 +19,8 @@
 
 #pragma once
 
+#include <vcl/dllapi.h>
+
 class SvStream;
 class ImportOutput;
 
diff --git a/vcl/inc/graphic/MemoryManaged.hxx 
b/vcl/inc/graphic/MemoryManaged.hxx
index 530ebdb674f3..c3118f77d7ac 100644
--- a/vcl/inc/graphic/MemoryManaged.hxx
+++ b/vcl/inc/graphic/MemoryManaged.hxx
@@ -13,6 +13,8 @@
 #include <rtl/strbuf.hxx>
 #include <vcl/timer.hxx>
 
+#include <graphic/Manager.hxx>
+
 #include <memory>
 #include <mutex>
 #include <chrono>
diff --git a/vcl/inc/graphic/SwapInfo.hxx b/vcl/inc/graphic/SwapInfo.hxx
index 5e0a539fa457..0ae81c38b12b 100644
--- a/vcl/inc/graphic/SwapInfo.hxx
+++ b/vcl/inc/graphic/SwapInfo.hxx
@@ -19,6 +19,8 @@
 
 #pragma once
 
+#include <tools/gen.hxx>
+#include <vcl/mapmod.hxx>
 #include <vcl/dllapi.h>
 #include <vcl/GraphicExternalLink.hxx>
 #include <tools/mapunit.hxx>
diff --git a/vcl/inc/impfontcache.hxx b/vcl/inc/impfontcache.hxx
index 195cb5ad584c..125fbf99b60e 100644
--- a/vcl/inc/impfontcache.hxx
+++ b/vcl/inc/impfontcache.hxx
@@ -27,6 +27,7 @@
 #include <o3tl/hash_combine.hxx>
 
 #include "font/FontSelectPattern.hxx"
+#include "font/LogicalFontInstance.hxx"
 #include "glyphid.hxx"
 
 class Size;
diff --git a/vcl/inc/qt5/QtMenu.hxx b/vcl/inc/qt5/QtMenu.hxx
index 4eb0fbb4a9e3..32874d45dc15 100644
--- a/vcl/inc/qt5/QtMenu.hxx
+++ b/vcl/inc/qt5/QtMenu.hxx
@@ -12,6 +12,7 @@
 #include <salmenu.hxx>
 
 #include <QtCore/QObject>
+#include <QtWidgets/QMenu>
 
 #include <memory>
 
diff --git a/vcl/inc/qt5/QtVirtualDevice.hxx b/vcl/inc/qt5/QtVirtualDevice.hxx
index 50bea3155338..6e9f11b22ae5 100644
--- a/vcl/inc/qt5/QtVirtualDevice.hxx
+++ b/vcl/inc/qt5/QtVirtualDevice.hxx
@@ -25,6 +25,7 @@
 #include <vector>
 
 #include <QtCore/QSize>
+#include <QtGui/QImage>
 
 class QtGraphics;
 class QImage;
diff --git a/vcl/inc/salwtype.hxx b/vcl/inc/salwtype.hxx
index 27240fca0baf..ea3b050c660a 100644
--- a/vcl/inc/salwtype.hxx
+++ b/vcl/inc/salwtype.hxx
@@ -28,6 +28,8 @@
 #include <vcl/GestureEventZoom.hxx>
 #include <vcl/GestureEventRotate.hxx>
 
+#include "font/LogicalFontInstance.hxx"
+
 class LogicalFontInstance;
 class SalGraphics;
 class SalFrame;
diff --git a/vcl/source/bitmap/floyd.hxx b/vcl/source/bitmap/floyd.hxx
index b5f26fb7a6c6..05de7c0b50dc 100644
--- a/vcl/source/bitmap/floyd.hxx
+++ b/vcl/source/bitmap/floyd.hxx
@@ -19,6 +19,8 @@
 
 #pragma once
 
+#include <tools/solar.h>
+
 const extern sal_uLong nVCLRLut[ 6 ] = { 16, 17, 18, 19, 20, 21 };
 const extern sal_uLong nVCLGLut[ 6 ] = { 0, 6, 12, 18, 24, 30 };
 const extern sal_uLong nVCLBLut[ 6 ] = { 0, 36, 72, 108, 144, 180 };
diff --git a/vcl/source/control/thumbpos.hxx b/vcl/source/control/thumbpos.hxx
index 33d3d55f31f1..5d867946f27a 100644
--- a/vcl/source/control/thumbpos.hxx
+++ b/vcl/source/control/thumbpos.hxx
@@ -9,6 +9,8 @@
 
 #pragma once
 
+#include <tools/long.hxx>
+
 inline tools::Long ImplMulDiv(tools::Long nNumber, tools::Long nNumerator, 
tools::Long nDenominator)
 {
     if (!nDenominator)
diff --git a/vcl/unx/generic/dtrans/bmp.hxx b/vcl/unx/generic/dtrans/bmp.hxx
index 3a37158db36f..c203c19e2d47 100644
--- a/vcl/unx/generic/dtrans/bmp.hxx
+++ b/vcl/unx/generic/dtrans/bmp.hxx
@@ -24,6 +24,7 @@
 
 #include <com/sun/star/uno/Sequence.hxx>
 #include <sal/types.h>
+#include <tools/long.hxx>
 
 namespace x11 {
 
diff --git a/vcl/unx/generic/gdi/cairo_xlib_cairo.hxx 
b/vcl/unx/generic/gdi/cairo_xlib_cairo.hxx
index f0b47a3744a2..5e51a2a15487 100644
--- a/vcl/unx/generic/gdi/cairo_xlib_cairo.hxx
+++ b/vcl/unx/generic/gdi/cairo_xlib_cairo.hxx
@@ -19,6 +19,8 @@
 
 #pragma once
 
+#include <X11/Xlib.h>
+
 #include <sal/config.h>
 #include <vcl/cairo.hxx>
 #include <vcl/salgtype.hxx>
diff --git a/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx 
b/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx
index 5b1d8dcebf72..ada077894fc7 100644
--- a/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx
+++ b/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx
@@ -23,6 +23,9 @@
 #include <rtl/ustring.hxx>
 #include <cppuhelper/implbase.hxx>
 
+#include <com/sun/star/ui/dialogs/XFolderPicker2.hpp>
+#include <com/sun/star/lang/XInitialization.hpp>
+
 #include "SalGtkPicker.hxx"
 
 class SalGtkFolderPicker :

Reply via email to