[Libreoffice-commits] core.git: bin/check-elf-dynamic-objects bin/distro-install-file-lists bin/moveglobalheaders.sh config_host/config_vclplug.h.in config_host.mk.in configure.ac cui/Library_cui.mk cui/source desktop/Pagein_common.mk distro-configs/LibreOfficeFlatpak.conf distro-configs/LibreOfficeMacOSX.conf distro-configs/LibreOfficeOnline.conf distro-configs/LibreOfficeOssFuzz.conf onlineupdate/Executable_test_updater_dialog.mk onlineupdate/Executable_updater.mk onlineupdate/source RepositoryExternal.mk Repository.mk scp2/InstallScript_setup_osl.mk scp2/Module_scp2.mk sd/CppunitTest_sd_uimpress.mk solenv/clang-format solenv/gbuild vcl/Executable_xid_fullscreen_on_all_monitors.mk vcl/inc vcl/Library_vclplug_gtk3_kde5.mk vcl/Library_vclplug_gtk3.mk vcl/Library_vclplug_gtk.mk vcl/Module_vcl.mk vcl/source vcl/unx

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Mon Sep 30 14:54:45 UTC 2019


 Repository.mk                                          |    9 
 RepositoryExternal.mk                                  |   28 
 bin/check-elf-dynamic-objects                          |    6 
 bin/distro-install-file-lists                          |    3 
 bin/moveglobalheaders.sh                               |    3 
 config_host.mk.in                                      |    7 
 config_host/config_vclplug.h.in                        |    1 
 configure.ac                                           |   97 
 cui/Library_cui.mk                                     |    1 
 cui/source/options/optgdlg.cxx                         |    5 
 desktop/Pagein_common.mk                               |    2 
 distro-configs/LibreOfficeFlatpak.conf                 |    1 
 distro-configs/LibreOfficeMacOSX.conf                  |    1 
 distro-configs/LibreOfficeOnline.conf                  |    1 
 distro-configs/LibreOfficeOssFuzz.conf                 |    1 
 onlineupdate/Executable_test_updater_dialog.mk         |    8 
 onlineupdate/Executable_updater.mk                     |    9 
 onlineupdate/source/update/updater/progressui_gtk.cxx  |   10 
 scp2/InstallScript_setup_osl.mk                        |    2 
 scp2/Module_scp2.mk                                    |    2 
 sd/CppunitTest_sd_uimpress.mk                          |    1 
 solenv/clang-format/blacklist                          |   61 
 solenv/gbuild/CppunitTest.mk                           |    1 
 vcl/Executable_xid_fullscreen_on_all_monitors.mk       |   22 
 vcl/Library_vclplug_gtk.mk                             |  132 
 vcl/Library_vclplug_gtk3.mk                            |    6 
 vcl/Library_vclplug_gtk3_kde5.mk                       |    1 
 vcl/Module_vcl.mk                                      |    6 
 vcl/inc/unx/gtk/gtkdata.hxx                            |   40 
 vcl/inc/unx/gtk/gtkframe.hxx                           |   36 
 vcl/inc/unx/gtk/gtkgdi.hxx                             |    4 
 vcl/inc/unx/gtk/gtkinst.hxx                            |   17 
 vcl/inc/unx/gtk/gtkobject.hxx                          |    4 
 vcl/inc/unx/gtk/gtkprintwrapper.hxx                    |   57 
 vcl/inc/unx/gtk/gtksalmenu.hxx                         |   23 
 vcl/source/app/salplug.cxx                             |    8 
 vcl/unx/gtk/a11y/atkaction.cxx                         |  275 -
 vcl/unx/gtk/a11y/atkbridge.cxx                         |   72 
 vcl/unx/gtk/a11y/atkcomponent.cxx                      |  387 -
 vcl/unx/gtk/a11y/atkeditabletext.cxx                   |  194 
 vcl/unx/gtk/a11y/atkfactory.cxx                        |  195 
 vcl/unx/gtk/a11y/atkhypertext.cxx                      |  273 -
 vcl/unx/gtk/a11y/atkimage.cxx                          |  131 
 vcl/unx/gtk/a11y/atklistener.cxx                       |  739 --
 vcl/unx/gtk/a11y/atkregistry.cxx                       |   66 
 vcl/unx/gtk/a11y/atkselection.cxx                      |  190 
 vcl/unx/gtk/a11y/atktable.cxx                          |  580 --
 vcl/unx/gtk/a11y/atktext.cxx                           |  838 ---
 vcl/unx/gtk/a11y/atktextattributes.cxx                 | 1383 -----
 vcl/unx/gtk/a11y/atkutil.cxx                           |  789 --
 vcl/unx/gtk/a11y/atkvalue.cxx                          |  138 
 vcl/unx/gtk/a11y/atkwindow.cxx                         |  330 -
 vcl/unx/gtk/a11y/atkwrapper.cxx                        |  959 ---
 vcl/unx/gtk/gloactiongroup.cxx                         |  398 -
 vcl/unx/gtk/glomenu.cxx                                |  691 --
 vcl/unx/gtk/gtkdata.cxx                                |  890 ---
 vcl/unx/gtk/gtkinst.cxx                                |  478 -
 vcl/unx/gtk/gtkobject.cxx                              |  192 
 vcl/unx/gtk/gtkprintwrapper.cxx                        |  349 -
 vcl/unx/gtk/gtksalframe.cxx                            | 3606 -------------
 vcl/unx/gtk/gtksalmenu.cxx                             | 1444 -----
 vcl/unx/gtk/gtksys.cxx                                 |  296 -
 vcl/unx/gtk/hudawareness.cxx                           |  112 
 vcl/unx/gtk/salnativewidgets-gtk.cxx                   | 4480 -----------------
 vcl/unx/gtk/salprn-gtk.cxx                             |  970 ---
 vcl/unx/gtk/xid_fullscreen_on_all_monitors.c           |  101 
 vcl/unx/gtk3/a11y/atkwrapper.hxx                       |    6 
 vcl/unx/gtk3/a11y/gtk3atkaction.cxx                    |  265 +
 vcl/unx/gtk3/a11y/gtk3atkbridge.cxx                    |   27 
 vcl/unx/gtk3/a11y/gtk3atkcomponent.cxx                 |  373 +
 vcl/unx/gtk3/a11y/gtk3atkeditabletext.cxx              |  184 
 vcl/unx/gtk3/a11y/gtk3atkfactory.cxx                   |  176 
 vcl/unx/gtk3/a11y/gtk3atkhypertext.cxx                 |  263 
 vcl/unx/gtk3/a11y/gtk3atkimage.cxx                     |  122 
 vcl/unx/gtk3/a11y/gtk3atklistener.cxx                  |  729 ++
 vcl/unx/gtk3/a11y/gtk3atkregistry.cxx                  |   56 
 vcl/unx/gtk3/a11y/gtk3atkselection.cxx                 |  180 
 vcl/unx/gtk3/a11y/gtk3atktable.cxx                     |  570 ++
 vcl/unx/gtk3/a11y/gtk3atktext.cxx                      |  827 +++
 vcl/unx/gtk3/a11y/gtk3atktextattributes.cxx            | 1373 +++++
 vcl/unx/gtk3/a11y/gtk3atkutil.cxx                      |  779 ++
 vcl/unx/gtk3/a11y/gtk3atkvalue.cxx                     |  128 
 vcl/unx/gtk3/a11y/gtk3atkwindow.cxx                    |  320 +
 vcl/unx/gtk3/a11y/gtk3atkwrapper.cxx                   |  949 +++
 vcl/unx/gtk3/fpicker/SalGtkFilePicker.cxx              |   15 
 vcl/unx/gtk3/fpicker/SalGtkFilePicker.hxx              |    2 
 vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx            |    2 
 vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx            |    2 
 vcl/unx/gtk3/fpicker/SalGtkPicker.cxx                  |    2 
 vcl/unx/gtk3/fpicker/resourceprovider.cxx              |    2 
 vcl/unx/gtk3/gtk3fpicker.cxx                           |   15 
 vcl/unx/gtk3/gtk3gloactiongroup.cxx                    |  400 +
 vcl/unx/gtk3/gtk3glomenu.cxx                           |  683 ++
 vcl/unx/gtk3/gtk3gtkinst.cxx                           |  401 +
 vcl/unx/gtk3/gtk3gtkprintwrapper.cxx                   |  150 
 vcl/unx/gtk3/gtk3gtksalmenu.cxx                        | 1393 +++++
 vcl/unx/gtk3/gtk3gtksys.cxx                            |  273 +
 vcl/unx/gtk3/gtk3hudawareness.cxx                      |  105 
 vcl/unx/gtk3/gtk3salprn-gtk.cxx                        |  952 +++
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkaction.cxx         |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkbridge.cxx         |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkcomponent.cxx      |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkeditabletext.cxx   |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkfactory.cxx        |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkhypertext.cxx      |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkimage.cxx          |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atklistener.cxx       |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkregistry.cxx       |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkselection.cxx      |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atktable.cxx          |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atktext.cxx           |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atktextattributes.cxx |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkutil.cxx           |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkvalue.cxx          |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkwindow.cxx         |    2 
 vcl/unx/gtk3_kde5/a11y/gtk3_kde5_atkwrapper.cxx        |    2 
 116 files changed, 11741 insertions(+), 22179 deletions(-)

New commits:
commit 1ae450504cf57457f9702684b1517fda1dd3c481
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Aug 13 10:37:50 2019 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Mon Sep 30 16:53:32 2019 +0200

    drop gtk2 support
    
    Change-Id: Ie838cabfecfef7e3225c1555536d5c9cf3b43f15
    Reviewed-on: https://gerrit.libreoffice.org/77405
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.weghorn at posteo.de>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/Repository.mk b/Repository.mk
index 8068e52572bc..965889197a9a 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -224,14 +224,6 @@ $(eval $(call gb_Helper_register_executables_for_install,OOO,python, \
 	) \
 ))
 
-ifeq ($(USING_X11), TRUE)
-$(eval $(call gb_Helper_register_executables_for_install,OOO,gnome, \
-	$(if $(ENABLE_GTK),\
-		xid-fullscreen-on-all-monitors \
-	) \
-))
-endif
-
 ifneq ($(ENABLE_POPPLER),)
 $(eval $(call gb_Helper_register_executables_for_install,OOO,pdfimport, \
 	xpdfimport \
@@ -290,7 +282,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,onlineupdate, \
 
 $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,gnome, \
 	$(if $(ENABLE_EVOAB2),evoab) \
-	$(if $(ENABLE_GTK),vclplug_gtk) \
 	$(if $(ENABLE_GTK3),vclplug_gtk3) \
 	$(if $(ENABLE_GIO),losessioninstall) \
 	$(if $(ENABLE_GIO),ucpgio1) \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 57f66b8f344a..4d99f79e86ec 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -2605,34 +2605,6 @@ gb_LinkTarget__use_avahi :=
 
 endif # ENABLE_AVAHI
 
-
-define gb_LinkTarget__use_gtk
-$(call gb_LinkTarget_set_include,$(1),\
-	$$(INCLUDE) \
-	$(GTK_CFLAGS) \
-)
-
-$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
-
-ifeq ($(ENABLE_GTK_PRINT),TRUE)
-
-$(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
-
-$(call gb_LinkTarget_set_include,$(1),\
-	$$(INCLUDE) \
-	$(GTK_PRINT_CFLAGS) \
-)
-
-$(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
-
-endif
-
-endef
-
-define gb_LinkTarget__use_gthread
-$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
-endef
-
 ifeq ($(ENABLE_CUPS),TRUE)
 
 define gb_LinkTarget__use_cups
diff --git a/bin/check-elf-dynamic-objects b/bin/check-elf-dynamic-objects
index 5492aafaca34..f64044dd1e49 100755
--- a/bin/check-elf-dynamic-objects
+++ b/bin/check-elf-dynamic-objects
@@ -93,7 +93,6 @@ x11whitelist="libX11.so.6 libXext.so.6 libSM.so.6 libICE.so.6 libXinerama.so.1 l
 openglwhitelist="libGL.so.1"
 giowhitelist="libgio-2.0.so.0 libgobject-2.0.so.0 libgmodule-2.0.so.0 libgthread-2.0.so.0 libglib-2.0.so.0 libdbus-glib-1.so.2 libdbus-1.so.3"
 gstreamerwhitelist="libgstaudio-1.0.so.0 libgstpbutils-1.0.so.0 libgstvideo-1.0.so.0 libgstbase-1.0.so.0 libgstreamer-1.0.so.0"
-gtk2whitelist="libgtk-x11-2.0.so.0 libgdk-x11-2.0.so.0 libpangocairo-1.0.so.0 libfribidi.so.0 libatk-1.0.so.0 libcairo.so.2 libgio-2.0.so.0 libpangoft2-1.0.so.0 libpango-1.0.so.0 libfontconfig.so.1 libfreetype.so.6 libgdk_pixbuf-2.0.so.0 libgobject-2.0.so.0 libglib-2.0.so.0 libgmodule-2.0.so.0 libgthread-2.0.so.0 libdbus-glib-1.so.2 libdbus-1.so.3"
 gtk3whitelist="libgtk-3.so.0 libgdk-3.so.0 libcairo-gobject.so.2 libpangocairo-1.0.so.0 libfribidi.so.0 libatk-1.0.so.0 libcairo.so.2 libgio-2.0.so.0 libpangoft2-1.0.so.0 libpango-1.0.so.0 libfontconfig.so.1 libfreetype.so.6 libgdk_pixbuf-2.0.so.0 libgobject-2.0.so.0 libglib-2.0.so.0 libgmodule-2.0.so.0 libgthread-2.0.so.0 libdbus-glib-1.so.2 libdbus-1.so.3"
 qt5whitelist="libQt5Core.so.5 libQt5Gui.so.5 libQt5Network.so.5 libQt5Widgets.so.5 libQt5X11Extras.so.5 libcairo.so.2 libglib-2.0.so.0 libgobject-2.0.so.0 libxcb.so.1"
 kf5whitelist="libKF5ConfigCore.so.5 libKF5CoreAddons.so.5 libKF5I18n.so.5 libKF5KIOCore.so.5 libKF5KIOFileWidgets.so.5 libKF5KIOWidgets.so.5 libKF5WindowSystem.so.5"
@@ -129,10 +128,7 @@ local file="$1"
                 whitelist="${whitelist} ${qt5whitelist} ${kf5whitelist}"
             fi
         ;;
-        */libvclplug_gtklo.so|*/libqstart_gtklo.so|*/updater)
-            whitelist="${whitelist} ${x11whitelist} ${gtk2whitelist}"
-        ;;
-        */libvclplug_gtk3lo.so)
+        */libvclplug_gtk3lo.so|*/updater)
             whitelist="${whitelist} ${x11whitelist} ${gtk3whitelist}"
         ;;
         */libvclplug_qt5lo.so)
diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists
index 4cbe0be407ac..ef016e3df6cc 100755
--- a/bin/distro-install-file-lists
+++ b/bin/distro-install-file-lists
@@ -324,9 +324,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
             mv_file_between_flists core_list.txt common_list.txt "$INSTALLDIR/$f"
         done
 
-        # Ship ooqstart for gnome in gnome package
-        mv_file_between_flists gnome_list.txt core_list.txt "$INSTALLDIR/program/libqstart_gtk680.*"
-
         # themes are included in other packages
         # don't use remove_file as we don't want them removed from the buildroot.
         mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/share/config/images_crystal.zip
diff --git a/bin/moveglobalheaders.sh b/bin/moveglobalheaders.sh
index 6c8cff729505..ca202832bd6a 100755
--- a/bin/moveglobalheaders.sh
+++ b/bin/moveglobalheaders.sh
@@ -36,8 +36,7 @@ done
 # we like to be special ...
 sed -ie 's/\/svtools\/inc\/svtools/\/include\/svtools\//' svtools/Library_svt.mk
 sed -ie 's/\/sfx2\/inc\/sfx2/\/include\/sfx2\//' sfx2/Library_sfx.mk
-sed -ie 's/\/sfx2\/inc\/sfx2/\/include\/sfx2\//' sfx2/Library_qstart_gtk.mk
-git add svtools/Library_svt.mk sfx2/Library_sfx.mk sfx2/Library_qstart_gtk.mk
+git add svtools/Library_svt.mk sfx2/Library_sfx.mk
 
 # urgh
 sed -ie 's/\.\.\/svx\//svx\//' svx/source/svdraw/svdoashp.cxx
diff --git a/config_host.mk.in b/config_host.mk.in
index 122c9de745dd..29b85688b83f 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -142,8 +142,6 @@ export ENABLE_GIO=@ENABLE_GIO@
 export ENABLE_GPGMEPP=@ENABLE_GPGMEPP@
 export ENABLE_GSTREAMER_1_0=@ENABLE_GSTREAMER_1_0@
 export ENABLE_GTK3=@ENABLE_GTK3@
-export ENABLE_GTK=@ENABLE_GTK@
-export ENABLE_GTK_PRINT=@ENABLE_GTK_PRINT@
 export DISABLE_GUI=@DISABLE_GUI@
 export ENABLE_HTMLHELP=@ENABLE_HTMLHELP@
 export ENABLE_IOS_LIBREOFFICELIGHT_APP=@ENABLE_IOS_LIBREOFFICELIGHT_APP@
@@ -236,13 +234,8 @@ export GSSAPI_LIBS=@GSSAPI_LIBS@
 export GSTREAMER_1_0_CFLAGS=$(gb_SPACE)@GSTREAMER_1_0_CFLAGS@
 export GSTREAMER_1_0_LIBS=$(gb_SPACE)@GSTREAMER_1_0_LIBS@
 export GTHREAD_CFLAGS=$(gb_SPACE)@GTHREAD_CFLAGS@
-export GTHREAD_LIBS=$(gb_SPACE)@GTHREAD_LIBS@
 export GTK3_CFLAGS=$(gb_SPACE)@GTK3_CFLAGS@
 export GTK3_LIBS=$(gb_SPACE)@GTK3_LIBS@
-export GTK_CFLAGS=$(gb_SPACE)@GTK_CFLAGS@
-export GTK_LIBS=$(gb_SPACE)@GTK_LIBS@
-export GTK_PRINT_CFLAGS=$(gb_SPACE)@GTK_PRINT_CFLAGS@
-export GTK_PRINT_LIBS=$(gb_SPACE)@GTK_PRINT_LIBS@
 export USING_X11=@USING_X11@
 export HAMCREST_JAR=@HAMCREST_JAR@
 export HAVE_BROKEN_GCC_WMAYBE_UNINITIALIZED=@HAVE_BROKEN_GCC_WMAYBE_UNINITIALIZED@
diff --git a/config_host/config_vclplug.h.in b/config_host/config_vclplug.h.in
index 694334dd4bf3..8ff5a9ce527f 100644
--- a/config_host/config_vclplug.h.in
+++ b/config_host/config_vclplug.h.in
@@ -7,7 +7,6 @@ Settings about which desktops have support enabled.
 #ifndef CONFIG_VCLPLUG_H
 #define CONFIG_VCLPLUG_H
 
-#define ENABLE_GTK 0
 #define ENABLE_GTK3 0
 #define ENABLE_GTK3_KDE5 0
 #define ENABLE_KF5 0
diff --git a/configure.ac b/configure.ac
index cf0f6e501611..ce79ad5395af 100644
--- a/configure.ac
+++ b/configure.ac
@@ -574,7 +574,6 @@ SDKDIRNAME=sdk
 case "$host_os" in
 
 solaris*)
-    test_gtk=yes
     build_gstreamer_1_0=yes
     test_freetype=yes
     _os=SunOS
@@ -600,7 +599,6 @@ solaris*)
     ;;
 
 linux-gnu*|k*bsd*-gnu*)
-    test_gtk=yes
     build_gstreamer_1_0=yes
     test_kf5=yes
     test_gtk3_kde5=yes
@@ -649,7 +647,6 @@ cygwin*|interix*)
     ;;
 
 darwin*) # macOS or iOS
-    test_gtk=yes
     test_randr=no
     test_xrender=no
     test_freetype=no
@@ -662,7 +659,6 @@ darwin*) # macOS or iOS
     if test "$host_cpu" = "arm64" -o "$enable_ios_simulator" = "yes"; then
         build_for_ios=YES
         _os=iOS
-        test_gtk=no
         test_cups=no
         enable_mpl_subset=yes
         enable_lotuswordpro=no
@@ -694,7 +690,6 @@ darwin*) # macOS or iOS
 ;;
 
 freebsd*)
-    test_gtk=yes
     build_gstreamer_1_0=yes
     test_kf5=yes
     test_gtk3_kde5=yes
@@ -722,7 +717,6 @@ freebsd*)
     ;;
 
 *netbsd*)
-    test_gtk=yes
     build_gstreamer_1_0=yes
     test_kf5=yes
     test_gtk3_kde5=yes
@@ -739,7 +733,6 @@ aix*)
     ;;
 
 openbsd*)
-    test_gtk=yes
     test_freetype=yes
     PTHREAD_CFLAGS="-D_THREAD_SAFE"
     PTHREAD_LIBS="-pthread"
@@ -747,7 +740,6 @@ openbsd*)
     ;;
 
 dragonfly*)
-    test_gtk=yes
     build_gstreamer_1_0=yes
     test_kf5=yes
     test_gtk3_kde5=yes
@@ -770,7 +762,6 @@ linux-android*)
     test_dbus=no
     test_fontconfig=no
     test_freetype=no
-    test_gtk=no
     test_kf5=no
     test_qt5=no
     test_gtk3_kde5=no
@@ -1204,11 +1195,6 @@ AC_ARG_ENABLE(python,
          'fully-internal' even forces the internal version for uses of Python
          during the build.]))
 
-libo_FUZZ_ARG_ENABLE(gtk,
-    AS_HELP_STRING([--disable-gtk],
-        [Determines whether to use Gtk+ vclplug on platforms where Gtk+ is available.]),
-,test "${enable_gtk+set}" = set || enable_gtk=yes)
-
 libo_FUZZ_ARG_ENABLE(gtk3,
     AS_HELP_STRING([--disable-gtk3],
         [Determines whether to use Gtk+ 3.0 vclplug on platforms where Gtk+ 3.0 is available.]),
@@ -1652,12 +1638,12 @@ AC_ARG_WITH(system-jars,
 AC_ARG_WITH(system-cairo,
     AS_HELP_STRING([--with-system-cairo],
         [Use cairo libraries already on system.  Happens automatically for
-         (implicit) --enable-gtk and for --enable-gtk3.]))
+         (implicit) --enable-gtk3.]))
 
 AC_ARG_WITH(system-epoxy,
     AS_HELP_STRING([--with-system-epoxy],
         [Use epoxy libraries already on system.  Happens automatically for
-         --enable-gtk3.]),,
+         (implicit) --enable-gtk3.]),,
        [with_system_epoxy="$with_system_libs"])
 
 AC_ARG_WITH(myspell-dicts,
@@ -4716,7 +4702,6 @@ if test "$cross_compiling" = "yes"; then
     ./configure \
         --disable-cups \
         --disable-gstreamer-1-0 \
-        --disable-gtk \
         --disable-gtk3 \
         --disable-pdfimport \
         --disable-postgresql-sdbc \
@@ -4849,7 +4834,6 @@ if test "$USING_X11" != TRUE; then
     test_xrender=no
     test_cups=no
     test_dbus=no
-    test_gtk=no
     build_gstreamer_1_0=no
     test_kf5=no
     test_qt5=no
@@ -10328,7 +10312,6 @@ dnl Test which vclplugs have to be built.
 dnl ===================================================================
 R=""
 if test "$USING_X11" != TRUE; then
-    enable_gtk=no
     enable_gtk3=no
 fi
 GTK3_CFLAGS=""
@@ -10369,18 +10352,6 @@ if test "$enable_introspection" = yes; then
     fi
 fi
 
-ENABLE_GTK=""
-if test "x$enable_gtk" = "xyes"; then
-    if test "$with_system_cairo" = no; then
-        AC_MSG_ERROR([System cairo required for gtk support, do not use --without-system-cairo or use --disable-gtk])
-    fi
-    : ${with_system_cairo:=yes}
-    ENABLE_GTK="TRUE"
-    AC_DEFINE(ENABLE_GTK)
-    R="gtk $R"
-fi
-AC_SUBST(ENABLE_GTK)
-
 ENABLE_QT5=""
 if test "x$enable_qt5" = "xyes"; then
     ENABLE_QT5="TRUE"
@@ -10531,61 +10502,27 @@ AC_SUBST(ENABLE_SDREMOTE_BLUETOOTH)
 AC_SUBST(SYSTEM_BLUEZ)
 
 dnl ===================================================================
-dnl Check whether the gtk 2.0 libraries are available.
-dnl ===================================================================
-
-GTK_CFLAGS=""
-GTK_LIBS=""
-if test  "$test_gtk" = "yes"; then
-
-    if test "$ENABLE_GTK" = "TRUE"; then
-        PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.18.0 ,,AC_MSG_ERROR([requirements to build the gtk-plugin not met (gtk+-2.0 >= 2.18.0). Use --disable-gtk or install the missing packages]))
-        PKG_CHECK_MODULES(GTK, gdk-pixbuf-2.0 >= 2.2 ,,AC_MSG_ERROR([requirements to build the gtk-plugin not met (gdk-pixbuf-2.0 >= 2.2). Use --disable-gtk or install the missing packages]))
-        GTK_CFLAGS=$(printf '%s' "$GTK_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
-        FilterLibs "${GTK_LIBS}"
-        GTK_LIBS="${filteredlibs}"
-        PKG_CHECK_MODULES(GTHREAD, gthread-2.0,,AC_MSG_ERROR([requirements to build the gtk-plugin not met (gthread-2.0). Use --disable-gtk or install the missing packages]))
-        BUILD_TYPE="$BUILD_TYPE GTK"
-        GTHREAD_CFLAGS=$(printf '%s' "$GTK_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
-        FilterLibs "${GTHREAD_LIBS}"
-        GTHREAD_LIBS="${filteredlibs}"
-
-        AC_MSG_CHECKING([whether to enable Gtk print dialog support])
-        PKG_CHECK_MODULES([GTK_PRINT], [gtk+-unix-print-2.0 >= 2.10.0],
-                          [ENABLE_GTK_PRINT="TRUE"],
-                          [ENABLE_GTK_PRINT=""])
-        GTK_PRINT_CFLAGS=$(printf '%s' "$GTK_PRINT_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
-        FilterLibs "${GTK_PRINT_LIBS}"
-        GTK_PRINT_LIBS="${filteredlibs}"
-    fi
-
-    if test "$ENABLE_GTK" = "TRUE" || test "$ENABLE_GTK3" = "TRUE"; then
-        AC_MSG_CHECKING([whether to enable GIO support])
-        if test "$_os" != "WINNT" -a "$_os" != "Darwin" -a "$enable_gio" = "yes"; then
-            dnl Need at least 2.26 for the dbus support.
-            PKG_CHECK_MODULES([GIO], [gio-2.0 >= 2.26],
-                              [ENABLE_GIO="TRUE"], [ENABLE_GIO=""])
-            if test "$ENABLE_GIO" = "TRUE"; then
-                AC_DEFINE(ENABLE_GIO)
-                GIO_CFLAGS=$(printf '%s' "$GIO_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
-                FilterLibs "${GIO_LIBS}"
-                GIO_LIBS="${filteredlibs}"
-            fi
-        else
-            AC_MSG_RESULT([no])
+dnl Check whether to enable GIO support
+dnl ===================================================================
+if test "$ENABLE_GTK3" = "TRUE"; then
+    AC_MSG_CHECKING([whether to enable GIO support])
+    if test "$_os" != "WINNT" -a "$_os" != "Darwin" -a "$enable_gio" = "yes"; then
+        dnl Need at least 2.26 for the dbus support.
+        PKG_CHECK_MODULES([GIO], [gio-2.0 >= 2.26],
+                          [ENABLE_GIO="TRUE"], [ENABLE_GIO=""])
+        if test "$ENABLE_GIO" = "TRUE"; then
+            AC_DEFINE(ENABLE_GIO)
+            GIO_CFLAGS=$(printf '%s' "$GIO_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
+            FilterLibs "${GIO_LIBS}"
+            GIO_LIBS="${filteredlibs}"
         fi
+    else
+        AC_MSG_RESULT([no])
     fi
 fi
 AC_SUBST(ENABLE_GIO)
 AC_SUBST(GIO_CFLAGS)
 AC_SUBST(GIO_LIBS)
-AC_SUBST(GTK_CFLAGS)
-AC_SUBST(GTK_LIBS)
-AC_SUBST(GTHREAD_CFLAGS)
-AC_SUBST(GTHREAD_LIBS)
-AC_SUBST([ENABLE_GTK_PRINT])
-AC_SUBST([GTK_PRINT_CFLAGS])
-AC_SUBST([GTK_PRINT_LIBS])
 
 
 dnl ===================================================================
diff --git a/cui/Library_cui.mk b/cui/Library_cui.mk
index 8a2bf42d79c1..54e3733daef1 100644
--- a/cui/Library_cui.mk
+++ b/cui/Library_cui.mk
@@ -20,7 +20,6 @@ $(eval $(call gb_Library_set_include,cui,\
 $(eval $(call gb_Library_set_precompiled_header,cui,cui/inc/pch/precompiled_cui))
 
 $(eval $(call gb_Library_add_defs,cui,\
-    $(if $(filter TRUE,$(ENABLE_GTK)),-DENABLE_GTK) \
     -DCUI_DLLIMPLEMENTATION \
 ))
 
diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index bcf1d7a73fab..c0b840302864 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <config_features.h>
+#include <config_vclplug.h>
 #include <svl/zforlist.hxx>
 #include <svl/currencytable.hxx>
 #include <svtools/langhelp.hxx>
@@ -257,7 +258,7 @@ OfaMiscTabPage::OfaMiscTabPage(weld::Container* pPage, weld::DialogController* p
         m_xFileDlgCB->set_sensitive(false);
     }
 
-#if ! ENABLE_GTK
+#if !ENABLE_GTK3
     m_xPrintDlgFrame->hide();
 #else
     if (!SvtMiscOptions().IsExperimentalMode())
@@ -269,7 +270,7 @@ OfaMiscTabPage::OfaMiscTabPage(weld::Container* pPage, weld::DialogController* p
     m_xQuickLaunchCB->show();
 
     //Only available in Win or if building the gtk systray
-#if !defined(_WIN32) && ! ENABLE_GTK
+#if !defined(_WIN32)
     m_xQuickStarterFrame->hide();
 #endif
 
diff --git a/desktop/Pagein_common.mk b/desktop/Pagein_common.mk
index ca5873db7903..c1661a39b641 100644
--- a/desktop/Pagein_common.mk
+++ b/desktop/Pagein_common.mk
@@ -28,7 +28,7 @@ $(eval $(call gb_Pagein_add_objects,common,\
     ucb1 \
     configmgr \
     vclplug_gen \
-    $(if $(findstring TRUE,$(ENABLE_GTK)),vclplug_gtk) \
+    $(if $(findstring TRUE,$(ENABLE_GTK3)),vclplug_gtk3) \
     basegfx \
     sot \
     xmlscript \
diff --git a/distro-configs/LibreOfficeFlatpak.conf b/distro-configs/LibreOfficeFlatpak.conf
index 5bdba7501869..0d0f9ce5c881 100644
--- a/distro-configs/LibreOfficeFlatpak.conf
+++ b/distro-configs/LibreOfficeFlatpak.conf
@@ -1,4 +1,3 @@
---disable-gtk
 --disable-odk
 --enable-release-build
 --with-ant-home=/run/build/libreoffice/ant
diff --git a/distro-configs/LibreOfficeMacOSX.conf b/distro-configs/LibreOfficeMacOSX.conf
index a4f913c7ec7e..fc7291ca7f9d 100644
--- a/distro-configs/LibreOfficeMacOSX.conf
+++ b/distro-configs/LibreOfficeMacOSX.conf
@@ -5,7 +5,6 @@
 --enable-extension-integration
 --enable-online-update
 --without-system-postgresql
---disable-gtk
 --with-help=html
 --with-myspell-dicts
 --with-package-format=dmg
diff --git a/distro-configs/LibreOfficeOnline.conf b/distro-configs/LibreOfficeOnline.conf
index 75b885a4afb1..a007b85103c7 100644
--- a/distro-configs/LibreOfficeOnline.conf
+++ b/distro-configs/LibreOfficeOnline.conf
@@ -8,7 +8,6 @@
 --disable-firebird-sdbc
 --disable-gio
 --disable-gstreamer-1-0
---disable-gtk
 --disable-gtk3
 --disable-gui
 --disable-qt5
diff --git a/distro-configs/LibreOfficeOssFuzz.conf b/distro-configs/LibreOfficeOssFuzz.conf
index 1cca285ff058..ab9ec3b3b01e 100644
--- a/distro-configs/LibreOfficeOssFuzz.conf
+++ b/distro-configs/LibreOfficeOssFuzz.conf
@@ -4,7 +4,6 @@
 --disable-runtime-optimizations
 --disable-database-connectivity
 --disable-gui
---disable-gtk
 --disable-gtk3
 --disable-pdfium
 --disable-postgresql-sdbc
diff --git a/onlineupdate/Executable_test_updater_dialog.mk b/onlineupdate/Executable_test_updater_dialog.mk
index bd144c8bca18..a2988d0079d6 100644
--- a/onlineupdate/Executable_test_updater_dialog.mk
+++ b/onlineupdate/Executable_test_updater_dialog.mk
@@ -15,6 +15,7 @@ $(eval $(call gb_Executable_set_include,test_updater_dialog,\
 	-I$(SRCDIR)/onlineupdate/source/update/updater/xpcom/glue \
 	-I$(SRCDIR)/onlineupdate/source/update/updater \
 	$$(INCLUDE) \
+	$(if $(filter-out WNT,$(OS)),$$(GTK3_CFLAGS) ) \
 ))
 
 $(eval $(call gb_Executable_use_static_libraries,test_updater_dialog,\
@@ -48,15 +49,10 @@ $(eval $(call gb_Executable_add_defs,test_updater_dialog,\
 
 $(eval $(call gb_Executable_use_externals,test_updater_dialog,\
 	nss3 \
-	gtk \
 ))
 
 $(eval $(call gb_Executable_add_libs,test_updater_dialog,\
-	-lX11 \
-	-lXext \
-	-lXrender \
-	-lSM \
-	-lICE \
+	$(GTK3_LIBS) \
 ))
 endif
 
diff --git a/onlineupdate/Executable_updater.mk b/onlineupdate/Executable_updater.mk
index 7c24b7beb3bb..ab15a94e4c60 100644
--- a/onlineupdate/Executable_updater.mk
+++ b/onlineupdate/Executable_updater.mk
@@ -14,6 +14,7 @@ $(eval $(call gb_Executable_set_include,updater,\
 	-I$(SRCDIR)/onlineupdate/source/update/common \
 	-I$(SRCDIR)/onlineupdate/source/update/updater/xpcom/glue \
 	$$(INCLUDE) \
+	$(if $(filter-out WNT,$(OS)),$$(GTK3_CFLAGS) ) \
 ))
 
 $(eval $(call gb_Executable_use_custom_headers,updater,onlineupdate/generated))
@@ -61,16 +62,12 @@ $(eval $(call gb_Executable_add_defs,updater,\
 
 $(eval $(call gb_Executable_use_externals,updater,\
 	nss3 \
-	gtk \
 ))
 
 $(eval $(call gb_Executable_add_libs,updater,\
-	-lX11 \
-	-lXext \
-	-lXrender \
-	-lSM \
-	-lICE \
+	$(GTK3_LIBS) \
 ))
+
 endif
 
 $(eval $(call gb_Executable_add_exception_objects,updater,\
diff --git a/onlineupdate/source/update/updater/progressui_gtk.cxx b/onlineupdate/source/update/updater/progressui_gtk.cxx
index 47d27ea02c17..7c3bcfcd8b2d 100644
--- a/onlineupdate/source/update/updater/progressui_gtk.cxx
+++ b/onlineupdate/source/update/updater/progressui_gtk.cxx
@@ -14,6 +14,11 @@
 #include <string.h>
 #include "progressui_gtk_icon.h"
 
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
+#endif
+
 #define TIMER_INTERVAL 100
 
 static float    sProgressVal;  // between 0 and 100
@@ -133,4 +138,9 @@ UpdateProgressUI(float progress)
 {
     sProgressVal = progress;  // 32-bit writes are atomic
 }
+
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
 #endif  // defined(UNIX) || defined(MACOSX)
diff --git a/scp2/InstallScript_setup_osl.mk b/scp2/InstallScript_setup_osl.mk
index 0c3b97bef6d7..6f7b58204225 100644
--- a/scp2/InstallScript_setup_osl.mk
+++ b/scp2/InstallScript_setup_osl.mk
@@ -33,7 +33,7 @@ $(eval $(call gb_InstallScript_use_modules,setup_osl,\
 	$(if $(WITH_EXTENSION_INTEGRATION),\
 		scp2/extensions \
 	) \
-	$(if $(filter TRUE,$(ENABLE_EVOAB2) $(ENABLE_GIO) $(ENABLE_GTK) $(ENABLE_GTK3)),\
+	$(if $(filter TRUE,$(ENABLE_EVOAB2) $(ENABLE_GIO) $(ENABLE_GTK3)),\
 		scp2/gnome \
 	) \
 	$(if $(filter TRUE,$(ENABLE_QT5) $(ENABLE_KF5) $(ENABLE_GTK3_KDE5)),\
diff --git a/scp2/Module_scp2.mk b/scp2/Module_scp2.mk
index aa06d6301f85..25ae8167df56 100644
--- a/scp2/Module_scp2.mk
+++ b/scp2/Module_scp2.mk
@@ -37,7 +37,7 @@ $(eval $(call gb_Module_add_targets,scp2,\
 		InstallModule_windows \
 		InstallModule_winexplorerext \
 	) \
-	$(if $(filter TRUE,$(ENABLE_EVOAB2) $(ENABLE_GIO) $(ENABLE_GTK) $(ENABLE_GTK3)),\
+	$(if $(filter TRUE,$(ENABLE_EVOAB2) $(ENABLE_GIO) $(ENABLE_GTK3)),\
 		InstallModule_gnome \
 	) \
 	$(if $(filter TRUE,$(ENABLE_QT5) $(ENABLE_KF5) $(ENABLE_GTK3_KDE5)),\
diff --git a/sd/CppunitTest_sd_uimpress.mk b/sd/CppunitTest_sd_uimpress.mk
index 4a36cc687062..94229cc2c8e3 100644
--- a/sd/CppunitTest_sd_uimpress.mk
+++ b/sd/CppunitTest_sd_uimpress.mk
@@ -71,7 +71,6 @@ endif
 
 $(eval $(call gb_CppunitTest_use_externals,sd_uimpress,\
     boost_headers \
-    gtk \
     dbus \
 	$(if $(ENABLE_AVAHI), \
 	    avahi \
diff --git a/solenv/clang-format/blacklist b/solenv/clang-format/blacklist
index c89b6861b7d9..d694f0b3d02b 100644
--- a/solenv/clang-format/blacklist
+++ b/solenv/clang-format/blacklist
@@ -18113,51 +18113,13 @@ vcl/unx/generic/window/salframe.cxx
 vcl/unx/generic/window/salobj.cxx
 vcl/unx/generic/window/screensaverinhibitor.cxx
 vcl/unx/glxtest.cxx
-vcl/unx/gtk/a11y/atkaction.cxx
-vcl/unx/gtk/a11y/atkbridge.cxx
-vcl/unx/gtk/a11y/atkcomponent.cxx
-vcl/unx/gtk/a11y/atkeditabletext.cxx
-vcl/unx/gtk/a11y/atkfactory.cxx
-vcl/unx/gtk/a11y/atkfactory.hxx
-vcl/unx/gtk/a11y/atkhypertext.cxx
-vcl/unx/gtk/a11y/atkimage.cxx
-vcl/unx/gtk/a11y/atklistener.cxx
-vcl/unx/gtk/a11y/atklistener.hxx
-vcl/unx/gtk/a11y/atkregistry.cxx
-vcl/unx/gtk/a11y/atkregistry.hxx
-vcl/unx/gtk/a11y/atkselection.cxx
-vcl/unx/gtk/a11y/atktable.cxx
-vcl/unx/gtk/a11y/atktext.cxx
-vcl/unx/gtk/a11y/atktextattributes.cxx
-vcl/unx/gtk/a11y/atktextattributes.hxx
-vcl/unx/gtk/a11y/atkutil.cxx
-vcl/unx/gtk/a11y/atkutil.hxx
-vcl/unx/gtk/a11y/atkvalue.cxx
-vcl/unx/gtk/a11y/atkwindow.cxx
-vcl/unx/gtk/a11y/atkwindow.hxx
-vcl/unx/gtk/a11y/atkwrapper.cxx
-vcl/unx/gtk/a11y/atkwrapper.hxx
-vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
-vcl/unx/gtk/fpicker/SalGtkFilePicker.hxx
-vcl/unx/gtk/fpicker/SalGtkFolderPicker.cxx
-vcl/unx/gtk/fpicker/SalGtkFolderPicker.hxx
-vcl/unx/gtk/fpicker/SalGtkPicker.cxx
-vcl/unx/gtk/fpicker/SalGtkPicker.hxx
-vcl/unx/gtk/fpicker/eventnotification.hxx
-vcl/unx/gtk/fpicker/resourceprovider.cxx
-vcl/unx/gtk/gloactiongroup.cxx
-vcl/unx/gtk/glomenu.cxx
-vcl/unx/gtk/gtkdata.cxx
-vcl/unx/gtk/gtkinst.cxx
-vcl/unx/gtk/gtkobject.cxx
-vcl/unx/gtk/gtkprintwrapper.cxx
-vcl/unx/gtk/gtksalframe.cxx
-vcl/unx/gtk/gtksalmenu.cxx
-vcl/unx/gtk/gtksys.cxx
-vcl/unx/gtk/hudawareness.cxx
-vcl/unx/gtk/salnativewidgets-gtk.cxx
-vcl/unx/gtk/salprn-gtk.cxx
-vcl/unx/gtk/xid_fullscreen_on_all_monitors.c
+vcl/unx/gtk3/a11y/atkfactory.hxx
+vcl/unx/gtk3/a11y/atklistener.hxx
+vcl/unx/gtk3/a11y/atkregistry.hxx
+vcl/unx/gtk3/a11y/atktextattributes.hxx
+vcl/unx/gtk3/a11y/atkutil.hxx
+vcl/unx/gtk3/a11y/atkwindow.hxx
+vcl/unx/gtk3/a11y/atkwrapper.hxx
 vcl/unx/gtk3/a11y/gtk3atkaction.cxx
 vcl/unx/gtk3/a11y/gtk3atkbridge.cxx
 vcl/unx/gtk3/a11y/gtk3atkcomponent.cxx
@@ -18175,9 +18137,16 @@ vcl/unx/gtk3/a11y/gtk3atkutil.cxx
 vcl/unx/gtk3/a11y/gtk3atkvalue.cxx
 vcl/unx/gtk3/a11y/gtk3atkwindow.cxx
 vcl/unx/gtk3/a11y/gtk3atkwrapper.cxx
+vcl/unx/gtk3/fpicker/SalGtkFilePicker.cxx
+vcl/unx/gtk3/fpicker/SalGtkFilePicker.hxx
+vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx
+vcl/unx/gtk3/fpicker/SalGtkFolderPicker.hxx
+vcl/unx/gtk3/fpicker/SalGtkPicker.cxx
+vcl/unx/gtk3/fpicker/SalGtkPicker.hxx
+vcl/unx/gtk3/fpicker/eventnotification.hxx
+vcl/unx/gtk3/fpicker/resourceprovider.cxx
 vcl/unx/gtk3/cairo_gtk3_cairo.cxx
 vcl/unx/gtk3/cairo_gtk3_cairo.hxx
-vcl/unx/gtk3/gtk3fpicker.cxx
 vcl/unx/gtk3/gtk3gloactiongroup.cxx
 vcl/unx/gtk3/gtk3glomenu.cxx
 vcl/unx/gtk3/gtk3gtkdata.cxx
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 7c5c251eff46..0d40bd6cdb5d 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -224,7 +224,6 @@ ifeq ($(USING_X11),TRUE)
 $(call gb_CppunitTest_get_target,$(1)) : $(call gb_Library_get_target,desktop_detector)
 $(call gb_CppunitTest_get_target,$(1)) : $(if $(filter $(2),$(true)),, \
     $(call gb_Library_get_target,vclplug_gen) \
-        $(if $(ENABLE_GTK),$(call gb_Library_get_target,vclplug_gtk)) \
         $(if $(ENABLE_GTK3),$(call gb_Library_get_target,vclplug_gtk3)) \
         $(if $(ENABLE_QT5),$(call gb_Library_get_target,vclplug_qt5)) \
 	 )
diff --git a/vcl/Executable_xid_fullscreen_on_all_monitors.mk b/vcl/Executable_xid_fullscreen_on_all_monitors.mk
deleted file mode 100644
index 296436abd106..000000000000
--- a/vcl/Executable_xid_fullscreen_on_all_monitors.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Executable_Executable,xid-fullscreen-on-all-monitors))
-
-ifeq ($(filter ANDROID WNT DRAGONFLY FREEBSD NETBSD OPENBSD MACOSX,$(OS)),)
-$(eval $(call gb_Executable_add_libs,xid-fullscreen-on-all-monitors,\
-    -ldl \
-))
-endif
-
-$(eval $(call gb_Executable_add_cobjects,xid-fullscreen-on-all-monitors,\
-    vcl/unx/gtk/xid_fullscreen_on_all_monitors \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/vcl/Library_vclplug_gtk.mk b/vcl/Library_vclplug_gtk.mk
deleted file mode 100644
index 360eabf46020..000000000000
--- a/vcl/Library_vclplug_gtk.mk
+++ /dev/null
@@ -1,132 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This file incorporates work covered by the following license notice:
-#
-#   Licensed to the Apache Software Foundation (ASF) under one or more
-#   contributor license agreements. See the NOTICE file distributed
-#   with this work for additional information regarding copyright
-#   ownership. The ASF licenses this file to you under the Apache
-#   License, Version 2.0 (the "License"); you may not use this file
-#   except in compliance with the License. You may obtain a copy of
-#   the License at http://www.apache.org/licenses/LICENSE-2.0 .
-#
-
-$(eval $(call gb_Library_Library,vclplug_gtk))
-
-$(eval $(call gb_Library_set_include,vclplug_gtk,\
-    $$(INCLUDE) \
-    -I$(SRCDIR)/vcl/inc \
-    -I$(SRCDIR)/vcl/unx \
-    -I$(SRCDIR)/vcl/unx/gtk \
-))
-
-$(eval $(call gb_Library_add_defs,vclplug_gtk,\
-    -DVCLPLUG_GTK_IMPLEMENTATION \
-))
-
-$(eval $(call gb_Library_use_custom_headers,vclplug_gtk,\
-	officecfg/registry \
-))
-
-$(eval $(call gb_Library_use_sdk_api,vclplug_gtk))
-
-$(eval $(call gb_Library_use_libraries,vclplug_gtk,\
-    vclplug_gen \
-    vcl \
-    tl \
-    utl \
-    sot \
-    ucbhelper \
-    basegfx \
-    comphelper \
-    cppuhelper \
-    i18nlangtag \
-    i18nutil \
-    $(if $(ENABLE_JAVA), \
-        jvmaccess) \
-    cppu \
-    sal \
-))
-
-$(eval $(call gb_Library_use_externals,vclplug_gtk,\
-	boost_headers \
-	cairo \
-	dbus \
-	epoxy \
-	gio \
-	graphite \
-	gthread \
-	gtk \
-	harfbuzz \
-	icuuc \
-))
-
-$(eval $(call gb_Library_add_libs,vclplug_gtk,\
-	-lX11 \
-	-lXext \
-	-lSM \
-	-lICE \
-))
-
-$(eval $(call gb_Library_add_exception_objects,vclplug_gtk,\
-    vcl/unx/gtk/a11y/atkaction \
-    vcl/unx/gtk/a11y/atkbridge \
-    vcl/unx/gtk/a11y/atkcomponent \
-    vcl/unx/gtk/a11y/atkeditabletext \
-    vcl/unx/gtk/a11y/atkfactory \
-    vcl/unx/gtk/a11y/atkhypertext \
-    vcl/unx/gtk/a11y/atkimage \
-    vcl/unx/gtk/a11y/atklistener \
-    vcl/unx/gtk/a11y/atkregistry \
-    vcl/unx/gtk/a11y/atkselection \
-    vcl/unx/gtk/a11y/atktable \
-    vcl/unx/gtk/a11y/atktextattributes \
-    vcl/unx/gtk/a11y/atktext \
-    vcl/unx/gtk/a11y/atkutil \
-    vcl/unx/gtk/a11y/atkvalue \
-    vcl/unx/gtk/a11y/atkwindow \
-    vcl/unx/gtk/a11y/atkwrapper \
-    vcl/unx/gtk/gtkdata \
-    vcl/unx/gtk/gtkinst \
-    vcl/unx/gtk/gtksys \
-    vcl/unx/gtk/salnativewidgets-gtk \
-    vcl/unx/gtk/gtksalframe \
-    vcl/unx/gtk/gtkobject \
-    vcl/unx/gtk/fpicker/resourceprovider \
-    vcl/unx/gtk/fpicker/SalGtkPicker \
-    vcl/unx/gtk/fpicker/SalGtkFilePicker \
-    vcl/unx/gtk/fpicker/SalGtkFolderPicker \
-))
-
-ifneq ($(ENABLE_DBUS),)
-ifneq ($(ENABLE_GIO),)
-$(eval $(call gb_Library_add_exception_objects,vclplug_gtk,\
-    vcl/unx/gtk/gloactiongroup \
-    vcl/unx/gtk/gtksalmenu \
-    vcl/unx/gtk/glomenu \
-    vcl/unx/gtk/hudawareness \
-))
-endif
-endif
-
-ifeq ($(ENABLE_GTK_PRINT),TRUE)
-$(eval $(call gb_Library_add_exception_objects,vclplug_gtk,\
-    vcl/unx/gtk/gtkprintwrapper \
-    vcl/unx/gtk/salprn-gtk \
-))
-endif
-
-ifeq ($(OS),LINUX)
-$(eval $(call gb_Library_add_libs,vclplug_gtk,\
-	-lm \
-	-ldl \
-))
-endif
-
-# vim: set noet sw=4 ts=4:
diff --git a/vcl/Library_vclplug_gtk3.mk b/vcl/Library_vclplug_gtk3.mk
index c0ad6cd21e52..9f6504c38f56 100644
--- a/vcl/Library_vclplug_gtk3.mk
+++ b/vcl/Library_vclplug_gtk3.mk
@@ -46,7 +46,6 @@ $(eval $(call gb_Library_use_sdk_api,vclplug_gtk3))
 
 $(eval $(call gb_Library_add_libs,vclplug_gtk3,\
 	$(GTK3_LIBS) \
-	$(GTHREAD_LIBS) \
 	-lX11 \
 	-lXext \
 	-lSM \
@@ -97,10 +96,13 @@ $(eval $(call gb_Library_add_exception_objects,vclplug_gtk3,\
     vcl/unx/gtk3/a11y/gtk3atkvalue \
     vcl/unx/gtk3/a11y/gtk3atkwindow \
     vcl/unx/gtk3/a11y/gtk3atkwrapper \
+    vcl/unx/gtk3/fpicker/resourceprovider \
+    vcl/unx/gtk3/fpicker/SalGtkFilePicker \
+    vcl/unx/gtk3/fpicker/SalGtkFolderPicker \
+    vcl/unx/gtk3/fpicker/SalGtkPicker \
     vcl/unx/gtk3/gtk3gtkdata \
     vcl/unx/gtk3/gtk3gtkinst \
     vcl/unx/gtk3/gtk3gtksys \
-    vcl/unx/gtk3/gtk3fpicker \
     vcl/unx/gtk3/cairo_gtk3_cairo \
     vcl/unx/gtk3/gtk3gtkprintwrapper \
     vcl/unx/gtk3/gtk3salnativewidgets-gtk \
diff --git a/vcl/Library_vclplug_gtk3_kde5.mk b/vcl/Library_vclplug_gtk3_kde5.mk
index d67c53e2a6f5..231726449c4e 100644
--- a/vcl/Library_vclplug_gtk3_kde5.mk
+++ b/vcl/Library_vclplug_gtk3_kde5.mk
@@ -51,7 +51,6 @@ $(eval $(call gb_Library_use_sdk_api,vclplug_gtk3_kde5))
 
 $(eval $(call gb_Library_add_libs,vclplug_gtk3_kde5,\
 	$(GTK3_LIBS) \
-	$(GTHREAD_LIBS) \
 	-lX11 \
 	-lXext \
 	-lSM \
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index 54e3fbd6b07f..859702ca4032 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -66,12 +66,6 @@ $(eval $(call gb_Module_add_targets,vcl,\
     Package_fontunxpsprint \
 ))
 
-ifneq ($(ENABLE_GTK),)
-$(eval $(call gb_Module_add_targets,vcl,\
-    Executable_xid_fullscreen_on_all_monitors \
-    Library_vclplug_gtk \
-))
-endif
 ifneq ($(ENABLE_GTK3),)
 $(eval $(call gb_Module_add_targets,vcl,\
     Library_vclplug_gtk3 \
diff --git a/vcl/inc/unx/gtk/gtkdata.hxx b/vcl/inc/unx/gtk/gtkdata.hxx
index f1750b7dc3a6..84e2d19f6c94 100644
--- a/vcl/inc/unx/gtk/gtkdata.hxx
+++ b/vcl/inc/unx/gtk/gtkdata.hxx
@@ -42,44 +42,22 @@ class DocumentFocusListener;
 
 inline GdkWindow * widget_get_window(GtkWidget *widget)
 {
-#if GTK_CHECK_VERSION(3,0,0)
     return gtk_widget_get_window(widget);
-#else
-    return widget->window;
-#endif
 }
 
 inline ::Window widget_get_xid(GtkWidget *widget)
 {
-#if GTK_CHECK_VERSION(3,0,0)
     return GDK_WINDOW_XID(gtk_widget_get_window(widget));
-#else
-    return GDK_WINDOW_XWINDOW(widget->window);
-#endif
 }
 
 inline void widget_set_can_focus(GtkWidget *widget, gboolean can_focus)
 {
-#if GTK_CHECK_VERSION(3,0,0)
     return gtk_widget_set_can_focus(widget, can_focus);
-#else
-    if (can_focus)
-        GTK_WIDGET_SET_FLAGS( widget, GTK_CAN_FOCUS );
-    else
-        GTK_WIDGET_UNSET_FLAGS( widget, GTK_CAN_FOCUS );
-#endif
 }
 
 inline void widget_set_can_default(GtkWidget *widget, gboolean can_default)
 {
-#if GTK_CHECK_VERSION(3,0,0)
     return gtk_widget_set_can_default(widget, can_default);
-#else
-    if (can_default)
-        GTK_WIDGET_SET_FLAGS( widget, GTK_CAN_DEFAULT );
-    else
-        GTK_WIDGET_UNSET_FLAGS( widget, GTK_CAN_DEFAULT );
-#endif
 }
 
 class GtkSalTimer final : public SalTimer
@@ -132,11 +110,7 @@ public:
 
 class GtkSalFrame;
 
-#if GTK_CHECK_VERSION(3,0,0)
 class GtkSalDisplay : public SalGenericDisplay
-#else
-class GtkSalDisplay : public SalDisplay
-#endif
 {
     GtkSalSystem*                   m_pSys;
     GdkDisplay* const               m_pGdkDisplay;
@@ -161,20 +135,11 @@ public:
 
     virtual void deregisterFrame( SalFrame* pFrame ) override;
     GdkCursor *getCursor( PointerStyle ePointerStyle );
-#if GTK_CHECK_VERSION(3,0,0)
     virtual int CaptureMouse( SalFrame* pFrame );
-#else
-    virtual int CaptureMouse( SalFrame* pFrame ) override;
-#endif
 
     SalX11Screen GetDefaultXScreen() { return m_pSys->GetDisplayDefaultXScreen(); }
     Size         GetScreenSize( int nDisplayScreen );
     int          GetXScreenCount() { return m_pSys->GetDisplayXScreenCount(); }
-#if GTK_CHECK_VERSION(3,0,0)
-//    int          GetScreenCount() { return m_pSys->GetDisplayScreenCount(); }
-#else
-    virtual ScreenData *initScreen( SalX11Screen nXScreen ) const override;
-#endif
 
     GdkFilterReturn filterGdkEvent( GdkXEvent* sys_event );
     void startupNotificationCompleted() { m_bStartupCompleted = true; }
@@ -185,12 +150,7 @@ public:
     virtual void TriggerUserEventProcessing() override;
     virtual void TriggerAllUserEventsProcessed() override;
 
-#if !GTK_CHECK_VERSION(3,0,0)
-    virtual bool Dispatch( XEvent *pEvent ) override;
-#endif
-#if GTK_CHECK_VERSION(3,0,0)
     void RefreshMenusUnity();
-#endif
 };
 
 inline GtkSalData* GetGtkSalData()
diff --git a/vcl/inc/unx/gtk/gtkframe.hxx b/vcl/inc/unx/gtk/gtkframe.hxx
index 084339f96d70..f9a41c6c3cf6 100644
--- a/vcl/inc/unx/gtk/gtkframe.hxx
+++ b/vcl/inc/unx/gtk/gtkframe.hxx
@@ -24,9 +24,7 @@
 #include <gdk/gdk.h>
 #include <gdk/gdkx.h>
 #include <gtk/gtk.h>
-#if GTK_CHECK_VERSION(3,0,0)
-#  include <gtk/gtkx.h>
-#endif
+#include <gtk/gtkx.h>
 #include <gdk/gdkkeysyms.h>
 
 #include <salframe.hxx>
@@ -54,7 +52,6 @@
 class GtkSalGraphics;
 class GtkSalDisplay;
 
-#if GTK_CHECK_VERSION(3,0,0)
 typedef sal_uIntPtr GdkNativeWindow;
 #define GDK_WINDOW_XWINDOW(o) GDK_WINDOW_XID(o)
 #define gdk_set_sm_client_id(i) gdk_x11_set_sm_client_id(i)
@@ -62,11 +59,6 @@ typedef sal_uIntPtr GdkNativeWindow;
 class GtkDropTarget;
 class GtkDragSource;
 class GtkDnDTransferable;
-#endif
-
-#if !(GLIB_MAJOR_VERSION > 2 || GLIB_MINOR_VERSION >= 26)
-    typedef void GDBusConnection;
-#endif
 
 class GtkSalMenu;
 
@@ -172,10 +164,8 @@ class GtkSalFrame : public SalFrame
 
     SalX11Screen                    m_nXScreen;
     GtkWidget*                      m_pWindow;
-#if GTK_CHECK_VERSION(3,0,0)
     GtkHeaderBar*                   m_pHeaderBar;
     GtkGrid*                        m_pTopLevelGrid;
-#endif
     GtkEventBox*                    m_pEventBox;
     GtkFixed*                       m_pFixedContainer;
     GdkWindow*                      m_pForeignParent;
@@ -208,7 +198,6 @@ class GtkSalFrame : public SalFrame
     Size                            m_aMinSize;
     tools::Rectangle                       m_aRestorePosSize;
 
-#if GTK_CHECK_VERSION(3,0,0)
     OUString                        m_aTooltip;
     tools::Rectangle                m_aHelpArea;
     tools::Rectangle                m_aFloatRect;
@@ -220,10 +209,6 @@ class GtkSalFrame : public SalFrame
     GtkDropTarget*                  m_pDropTarget;
     GtkDragSource*                  m_pDragSource;
     bool                            m_bGeometryIsProvisional;
-#else
-    GdkRegion*                      m_pRegion;
-    bool                            m_bSetFocusOnMap;
-#endif
 
     GtkSalMenu*                     m_pSalMenu;
 
@@ -242,12 +227,7 @@ class GtkSalFrame : public SalFrame
 
     // signals
     static gboolean     signalButton( GtkWidget*, GdkEventButton*, gpointer );
-#if GTK_CHECK_VERSION(3,0,0)
     static void         signalStyleUpdated(GtkWidget*, gpointer);
-#else
-    static void         signalStyleSet(GtkWidget*, GtkStyle* pPrevious, gpointer);
-#endif
-#if GTK_CHECK_VERSION(3,0,0)
     static gboolean     signalDraw( GtkWidget*, cairo_t *cr, gpointer );
     static void         signalRealize(GtkWidget*, gpointer frame);
     static void         sizeAllocated(GtkWidget*, GdkRectangle *pAllocation, gpointer frame);
@@ -270,11 +250,6 @@ class GtkSalFrame : public SalFrame
 
     static void         gestureSwipe(GtkGestureSwipe* gesture, gdouble velocity_x, gdouble velocity_y, gpointer frame);
     static void         gestureLongPress(GtkGestureLongPress* gesture, gdouble x, gdouble y, gpointer frame);
-#else
-    static gboolean     signalExpose( GtkWidget*, GdkEventExpose*, gpointer );
-    void askForXEmbedFocus( sal_Int32 nTimecode );
-    void grabKeyboard(bool bGrab);
-#endif
     static gboolean     signalFocus( GtkWidget*, GdkEventFocus*, gpointer );
     static gboolean     signalMap( GtkWidget*, GdkEvent*, gpointer );
     static gboolean     signalUnmap( GtkWidget*, GdkEvent*, gpointer );
@@ -345,7 +320,6 @@ class GtkSalFrame : public SalFrame
     void SetScreen( unsigned int nNewScreen, SetType eType, tools::Rectangle const *pSize = nullptr );
 
 public:
-#if GTK_CHECK_VERSION(3,0,0)
     cairo_surface_t*                m_pSurface;
     basegfx::B2IVector              m_aFrameSize;
     DamageHandler                   m_aDamageHandler;
@@ -353,7 +327,6 @@ public:
     Idle                            m_aSmoothScrollIdle;
     int                             m_nGrabLevel;
     bool                            m_bSalObjectSetPosSize;
-#endif
     GtkSalFrame( SalFrame* pParent, SalFrameStyleFlags nStyle );
     GtkSalFrame( SystemParentData* pSysData );
 
@@ -374,9 +347,7 @@ public:
     GtkFixed*   getFixedContainer() const { return m_pFixedContainer; }
     GtkEventBox* getEventBox() const { return m_pEventBox; }
     GtkWidget*  getMouseEventWidget() const;
-#if GTK_CHECK_VERSION(3,0,0)
     GtkGrid*    getTopLevelGridWidget() const { return m_pTopLevelGrid; }
-#endif
     GdkWindow*  getForeignParent() const { return m_pForeignParent; }
     GdkNativeWindow getForeignParentWindow() const { return m_aForeignParentWindow; }
     GdkWindow*  getForeignTopLevel() const { return m_pForeignTopLevel; }
@@ -385,8 +356,6 @@ public:
     int          GetDisplayScreen() const { return maGeometry.nDisplayScreenNumber; }
     void updateScreenNumber();
 
-#if GTK_CHECK_VERSION(3,0,0)
-    // only for gtk3 ...
     cairo_t* getCairoContext() const;
     void damaged(sal_Int32 nExtentsLeft, sal_Int32 nExtentsTop,
                  sal_Int32 nExtentsRight, sal_Int32 nExtentsBottom) const;
@@ -428,7 +397,6 @@ public:
     void LaunchAsyncScroll(GdkEvent const * pEvent);
     DECL_LINK(AsyncScroll, Timer *, void);
 
-#endif
     virtual ~GtkSalFrame() override;
 
     // SalGraphics or NULL, but two Graphics for all SalFrames
@@ -525,7 +493,6 @@ public:
     // done setting up the clipregion
     virtual void                EndSetClipRegion() override;
 
-#if GTK_CHECK_VERSION(3,0,0)
     virtual void                PositionByToolkit(const tools::Rectangle& rRect, FloatWinPopupFlags nFlags) override;
     virtual void                SetModal(bool bModal) override;
     virtual bool                GetModal() const override;
@@ -535,7 +502,6 @@ public:
     virtual bool                UpdatePopover(void* nId, const OUString& rHelpText, vcl::Window* pParent, const tools::Rectangle& rHelpArea) override;
     virtual bool                HidePopover(void* nId) override;
     virtual weld::Window*       GetFrameWeld() const override;
-#endif
 
     static GtkSalFrame         *getFromWindow( GtkWindow *pWindow );
 
diff --git a/vcl/inc/unx/gtk/gtkgdi.hxx b/vcl/inc/unx/gtk/gtkgdi.hxx
index c9b7be49f13e..e19d01205e49 100644
--- a/vcl/inc/unx/gtk/gtkgdi.hxx
+++ b/vcl/inc/unx/gtk/gtkgdi.hxx
@@ -29,8 +29,6 @@
 #include <unx/gtk/gtkframe.hxx>
 #include <ControlCacheKey.hxx>
 
-#if GTK_CHECK_VERSION(3,0,0)
-
 #include <headless/svpgdi.hxx>
 #include <textrender.hxx>
 
@@ -394,8 +392,6 @@ protected:
                             ControlState nState, const ImplControlValue& aValue );
 };
 
-#endif // !gtk3
-
 #endif // INCLUDED_VCL_INC_UNX_GTK_GTKGDI_HXX
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/inc/unx/gtk/gtkinst.hxx b/vcl/inc/unx/gtk/gtkinst.hxx
index 65caa384c0ae..78dd9bc6e8b9 100644
--- a/vcl/inc/unx/gtk/gtkinst.hxx
+++ b/vcl/inc/unx/gtk/gtkinst.hxx
@@ -57,7 +57,6 @@ public:
     void ThreadsLeave();
 };
 
-#if GTK_CHECK_VERSION(3,0,0)
 class GtkSalFrame;
 
 struct VclToGtkHelper
@@ -182,20 +181,10 @@ public:
     css::uno::Reference<css::datatransfer::XTransferable> const & GetTransferrable() const { return m_xTrans; }
 };
 
-#endif
-
 class GtkSalTimer;
-#if GTK_CHECK_VERSION(3,0,0)
 class GtkInstance : public SvpSalInstance
-#else
-class GtkInstance : public X11SalInstance
-#endif
 {
-#if GTK_CHECK_VERSION(3,0,0)
     typedef SvpSalInstance Superclass_t;
-#else
-    typedef X11SalInstance Superclass_t;
-#endif
 public:
             GtkInstance( std::unique_ptr<SalYieldMutex> pMutex );
     virtual ~GtkInstance() override;
@@ -233,7 +222,6 @@ public:
     virtual css::uno::Reference< css::ui::dialogs::XFolderPicker2 >
         createFolderPicker( const css::uno::Reference< css::uno::XComponentContext >& ) override;
 
-#if GTK_CHECK_VERSION(3,0,0)
     virtual css::uno::Reference< css::uno::XInterface > CreateClipboard( const css::uno::Sequence< css::uno::Any >& i_rArguments ) override;
     virtual css::uno::Reference< css::uno::XInterface > CreateDragSource() override;
     virtual css::uno::Reference< css::uno::XInterface > CreateDropTarget() override;
@@ -241,7 +229,6 @@ public:
     virtual weld::Builder* CreateBuilder(weld::Widget* pParent, const OUString& rUIRoot, const OUString& rUIFile) override;
     virtual weld::MessageDialog* CreateMessageDialog(weld::Widget* pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage) override;
     virtual weld::Window* GetFrameWeld(const css::uno::Reference<css::awt::XWindow>& rWindow) override;
-#endif
 
     virtual const cairo_font_options_t* GetCairoFontOptions() override;
             const cairo_font_options_t* GetLastSeenCairoFontOptions() const;
@@ -251,15 +238,11 @@ public:
 
     std::shared_ptr<vcl::unx::GtkPrintWrapper> const & getPrintWrapper() const;
 
-#if GTK_CHECK_VERSION(3,0,0)
     void* CreateGStreamerSink(const SystemChildWindow*) override;
-#endif
 
 private:
     GtkSalTimer *m_pTimer;
-#if GTK_CHECK_VERSION(3,0,0)
     std::unordered_map< GdkAtom, css::uno::Reference<css::uno::XInterface> > m_aClipboards;
-#endif
     bool                        IsTimerExpired();
     bool                        bNeedsInit;
     cairo_font_options_t*       m_pLastCairoFontOptions;
diff --git a/vcl/inc/unx/gtk/gtkobject.hxx b/vcl/inc/unx/gtk/gtkobject.hxx
index 4523e9998abd..f54d7af3f04c 100644
--- a/vcl/inc/unx/gtk/gtkobject.hxx
+++ b/vcl/inc/unx/gtk/gtkobject.hxx
@@ -29,12 +29,8 @@ class GtkSalObject : public SalObject
 {
     SystemEnvData     m_aSystemData;
     GtkWidget*          m_pSocket;
-#if GTK_CHECK_VERSION(3,0,0)
     GtkSalFrame*        m_pParent;
     cairo_region_t*     m_pRegion;
-#else
-    GdkRegion*          m_pRegion;
-#endif
 
     // signals
     static gboolean     signalButton( GtkWidget*, GdkEventButton*, gpointer );
diff --git a/vcl/inc/unx/gtk/gtkprintwrapper.hxx b/vcl/inc/unx/gtk/gtkprintwrapper.hxx
index 4862c8cc2fbc..589c800d77d1 100644
--- a/vcl/inc/unx/gtk/gtkprintwrapper.hxx
+++ b/vcl/inc/unx/gtk/gtkprintwrapper.hxx
@@ -12,14 +12,11 @@
 
 #include <gtk/gtk.h>
 
-#if defined ENABLE_GTK_PRINT || GTK_CHECK_VERSION(3,0,0)
 #include <gtk/gtkunixprint.h>
 
 #include <osl/module.hxx>
 #include <sal/types.h>
 
-#endif
-
 namespace vcl
 {
 namespace unx
@@ -30,7 +27,6 @@ class GtkPrintWrapper
 private:
     GtkPrintWrapper(const GtkPrintWrapper&) = delete;
     GtkPrintWrapper& operator=(const GtkPrintWrapper&) = delete;
-#if defined ENABLE_GTK_PRINT || GTK_CHECK_VERSION(3,0,0)
 public:
     GtkPrintWrapper();
     ~GtkPrintWrapper();
@@ -63,59 +59,6 @@ public:
     // print selection support, since 2.17.4
     void print_unix_dialog_set_support_selection(GtkPrintUnixDialog* dialog, gboolean support_selection) const;
     void print_unix_dialog_set_has_selection(GtkPrintUnixDialog* dialog, gboolean has_selection) const;
-
-#if !GTK_CHECK_VERSION(3,0,0)
-private:
-    void impl_load();
-
-private:
-    typedef GtkPageSetup* (* page_setup_new_t)();
-    typedef GtkPrintJob* (* print_job_new_t)(const gchar*, GtkPrinter*, GtkPrintSettings*, GtkPageSetup*);
-    typedef void (* print_job_send_t)(GtkPrintJob*, GtkPrintJobCompleteFunc, gpointer, GDestroyNotify);
-    typedef gboolean (* print_job_set_source_file_t)(GtkPrintJob*, const gchar*, GError**);
-    typedef const gchar* (* print_settings_get_t)(GtkPrintSettings*, const gchar*);
-    typedef gboolean (* print_settings_get_collate_t)(GtkPrintSettings*);
-    typedef void (* print_settings_set_collate_t)(GtkPrintSettings*, gboolean);
-    typedef gint (* print_settings_get_n_copies_t)(GtkPrintSettings*);
-    typedef void (* print_settings_set_n_copies_t)(GtkPrintSettings*, gint);
-    typedef GtkPageRange* (* print_settings_get_page_ranges_t)(GtkPrintSettings*, gint*);
-    typedef void (* print_settings_set_print_pages_t)(GtkPrintSettings*, GtkPrintPages);
-    typedef GtkWidget* (* print_unix_dialog_new_t)(const gchar*, GtkWindow*);
-    typedef void (* print_unix_dialog_add_custom_tab_t)(GtkPrintUnixDialog*, GtkWidget*, GtkWidget*);
-    typedef GtkPrinter* (* print_unix_dialog_get_selected_printer_t)(GtkPrintUnixDialog*);
-    typedef void (* print_unix_dialog_set_manual_capabilities_t)(GtkPrintUnixDialog*, GtkPrintCapabilities);
-    typedef GtkPrintSettings* (* print_unix_dialog_get_settings_t)(GtkPrintUnixDialog*);
-    typedef void (* print_unix_dialog_set_settings_t)(GtkPrintUnixDialog*, GtkPrintSettings*);
-    typedef void (* print_unix_dialog_set_support_selection_t)(GtkPrintUnixDialog*, gboolean);
-    typedef void (* print_unix_dialog_set_has_selection_t)(GtkPrintUnixDialog*, gboolean);
-
-private:
-    osl::Module m_aModule;
-
-    // general printing support, since 2.10.0
-    page_setup_new_t m_page_setup_new;
-    print_job_new_t m_print_job_new;
-    print_job_send_t m_print_job_send;
-    print_job_set_source_file_t m_print_job_set_source_file;
-    print_settings_get_t m_print_settings_get;
-    print_settings_get_collate_t m_print_settings_get_collate;
-    print_settings_set_collate_t m_print_settings_set_collate;
-    print_settings_get_n_copies_t m_print_settings_get_n_copies;
-    print_settings_set_n_copies_t m_print_settings_set_n_copies;
-    print_settings_get_page_ranges_t m_print_settings_get_page_ranges;
-    print_settings_set_print_pages_t m_print_settings_set_print_pages;
-    print_unix_dialog_new_t m_print_unix_dialog_new;
-    print_unix_dialog_add_custom_tab_t m_print_unix_dialog_add_custom_tab;
-    print_unix_dialog_get_selected_printer_t m_print_unix_dialog_get_selected_printer;
-    print_unix_dialog_set_manual_capabilities_t m_print_unix_dialog_set_manual_capabilities;
-    print_unix_dialog_get_settings_t m_print_unix_dialog_get_settings;
-    print_unix_dialog_set_settings_t m_print_unix_dialog_set_settings;
-
-    // print selection support, since 2.17.4
-    print_unix_dialog_set_support_selection_t m_print_unix_dialog_set_support_selection;
-    print_unix_dialog_set_has_selection_t m_print_unix_dialog_set_has_selection;
-#endif
-#endif
 };
 
 }
diff --git a/vcl/inc/unx/gtk/gtksalmenu.hxx b/vcl/inc/unx/gtk/gtksalmenu.hxx
index 2d812cad3962..ddef9ef42310 100644
--- a/vcl/inc/unx/gtk/gtksalmenu.hxx
+++ b/vcl/inc/unx/gtk/gtksalmenu.hxx
@@ -23,27 +23,8 @@
 #include <unotools/tempfile.hxx>
 #include <vcl/idle.hxx>
 
-#if GTK_CHECK_VERSION(3,0,0)
-#  define ENABLE_GMENU_INTEGRATION
-#  include <unx/gtk/glomenu.h>
-#  include <unx/gtk/gloactiongroup.h>
-#elif ENABLE_DBUS && ENABLE_GIO && \
-    (GLIB_MAJOR_VERSION > 2 || GLIB_MINOR_VERSION >= 36)
-#  define ENABLE_GMENU_INTEGRATION
-#  include <unx/gtk/glomenu.h>
-#  include <unx/gtk/gloactiongroup.h>
-#else
-#  if !(GLIB_MAJOR_VERSION > 2 || GLIB_MINOR_VERSION >= 32)
-     typedef void GMenuModel;
-#  endif
-#  if !(GLIB_MAJOR_VERSION > 2 || GLIB_MINOR_VERSION >= 28)
-     typedef void GActionGroup;
-#  endif
-#endif
-
-#if !GTK_CHECK_VERSION(3,0,0)
-typedef void GtkCssProvider;
-#endif
+#include <unx/gtk/glomenu.h>
+#include <unx/gtk/gloactiongroup.h>
 
 class MenuItemList;
 class GtkSalMenuItem;
diff --git a/vcl/source/app/salplug.cxx b/vcl/source/app/salplug.cxx
index 20604edb7f46..ce3fb551d6af 100644
--- a/vcl/source/app/salplug.cxx
+++ b/vcl/source/app/salplug.cxx
@@ -95,7 +95,7 @@ SalInstance* tryInstance( const OUString& rModuleBase, bool bForce = false )
                  * So make sure libgtk+ & co are still mapped into memory when
                  * atk-bridge's atexit handler gets called.
                  */
-                if( aUsedModuleBase == "gtk" || aUsedModuleBase == "gtk3" || aUsedModuleBase == "gtk3_kde5" || aUsedModuleBase == "win" )
+                if( aUsedModuleBase == "gtk3" || aUsedModuleBase == "gtk3_kde5" || aUsedModuleBase == "win" )
                 {
                     pCloseModule = nullptr;
                 }
@@ -154,12 +154,12 @@ SalInstance* autodetect_plugin()
 #if ENABLE_GTK3_KDE5
         "gtk3_kde5",
 #endif
-        "gtk3", "gtk", "gen", nullptr
+        "gtk3", "gen", nullptr
     };
 
     static const char* const pStandardFallbackList[] =
     {
-        "gtk3", "gtk", "gen", nullptr
+        "gtk3", "gen", nullptr
     };
 
 #ifdef HEADLESS_VCLPLUG
@@ -259,7 +259,7 @@ SalInstance *CreateSalInstance()
 #ifdef MACOSX
         "osx"
 #else
-        "gtk3", "gtk", "kf5", "gen"
+        "gtk3", "kf5", "gen"
 #endif
 #endif
      };
diff --git a/vcl/unx/gtk/a11y/atkaction.cxx b/vcl/unx/gtk/a11y/atkaction.cxx
deleted file mode 100644
index 14a172fe6ae3..000000000000
--- a/vcl/unx/gtk/a11y/atkaction.cxx
+++ /dev/null
@@ -1,275 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "atkwrapper.hxx"
-
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleKeyBinding.hpp>
-
-#include <com/sun/star/awt/Key.hpp>
-#include <com/sun/star/awt/KeyModifier.hpp>
-
-#include <rtl/strbuf.hxx>
-#include <algorithm>
-#include <map>
-
-using namespace ::com::sun::star;
-
-// FIXME
-static const gchar *
-getAsConst( const OString& rString )
-{
-    static const int nMax = 10;
-    static OString aUgly[nMax];
-    static int nIdx = 0;
-    nIdx = (nIdx + 1) % nMax;
-    aUgly[nIdx] = rString;
-    return aUgly[ nIdx ].getStr();
-}
-
-/// @throws uno::RuntimeException
-static css::uno::Reference<css::accessibility::XAccessibleAction>
-        getAction( AtkAction *action )
-{
-    AtkObjectWrapper *pWrap = ATK_OBJECT_WRAPPER( action );
-
-    if( pWrap )
-    {
-        if( !pWrap->mpAction.is() )
-        {
-            pWrap->mpAction.set(pWrap->mpContext, css::uno::UNO_QUERY);
-        }
-
-        return pWrap->mpAction;
-    }
-
-    return css::uno::Reference<css::accessibility::XAccessibleAction>();
-}
-
-extern "C" {
-
-static gboolean
-action_wrapper_do_action (AtkAction *action,
-                          gint       i)
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleAction> pAction
-            = getAction( action );
-        if( pAction.is() )
-            return pAction->doAccessibleAction( i );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in doAccessibleAction()" );
-    }
-
-    return FALSE;
-}
-
-static gint
-action_wrapper_get_n_actions (AtkAction *action)
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleAction> pAction
-            = getAction( action );
-        if( pAction.is() )
-            return pAction->getAccessibleActionCount();
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in getAccessibleActionCount()" );
-    }
-
-    return 0;
-}
-
-static const gchar *
-action_wrapper_get_description (AtkAction *, gint)
-{
-    // GAIL implement this only for cells
-    g_warning( "Not implemented: get_description()" );
-    return "";
-}
-
-static const gchar *
-action_wrapper_get_localized_name (AtkAction *, gint)
-{
-    // GAIL doesn't implement this as well
-    g_warning( "Not implemented: get_localized_name()" );
-    return "";
-}
-
-#define ACTION_NAME_PAIR( OOoName, AtkName ) \
-    std::pair< const OUString, const gchar * > ( OUString( OOoName ), AtkName )
-
-static const gchar *
-action_wrapper_get_name (AtkAction *action,
-                         gint       i)
-{
-    static std::map< OUString, const gchar * > aNameMap;
-
-    if( aNameMap.empty() )
-    {
-        aNameMap.insert( ACTION_NAME_PAIR( "click", "click" ) );
-        aNameMap.insert( ACTION_NAME_PAIR( "select", "click" ) );
-        aNameMap.insert( ACTION_NAME_PAIR( "togglePopup", "push" ) );
-    }
-
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleAction> pAction
-            = getAction( action );
-        if( pAction.is() )
-        {
-            std::map< OUString, const gchar * >::iterator iter;
-
-            OUString aDesc( pAction->getAccessibleActionDescription( i ) );
-
-            iter = aNameMap.find( aDesc );
-            if( iter != aNameMap.end() )
-                return iter->second;
-
-            std::pair< const OUString, const gchar * > aNewVal( aDesc,
-                g_strdup( OUStringToConstGChar(aDesc) ) );
-
-            if( aNameMap.insert( aNewVal ).second )
-                return aNewVal.second;
-        }
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in getAccessibleActionDescription()" );
-    }
-
-    return "";
-}
-
-/*
-*  GNOME Expects a string in the format:
-*
-*  <mnemonic>;<full-path>;<accelerator>
-*
-*  The keybindings in <full-path> should be separated by ":"
-*/
-
-static void
-appendKeyStrokes(OStringBuffer& rBuffer, const uno::Sequence< awt::KeyStroke >& rKeyStrokes)
-{
-    for( const auto& rKeyStroke : rKeyStrokes )
-    {
-        if( rKeyStroke.Modifiers &  awt::KeyModifier::SHIFT )
-            rBuffer.append("<Shift>");
-        if( rKeyStroke.Modifiers &  awt::KeyModifier::MOD1 )
-            rBuffer.append("<Control>");
-        if( rKeyStroke.Modifiers &  awt::KeyModifier::MOD2 )
-            rBuffer.append("<Alt>");
-
-        if( ( rKeyStroke.KeyCode >= awt::Key::A ) && ( rKeyStroke.KeyCode <= awt::Key::Z ) )
-            rBuffer.append( static_cast<sal_Char>( 'a' + ( rKeyStroke.KeyCode - awt::Key::A ) ) );
-        else
-        {
-            sal_Char c = '\0';
-
-            switch( rKeyStroke.KeyCode )
-            {
-                case awt::Key::TAB:      c = '\t'; break;
-                case awt::Key::SPACE:    c = ' '; break;
-                case awt::Key::ADD:      c = '+'; break;
-                case awt::Key::SUBTRACT: c = '-'; break;
-                case awt::Key::MULTIPLY: c = '*'; break;
-                case awt::Key::DIVIDE:   c = '/'; break;
-                case awt::Key::POINT:    c = '.'; break;
-                case awt::Key::COMMA:    c = ','; break;
-                case awt::Key::LESS:     c = '<'; break;
-                case awt::Key::GREATER:  c = '>'; break;
-                case awt::Key::EQUAL:    c = '='; break;
-                case 0:
-                    break;
-                default:
-                    g_warning( "Unmapped KeyCode: %d", rKeyStroke.KeyCode );
-                    break;
-            }
-
-            if( c != '\0' )
-                rBuffer.append( c );
-            else
-            {
-                // The KeyCode approach did not work, probably a non ascii character
-                // let's hope that there is a character given in KeyChar.
-                rBuffer.append( OUStringToGChar( OUString( rKeyStroke.KeyChar ) ) );
-            }
-        }
-    }
-}
-
-static const gchar *
-action_wrapper_get_keybinding (AtkAction *action,
-                               gint       i)
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleAction> pAction
-            = getAction( action );
-        if( pAction.is() )
-        {
-            uno::Reference< accessibility::XAccessibleKeyBinding > xBinding( pAction->getAccessibleActionKeyBinding( i ));
-
-            if( xBinding.is() )
-            {
-                OStringBuffer aRet;
-
-                sal_Int32 nmax = std::min( xBinding->getAccessibleKeyBindingCount(), sal_Int32(3) );
-                for( sal_Int32 n = 0; n < nmax; n++ )
-                {
-                    appendKeyStrokes( aRet,  xBinding->getAccessibleKeyBinding( n ) );
-
-                    if( n < 2 )
-                        aRet.append( ';' );
-                }
-
-                // !! FIXME !! remember keystroke in wrapper object ?
-                return getAsConst( aRet.makeStringAndClear() );
-            }
-        }
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in get_keybinding()" );
-    }
-
-    return "";
-}
-
-static gboolean
-action_wrapper_set_description (AtkAction *, gint, const gchar *)
-{
-    return FALSE;
-}
-
-} // extern "C"
-
-void
-actionIfaceInit (AtkActionIface *iface)
-{
-  g_return_if_fail (iface != nullptr);
-
-  iface->do_action = action_wrapper_do_action;
-  iface->get_n_actions = action_wrapper_get_n_actions;
-  iface->get_description = action_wrapper_get_description;
-  iface->get_keybinding = action_wrapper_get_keybinding;
-  iface->get_name = action_wrapper_get_name;
-  iface->get_localized_name = action_wrapper_get_localized_name;
-  iface->set_description = action_wrapper_set_description;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/a11y/atkbridge.cxx b/vcl/unx/gtk/a11y/atkbridge.cxx
deleted file mode 100644
index a74f1a91885f..000000000000
--- a/vcl/unx/gtk/a11y/atkbridge.cxx
+++ /dev/null
@@ -1,72 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <unx/gtk/atkbridge.hxx>
-#include <unx/gtk/gtkframe.hxx>
-
-#include "atkfactory.hxx"
-#include "atkutil.hxx"
-#include "atkwindow.hxx"
-
-bool InitAtkBridge()
-{
-#if GTK_CHECK_VERSION(3,0,0)
-    ooo_atk_util_ensure_event_listener();
-#else
-    const char* pVersion = atk_get_toolkit_version();
-    if( ! pVersion )
-        return false;
-
-    unsigned int major, minor, micro;
-
-    /* check gail minimum version requirements */
-    if( sscanf( pVersion, "%u.%u.%u", &major, &minor, &micro) < 3 )
-    {
-        // g_warning( "unable to parse gail version number" );
-        return false;
-    }
-
-    if( ( (major << 16) | (minor << 8) | micro ) < ( (1 << 16) | 8 << 8 | 6 ) )
-    {
-        g_warning( "libgail >= 1.8.6 required for accessibility support" );
-        return false;
-    }
-
-    /* Initialize the AtkUtilityWrapper class */
-    g_type_class_unref( g_type_class_ref( ooo_atk_util_get_type() ) );
-
-    /* Initialize the GailWindow wrapper class */
-    g_type_class_unref( g_type_class_ref( ooo_window_wrapper_get_type() ) );
-
-    /* Register AtkObject wrapper factory */
-    AtkRegistry * registry = atk_get_default_registry();
-    if( registry )
-        atk_registry_set_factory_type( registry, OOO_TYPE_FIXED, wrapper_factory_get_type() );
-#endif
-    return true;
-}
-
-void DeInitAtkBridge()
-{
-#if !GTK_CHECK_VERSION(3,0,0)
-    restore_gail_window_vtable();
-#endif
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/a11y/atkcomponent.cxx b/vcl/unx/gtk/a11y/atkcomponent.cxx
deleted file mode 100644
index da5a48eca1f2..000000000000
--- a/vcl/unx/gtk/a11y/atkcomponent.cxx
+++ /dev/null
@@ -1,387 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "atkwrapper.hxx"
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <gtk/gtk.h>
-
-using namespace ::com::sun::star;
-
-static AtkObjectWrapper* getObjectWrapper(AtkComponent *pComponent)
-{
-    AtkObjectWrapper *pWrap = nullptr;
-    if (ATK_IS_OBJECT_WRAPPER(pComponent))
-        pWrap = ATK_OBJECT_WRAPPER(pComponent);
-    else if (GTK_IS_DRAWING_AREA(pComponent)) //when using a GtkDrawingArea as a custom widget in welded gtk3
-    {
-        GtkWidget* pDrawingArea = GTK_WIDGET(pComponent);
-        AtkObject* pAtkObject = gtk_widget_get_accessible(pDrawingArea);
-        pWrap = ATK_IS_OBJECT_WRAPPER(pAtkObject) ? ATK_OBJECT_WRAPPER(pAtkObject) : nullptr;
-    }
-    return pWrap;
-}
-
-/// @throws uno::RuntimeException
-static css::uno::Reference<css::accessibility::XAccessibleComponent>
-    getComponent(AtkObjectWrapper *pWrap)
-{
-    if (pWrap)
-    {
-        if (!pWrap->mpComponent.is())
-            pWrap->mpComponent.set(pWrap->mpContext, css::uno::UNO_QUERY);
-        return pWrap->mpComponent;
-    }
-
-    return css::uno::Reference<css::accessibility::XAccessibleComponent>();
-}
-
-/*****************************************************************************/
-
-static awt::Point
-translatePoint( css::uno::Reference<accessibility::XAccessibleComponent> const & pComponent,
-                gint x, gint y, AtkCoordType t)
-{
-    awt::Point aOrigin( 0, 0 );
-    if( t == ATK_XY_SCREEN )
-        aOrigin = pComponent->getLocationOnScreen();
-    return awt::Point( x - aOrigin.X, y - aOrigin.Y );
-}
-
-/*****************************************************************************/
-
-extern "C" {
-
-static gboolean
-component_wrapper_grab_focus (AtkComponent *component)
-{
-    AtkObjectWrapper* obj = getObjectWrapper(component);
-    //if we're a native GtkDrawingArea with custom a11y, use the default toolkit a11y
-    if (obj && obj->mpOrig)
-        return atk_component_grab_focus(ATK_COMPONENT(obj->mpOrig));
-
-    try
-    {
-        css::uno::Reference<css::accessibility::XAccessibleComponent> pComponent
-            = getComponent(obj);
-        if( pComponent.is() )
-        {
-            pComponent->grabFocus();
-            return TRUE;
-        }
-    }
-    catch( const uno::Exception & )
-    {
-        g_warning( "Exception in grabFocus()" );
-    }
-
-    return FALSE;
-}
-
-/*****************************************************************************/
-
-static gboolean
-component_wrapper_contains (AtkComponent *component,
-                            gint          x,
-                            gint          y,
-                            AtkCoordType  coord_type)
-{
-    AtkObjectWrapper* obj = getObjectWrapper(component);
-    //if we're a native GtkDrawingArea with custom a11y, use the default toolkit a11y
-    if (obj && obj->mpOrig)
-        return atk_component_contains(ATK_COMPONENT(obj->mpOrig), x, y, coord_type);
-
-    try
-    {
-        css::uno::Reference<css::accessibility::XAccessibleComponent> pComponent
-            = getComponent(obj);
-        if( pComponent.is() )
-            return pComponent->containsPoint( translatePoint( pComponent, x, y, coord_type ) );
-    }
-    catch( const uno::Exception & )
-    {
-        g_warning( "Exception in containsPoint()" );
-    }
-
-    return FALSE;
-}
-
-/*****************************************************************************/
-
-static AtkObject *
-component_wrapper_ref_accessible_at_point (AtkComponent *component,
-                                           gint          x,
-                                           gint          y,
-                                           AtkCoordType  coord_type)
-{
-    AtkObjectWrapper* obj = getObjectWrapper(component);
-    //if we're a native GtkDrawingArea with custom a11y, use the default toolkit a11y
-    if (obj && obj->mpOrig)
-        return atk_component_ref_accessible_at_point(ATK_COMPONENT(obj->mpOrig), x, y, coord_type);
-
-    try
-    {
-        css::uno::Reference<css::accessibility::XAccessibleComponent> pComponent
-            = getComponent(obj);
-
-        if( pComponent.is() )
-        {
-            uno::Reference< accessibility::XAccessible > xAccessible = pComponent->getAccessibleAtPoint(
-                translatePoint( pComponent, x, y, coord_type ) );
-            return atk_object_wrapper_ref( xAccessible );
-        }
-    }
-    catch( const uno::Exception & )
-    {
-        g_warning( "Exception in getAccessibleAtPoint()" );
-    }
-
-    return nullptr;
-}
-
-/*****************************************************************************/
-
-static void
-component_wrapper_get_position (AtkComponent   *component,
-                                gint           *x,
-                                gint           *y,
-                                AtkCoordType   coord_type)
-{
-    AtkObjectWrapper* obj = getObjectWrapper(component);
-    //if we're a native GtkDrawingArea with custom a11y, use the default toolkit a11y
-    if (obj && obj->mpOrig)
-    {
-        atk_component_get_extents(ATK_COMPONENT(obj->mpOrig), x, y, nullptr, nullptr, coord_type);
-        return;
-    }
-
-    *x = *y = -1;
-
-    try
-    {
-        css::uno::Reference<css::accessibility::XAccessibleComponent> pComponent
-            = getComponent(obj);
-        if( pComponent.is() )
-        {
-            awt::Point aPos;
-
-            if( coord_type == ATK_XY_SCREEN )
-                aPos = pComponent->getLocationOnScreen();
-            else
-                aPos = pComponent->getLocation();
-
-            *x = aPos.X;
-            *y = aPos.Y;
-        }
-    }
-    catch( const uno::Exception & )
-    {
-        g_warning( "Exception in getLocation[OnScreen]()" );
-    }
-}
-
-/*****************************************************************************/
-
-static void
-component_wrapper_get_size (AtkComponent   *component,
-                            gint           *width,
-                            gint           *height)
-{
-    AtkObjectWrapper* obj = getObjectWrapper(component);
-    //if we're a native GtkDrawingArea with custom a11y, use the default toolkit a11y
-    if (obj && obj->mpOrig)
-    {
-        atk_component_get_extents(ATK_COMPONENT(obj->mpOrig), nullptr, nullptr, width, height, ATK_XY_WINDOW);
-        return;
-    }
-
-    *width = *height = -1;
-
-    try
-    {
-        css::uno::Reference<css::accessibility::XAccessibleComponent> pComponent
-            = getComponent(obj);
-        if( pComponent.is() )
-        {
-            awt::Size aSize = pComponent->getSize();
-            *width = aSize.Width;
-            *height = aSize.Height;
-        }
-    }
-    catch( const uno::Exception & )
-    {
-        g_warning( "Exception in getSize()" );
-    }
-}
-
-/*****************************************************************************/
-
-static void
-component_wrapper_get_extents (AtkComponent *component,
-                               gint         *x,
-                               gint         *y,
-                               gint         *width,
-                               gint         *height,
-                               AtkCoordType  coord_type)
-{
-    component_wrapper_get_position( component, x, y, coord_type );
-    component_wrapper_get_size( component, width, height );
-}
-
-/*****************************************************************************/
-
-static gboolean
-component_wrapper_set_extents (AtkComponent *, gint, gint, gint, gint, AtkCoordType)
-{
-    g_warning( "AtkComponent::set_extents unimplementable" );
-    return FALSE;
-}
-
-/*****************************************************************************/
-
-static gboolean
-component_wrapper_set_position (AtkComponent *, gint, gint, AtkCoordType)
-{
-    g_warning( "AtkComponent::set_position unimplementable" );
-    return FALSE;
-}
-
-/*****************************************************************************/
-
-static gboolean
-component_wrapper_set_size (AtkComponent *, gint, gint)
-{
-    g_warning( "AtkComponent::set_size unimplementable" );
-    return FALSE;
-}
-
-/*****************************************************************************/
-
-static AtkLayer
-component_wrapper_get_layer (AtkComponent   *component)
-{
-    AtkRole role = atk_object_get_role( ATK_OBJECT( component ) );
-    AtkLayer layer = ATK_LAYER_WIDGET;
-
-    switch (role)
-    {
-        case ATK_ROLE_POPUP_MENU:
-        case ATK_ROLE_MENU_ITEM:
-        case ATK_ROLE_CHECK_MENU_ITEM:
-        case ATK_ROLE_SEPARATOR:
-        case ATK_ROLE_LIST_ITEM:
-            layer = ATK_LAYER_POPUP;
-            break;
-        case ATK_ROLE_MENU:
-            {
-                AtkObject * parent = atk_object_get_parent( ATK_OBJECT( component ) );
-                if( atk_object_get_role( parent ) != ATK_ROLE_MENU_BAR )
-                    layer = ATK_LAYER_POPUP;
-            }
-            break;
-
-        case ATK_ROLE_LIST:
-            {
-                AtkObject * parent = atk_object_get_parent( ATK_OBJECT( component ) );
-                if( atk_object_get_role( parent ) == ATK_ROLE_COMBO_BOX )
-                    layer = ATK_LAYER_POPUP;
-            }
-            break;
-
-        default:
-            ;
-    }
-
-    return layer;
-}
-
-/*****************************************************************************/
-
-static gint
-component_wrapper_get_mdi_zorder (AtkComponent   *)
-{
-    // only needed for ATK_LAYER_MDI (not used) or ATK_LAYER_WINDOW (inherited from GAIL)
-    return G_MININT;
-}
-
-/*****************************************************************************/
-
-// This code is mostly stolen from libgail ..
-
-static guint
-component_wrapper_add_focus_handler (AtkComponent    *component,
-                                     AtkFocusHandler  handler)
-{
-    GSignalMatchType match_type;
-    gulong ret;
-    guint signal_id;
-
-    match_type = GSignalMatchType(G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC);
-    signal_id = g_signal_lookup( "focus-event", ATK_TYPE_OBJECT );
-
-    ret = g_signal_handler_find( component, match_type, signal_id, 0, nullptr,
-                                 static_cast<gpointer>(&handler), nullptr);
-    if (!ret)
-    {
-        return g_signal_connect_closure_by_id (component,
-                                               signal_id, 0,
-                                               g_cclosure_new (
-                                               G_CALLBACK (handler), nullptr,
-                                               nullptr),
-                                               FALSE);
-    }
-    else
-    {
-        return 0;
-    }
-}
-
-/*****************************************************************************/
-
-static void
-component_wrapper_remove_focus_handler (AtkComponent  *component,
-                                        guint         handler_id)
-{
-    g_signal_handler_disconnect (component, handler_id);
-}
-
-/*****************************************************************************/
-
-} // extern "C"
-
-void
-componentIfaceInit (AtkComponentIface *iface)
-{
-  g_return_if_fail (iface != nullptr);
-
-  iface->add_focus_handler = component_wrapper_add_focus_handler;
-  iface->contains = component_wrapper_contains;
-  iface->get_extents = component_wrapper_get_extents;
-  iface->get_layer = component_wrapper_get_layer;
-  iface->get_mdi_zorder = component_wrapper_get_mdi_zorder;
-  iface->get_position = component_wrapper_get_position;
-  iface->get_size = component_wrapper_get_size;
-  iface->grab_focus = component_wrapper_grab_focus;
-  iface->ref_accessible_at_point = component_wrapper_ref_accessible_at_point;
-  iface->remove_focus_handler = component_wrapper_remove_focus_handler;
-  iface->set_extents = component_wrapper_set_extents;
-  iface->set_position = component_wrapper_set_position;
-  iface->set_size = component_wrapper_set_size;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/a11y/atkeditabletext.cxx b/vcl/unx/gtk/a11y/atkeditabletext.cxx
deleted file mode 100644
index 49d3eb9ccfc9..000000000000
--- a/vcl/unx/gtk/a11y/atkeditabletext.cxx
+++ /dev/null
@@ -1,194 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "atkwrapper.hxx"
-#include "atktextattributes.hxx"
-
-#include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
-#include <com/sun/star/accessibility/TextSegment.hpp>
-
-#include <string.h>
-
-using namespace ::com::sun::star;
-
-/// @throws uno::RuntimeException
-static css::uno::Reference<css::accessibility::XAccessibleEditableText>
-    getEditableText( AtkEditableText *pEditableText )
-{
-    AtkObjectWrapper *pWrap = ATK_OBJECT_WRAPPER( pEditableText );
-    if( pWrap )
-    {
-        if( !pWrap->mpEditableText.is() )
-        {
-            pWrap->mpEditableText.set(pWrap->mpContext, css::uno::UNO_QUERY);
-        }
-
-        return pWrap->mpEditableText;
-    }
-
-    return css::uno::Reference<css::accessibility::XAccessibleEditableText>();
-}
-
-/*****************************************************************************/
-
-extern "C" {
-
-static gboolean
-editable_text_wrapper_set_run_attributes( AtkEditableText  *text,
-                                          AtkAttributeSet  *attribute_set,
-                                          gint              nStartOffset,
-                                          gint              nEndOffset)
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-        {
-            uno::Sequence< beans::PropertyValue > aAttributeList;
-
-            if( attribute_set_map_to_property_values( attribute_set, aAttributeList ) )
-                return pEditableText->setAttributes(nStartOffset, nEndOffset, aAttributeList);
-        }
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in setAttributes()" );
-    }
-
-    return FALSE;
-}
-
-static void
-editable_text_wrapper_set_text_contents( AtkEditableText  *text,
-                                         const gchar      *string )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-        {
-            OUString aString ( string, strlen(string), RTL_TEXTENCODING_UTF8 );
-            pEditableText->setText( aString );
-        }
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in setText()" );
-    }
-}
-
-static void
-editable_text_wrapper_insert_text( AtkEditableText  *text,
-                                   const gchar      *string,
-                                   gint             length,
-                                   gint             *pos )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-        {
-            OUString aString ( string, length, RTL_TEXTENCODING_UTF8 );
-            if( pEditableText->insertText( aString, *pos ) )
-                *pos += length;
-        }
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in insertText()" );
-    }
-}
-
-static void
-editable_text_wrapper_cut_text( AtkEditableText  *text,
-                                gint             start,
-                                gint             end )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-            pEditableText->cutText( start, end );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in cutText()" );
-    }
-}
-
-static void
-editable_text_wrapper_delete_text( AtkEditableText  *text,
-                                   gint             start,
-                                   gint             end )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-            pEditableText->deleteText( start, end );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in deleteText()" );
-    }
-}
-
-static void
-editable_text_wrapper_paste_text( AtkEditableText  *text,
-                                  gint             pos )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-            pEditableText->pasteText( pos );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in pasteText()" );
-    }
-}
-
-static void
-editable_text_wrapper_copy_text( AtkEditableText  *text,
-                                 gint             start,
-                                 gint             end )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleEditableText>
-            pEditableText = getEditableText( text );
-        if( pEditableText.is() )
-            pEditableText->copyText( start, end );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in copyText()" );
-    }
-}
-
-} // extern "C"
-
-void
-editableTextIfaceInit (AtkEditableTextIface *iface)
-{
-  g_return_if_fail (iface != nullptr);
-
-  iface->set_text_contents = editable_text_wrapper_set_text_contents;
-  iface->insert_text = editable_text_wrapper_insert_text;
-  iface->copy_text = editable_text_wrapper_copy_text;
-  iface->cut_text = editable_text_wrapper_cut_text;
-  iface->delete_text = editable_text_wrapper_delete_text;
-  iface->paste_text = editable_text_wrapper_paste_text;
-  iface->set_run_attributes = editable_text_wrapper_set_run_attributes;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/a11y/atkfactory.cxx b/vcl/unx/gtk/a11y/atkfactory.cxx
deleted file mode 100644
index 3a776b20dcc7..000000000000
--- a/vcl/unx/gtk/a11y/atkfactory.cxx
+++ /dev/null
@@ -1,195 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <unx/gtk/gtkframe.hxx>
-#include <vcl/window.hxx>
-#include "atkwrapper.hxx"
-#include "atkfactory.hxx"
-#include "atkregistry.hxx"
-
-using namespace ::com::sun::star;
-
-extern "C" {
-
-/*
- *  Instances of this dummy object class are returned whenever we have to
- *  create an AtkObject, but can't touch the OOo object anymore since it
- *  is already disposed.
- */
-
-static AtkStateSet *
-noop_wrapper_ref_state_set( AtkObject * )
-{
-    AtkStateSet *state_set = atk_state_set_new();
-    atk_state_set_add_state( state_set, ATK_STATE_DEFUNCT );
-    return state_set;
-}
-
-static void
-atk_noop_object_wrapper_class_init(AtkNoOpObjectClass *klass)
-{
-    AtkObjectClass *atk_class = ATK_OBJECT_CLASS( klass );
-    atk_class->ref_state_set = noop_wrapper_ref_state_set;
-}
-
-static GType
-atk_noop_object_wrapper_get_type()
-{
-    static GType type = 0;
-
-    if (!type)
-    {
-        static const GTypeInfo typeInfo =
-        {
-            sizeof (AtkNoOpObjectClass),
-            nullptr,
-            nullptr,
-            reinterpret_cast<GClassInitFunc>(atk_noop_object_wrapper_class_init),
-            nullptr,
-            nullptr,
-            sizeof (AtkObjectWrapper),
-            0,
-            nullptr,
-            nullptr
-        } ;
-
-        type = g_type_register_static (ATK_TYPE_OBJECT, "OOoAtkNoOpObj", &typeInfo, GTypeFlags(0)) ;
-    }
-    return type;
-}
-
-static AtkObject*
-atk_noop_object_wrapper_new()
-{
-  AtkObject *accessible;
-
-  accessible = static_cast<AtkObject *>(g_object_new (atk_noop_object_wrapper_get_type(), nullptr));
-  g_return_val_if_fail (accessible != nullptr, nullptr);
-
-  accessible->role = ATK_ROLE_INVALID;
-  accessible->layer = ATK_LAYER_INVALID;
-
-  return accessible;
-}
-
-/*
- * The wrapper factory
- */
-
-static GType
-wrapper_factory_get_accessible_type()
-{
-  return atk_object_wrapper_get_type();
-}
-
-static AtkObject*
-wrapper_factory_create_accessible( GObject *obj )
-{
-#if GTK_CHECK_VERSION(3,0,0)
-    GtkWidget* pEventBox = gtk_widget_get_parent(GTK_WIDGET(obj));
-
-    // gail_container_real_remove_gtk tries to re-instantiate an accessible
-    // for a widget that is about to vanish ..
-    if (!pEventBox)
-        return atk_noop_object_wrapper_new();
-
-    GtkWidget* pTopLevelGrid = gtk_widget_get_parent(pEventBox);
-    if (!pTopLevelGrid)
-        return atk_noop_object_wrapper_new();
-
-    GtkWidget* pTopLevel = gtk_widget_get_parent(pTopLevelGrid);
-    if (!pTopLevel)
-        return atk_noop_object_wrapper_new();
-#else
-    GtkWidget* pTopLevel = gtk_widget_get_parent(GTK_WIDGET(obj));
-
-    // gail_container_real_remove_gtk tries to re-instantiate an accessible
-    // for a widget that is about to vanish ..
-    if (!pTopLevel)
-        return atk_noop_object_wrapper_new();
-#endif
-
-    GtkSalFrame* pFrame = GtkSalFrame::getFromWindow(GTK_WINDOW(pTopLevel));
-    g_return_val_if_fail( pFrame != nullptr, nullptr );
-
-    vcl::Window* pFrameWindow = pFrame->GetWindow();
-    if( pFrameWindow )
-    {
-        vcl::Window* pWindow = pFrameWindow;
-
-        // skip accessible objects already exposed by the frame objects
-        if( WindowType::BORDERWINDOW == pWindow->GetType() )
-            pWindow = pFrameWindow->GetAccessibleChildWindow(0);
-
-        if( pWindow )
-        {
-            uno::Reference< accessibility::XAccessible > xAccessible = pWindow->GetAccessible();
-            if( xAccessible.is() )
-            {
-                AtkObject *accessible = ooo_wrapper_registry_get( xAccessible );
-
-                if( accessible )
-                    g_object_ref( G_OBJECT(accessible) );
-                else
-                    accessible = atk_object_wrapper_new( xAccessible, gtk_widget_get_accessible(pTopLevel) );
-
-                return accessible;
-            }
-        }
-    }
-
-    return nullptr;
-}
-
-AtkObject* ooo_fixed_get_accessible(GtkWidget *obj)
-{
-    return wrapper_factory_create_accessible(G_OBJECT(obj));
-}
-
-static void
-wrapper_factory_class_init( AtkObjectFactoryClass *klass )
-{
-  klass->create_accessible   = wrapper_factory_create_accessible;
-  klass->get_accessible_type = wrapper_factory_get_accessible_type;
-}
-
-GType
-wrapper_factory_get_type()
-{
-  static GType t = 0;
-
-  if (!t) {
-    static const GTypeInfo tinfo =
-    {
-      sizeof (AtkObjectFactoryClass),
-      nullptr, nullptr, reinterpret_cast<GClassInitFunc>(wrapper_factory_class_init),
-      nullptr, nullptr, sizeof (AtkObjectFactory), 0, nullptr, nullptr
-    };
-
-    t = g_type_register_static (
-        ATK_TYPE_OBJECT_FACTORY, "OOoAtkObjectWrapperFactory",
-        &tinfo, GTypeFlags(0));
-  }
-
-  return t;
-}
-
-} // extern C
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/a11y/atkhypertext.cxx b/vcl/unx/gtk/a11y/atkhypertext.cxx
deleted file mode 100644
index ab94126dfc51..000000000000
--- a/vcl/unx/gtk/a11y/atkhypertext.cxx
+++ /dev/null
@@ -1,273 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "atkwrapper.hxx"
-
-#include <com/sun/star/accessibility/XAccessibleHypertext.hpp>
-
-using namespace ::com::sun::star;
-
-// ---------------------- AtkHyperlink ----------------------
-
-struct HyperLink {
-    AtkHyperlink const atk_hyper_link;
-
-    uno::Reference< accessibility::XAccessibleHyperlink > xLink;
-};
-
-static uno::Reference< accessibility::XAccessibleHyperlink > const &
-    getHyperlink( AtkHyperlink *pHyperlink )
-{
-    HyperLink *pLink = reinterpret_cast<HyperLink *>(pHyperlink);
-    return pLink->xLink;
-}
-
-static GObjectClass *hyper_parent_class = nullptr;
-
-extern "C" {
-
-static void
-hyper_link_finalize (GObject *obj)
-{
-    HyperLink *hl = reinterpret_cast<HyperLink *>(obj);
-    hl->xLink.clear();
-    hyper_parent_class->finalize (obj);
-}
-
-static gchar *
-hyper_link_get_uri( AtkHyperlink *pLink,
-                    gint          i )
-{
-    try {
-        uno::Any aAny = getHyperlink( pLink )->getAccessibleActionObject( i );
-        OUString aUri = aAny.get< OUString > ();
-        return OUStringToGChar(aUri);
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in hyper_link_get_uri" );
-    }
-    return nullptr;
-}
-
-static AtkObject *
-hyper_link_get_object( AtkHyperlink *,
-                       gint          )
-{
-    g_warning( "FIXME: hyper_link_get_object unimplemented" );
-    return nullptr;
-}
-static gint
-hyper_link_get_end_index( AtkHyperlink *pLink )
-{
-    try {
-        return getHyperlink( pLink )->getEndIndex();
-    }
-    catch(const uno::Exception&) {
-    }
-    return -1;
-}
-static gint
-hyper_link_get_start_index( AtkHyperlink *pLink )
-{
-    try {
-        return getHyperlink( pLink )->getStartIndex();
-    }
-    catch(const uno::Exception&) {
-    }
-    return -1;
-}
-static gboolean
-hyper_link_is_valid( AtkHyperlink *pLink )
-{
-    try {
-        return getHyperlink( pLink )->isValid();
-    }
-    catch(const uno::Exception&) {
-    }
-    return FALSE;
-}
-static gint
-hyper_link_get_n_anchors( AtkHyperlink *pLink )
-{
-    try {
-        return getHyperlink( pLink )->getAccessibleActionCount();
-    }
-    catch(const uno::Exception&) {
-    }
-    return 0;
-}
-
-static guint
-hyper_link_link_state( AtkHyperlink * )
-{
-    g_warning( "FIXME: hyper_link_link_state unimplemented" );
-    return 0;
-}
-static gboolean
-hyper_link_is_selected_link( AtkHyperlink * )
-{
-    g_warning( "FIXME: hyper_link_is_selected_link unimplemented" );
-    return FALSE;
-}
-
-static void
-hyper_link_class_init (AtkHyperlinkClass *klass)
-{
-    GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
-
-    gobject_class->finalize = hyper_link_finalize;
-
-    hyper_parent_class = static_cast<GObjectClass *>(g_type_class_peek_parent (klass));
-
-    klass->get_uri = hyper_link_get_uri;
-    klass->get_object = hyper_link_get_object;
-    klass->get_end_index = hyper_link_get_end_index;
-    klass->get_start_index = hyper_link_get_start_index;
-    klass->is_valid = hyper_link_is_valid;
-    klass->get_n_anchors = hyper_link_get_n_anchors;
-    klass->link_state = hyper_link_link_state;
-    klass->is_selected_link = hyper_link_is_selected_link;
-}
-
-static GType
-hyper_link_get_type()
-{
-    static GType type = 0;
-
-    if (!type) {
-        static const GTypeInfo tinfo = {
-            sizeof (AtkHyperlinkClass),
-            nullptr,               /* base init */
-            nullptr,               /* base finalize */
-            reinterpret_cast<GClassInitFunc>(hyper_link_class_init),
-            nullptr,               /* class finalize */
-            nullptr,               /* class data */
-            sizeof (HyperLink), /* instance size */
-            0,                  /* nb preallocs */
-            nullptr,               /* instance init */
-            nullptr                /* value table */
-        };
-
-        static const GInterfaceInfo atk_action_info = {
-            reinterpret_cast<GInterfaceInitFunc>(actionIfaceInit),
-            nullptr,
-            nullptr
-        };
-
-        type = g_type_register_static (ATK_TYPE_HYPERLINK,
-                                       "OOoAtkObjHyperLink", &tinfo,
-                                       GTypeFlags(0));
-        g_type_add_interface_static (type, ATK_TYPE_ACTION,
-                                     &atk_action_info);
-    }
-
-    return type;
-}
-
-// ---------------------- AtkHyperText ----------------------
-
-/// @throws uno::RuntimeException
-static css::uno::Reference<css::accessibility::XAccessibleHypertext>
-    getHypertext( AtkHypertext *pHypertext )
-{
-    AtkObjectWrapper *pWrap = ATK_OBJECT_WRAPPER( pHypertext );
-    if( pWrap )
-    {
-        if( !pWrap->mpHypertext.is() )
-        {
-            pWrap->mpHypertext.set(pWrap->mpContext, css::uno::UNO_QUERY);
-        }
-
-        return pWrap->mpHypertext;
-    }
-
-    return css::uno::Reference<css::accessibility::XAccessibleHypertext>();
-}
-
-static AtkHyperlink *
-hypertext_get_link( AtkHypertext *hypertext,
-                    gint          link_index)
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleHypertext> pHypertext
-            = getHypertext( hypertext );
-        if( pHypertext.is() )
-        {
-            HyperLink *pLink = static_cast<HyperLink *>(g_object_new( hyper_link_get_type(), nullptr ));
-            pLink->xLink = pHypertext->getHyperLink( link_index );
-            if( !pLink->xLink.is() ) {
-                g_object_unref( G_OBJECT( pLink ) );
-                pLink = nullptr;
-            }
-            return ATK_HYPERLINK( pLink );
-        }
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in getHyperLink()" );
-    }
-
-    return nullptr;
-}
-
-static gint
-hypertext_get_n_links( AtkHypertext *hypertext )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleHypertext> pHypertext
-            = getHypertext( hypertext );
-        if( pHypertext.is() )
-            return pHypertext->getHyperLinkCount();
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in getHyperLinkCount()" );
-    }
-
-    return 0;
-}
-
-static gint
-hypertext_get_link_index( AtkHypertext *hypertext,
-                          gint          index)
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleHypertext> pHypertext
-            = getHypertext( hypertext );
-        if( pHypertext.is() )
-            return pHypertext->getHyperLinkIndex( index );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in getHyperLinkIndex()" );
-    }
-
-    return 0;
-}
-
-} // extern "C"
-
-void
-hypertextIfaceInit (AtkHypertextIface *iface)
-{
-  g_return_if_fail (iface != nullptr);
-
-  iface->get_link = hypertext_get_link;
-  iface->get_n_links = hypertext_get_n_links;
-  iface->get_link_index = hypertext_get_link_index;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/gtk/a11y/atkimage.cxx b/vcl/unx/gtk/a11y/atkimage.cxx
deleted file mode 100644
index acd43f467690..000000000000
--- a/vcl/unx/gtk/a11y/atkimage.cxx
+++ /dev/null
@@ -1,131 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "atkwrapper.hxx"
-
-#include <com/sun/star/accessibility/XAccessibleImage.hpp>
-
-using namespace ::com::sun::star;
-
-// FIXME
-static const gchar *
-getAsConst( const OUString& rString )
-{
-    static const int nMax = 10;
-    static OString aUgly[nMax];
-    static int nIdx = 0;
-    nIdx = (nIdx + 1) % nMax;
-    aUgly[nIdx] = OUStringToOString( rString, RTL_TEXTENCODING_UTF8 );
-    return aUgly[ nIdx ].getStr();
-}
-
-/// @throws uno::RuntimeException
-static css::uno::Reference<css::accessibility::XAccessibleImage>
-    getImage( AtkImage *pImage )
-{
-    AtkObjectWrapper *pWrap = ATK_OBJECT_WRAPPER( pImage );
-    if( pWrap )
-    {
-        if( !pWrap->mpImage.is() )
-        {
-            pWrap->mpImage.set(pWrap->mpContext, css::uno::UNO_QUERY);
-        }
-
-        return pWrap->mpImage;
-    }
-
-    return css::uno::Reference<css::accessibility::XAccessibleImage>();
-}
-
-extern "C" {
-
-static const gchar *
-image_get_image_description( AtkImage *image )
-{
-    try {
-        css::uno::Reference<css::accessibility::XAccessibleImage> pImage
-            = getImage( image );
-        if( pImage.is() )
-            return getAsConst( pImage->getAccessibleImageDescription() );
-    }
-    catch(const uno::Exception&) {
-        g_warning( "Exception in getAccessibleImageDescription()" );
-    }
-
-    return nullptr;
-}
-
-static void
-image_get_image_position( AtkImage     *image,
-                          gint         *x,
-                          gint         *y,
-                          AtkCoordType  coord_type )
-{
-    *x = *y = -1;
-    if( ATK_IS_COMPONENT( image ) )
-    {
-        SAL_WNODEPRECATED_DECLARATIONS_PUSH
-        atk_component_get_position( ATK_COMPONENT( image ), x, y, coord_type );
-        SAL_WNODEPRECATED_DECLARATIONS_POP
-    }
-    else

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list