[Libreoffice-commits] core.git: Branch 'private/jmux/kde5+rsvg' - config_host/config_kde4.h.in config_host/config_vclplug.h.in config_host.mk.in configure.ac cui/Library_cui.mk cui/source drawinglayer/source include/vcl RepositoryExternal.mk Repository.mk scp2/InstallScript_setup_osl.mk scp2/Module_scp2.mk shell/Module_shell.mk shell/source solenv/gbuild sysui/CustomTarget_share.mk vcl/CustomTarget_tde_moc.mk vcl/inc vcl/Library_vcl.mk vcl/Library_vclplug_kde4.mk vcl/Module_vcl.mk vcl/source vcl/unx vcl/vcl.unx.component

Jan-Marek Glogowski glogow at fbihome.de
Tue Nov 24 01:17:07 PST 2015


 Repository.mk                                                |    2 
 RepositoryExternal.mk                                        |   33 
 config_host.mk.in                                            |   21 
 config_host/config_kde4.h.in                                 |    2 
 config_host/config_vclplug.h.in                              |    1 
 configure.ac                                                 |  442 +++++++++--
 cui/Library_cui.mk                                           |    1 
 cui/source/options/optgdlg.cxx                               |   10 
 drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx |   22 
 include/vcl/svgdata.hxx                                      |    4 
 scp2/InstallScript_setup_osl.mk                              |    2 
 scp2/Module_scp2.mk                                          |    2 
 shell/Module_shell.mk                                        |    6 
 shell/source/backends/kde4be/kde4access.cxx                  |   14 
 solenv/gbuild/CppunitTest.mk                                 |    1 
 sysui/CustomTarget_share.mk                                  |    2 
 vcl/CustomTarget_tde_moc.mk                                  |    2 
 vcl/Library_vcl.mk                                           |    1 
 vcl/Library_vclplug_kde4.mk                                  |    6 
 vcl/Module_vcl.mk                                            |    6 
 vcl/inc/factory.hxx                                          |    9 
 vcl/inc/vclpluginapi.h                                       |    6 
 vcl/source/components/factory.cxx                            |    6 
 vcl/source/gdi/svgdata.cxx                                   |   43 +
 vcl/unx/generic/plugadapt/salplug.cxx                        |    8 
 vcl/unx/kde4/KDE4FilePicker.cxx                              |   13 
 vcl/unx/kde4/KDE4FilePicker.hxx                              |    6 
 vcl/unx/kde4/KDEData.cxx                                     |    2 
 vcl/unx/kde4/KDESalFrame.cxx                                 |    8 
 vcl/unx/kde4/KDESalGraphics.cxx                              |   10 
 vcl/unx/kde4/KDESalGraphics.hxx                              |    2 
 vcl/unx/kde4/KDEXLib.cxx                                     |   34 
 vcl/unx/kde4/KDEXLib.hxx                                     |    6 
 vcl/unx/kde4/VCLKDEApplication.cxx                           |    4 
 vcl/unx/kde4/main.cxx                                        |    2 
 vcl/unx/kde4/tst_exclude_posted_events.hxx                   |    4 
 vcl/unx/kde4/tst_exclude_socket_notifiers.hxx                |    6 
 vcl/vcl.unx.component                                        |    3 
 38 files changed, 612 insertions(+), 140 deletions(-)

New commits:
commit 0478d8c0e1a0be69a729b13c9ff55609e4a8455e
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date:   Tue Nov 24 10:15:06 2015 +0100

    catchall
    
    Change-Id: Ie53c4ca80cf25fdf5c131d2a0610f0bc55689a66

diff --git a/Repository.mk b/Repository.mk
index 5e9bb48..0ed7f55 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -257,8 +257,10 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,gnome, \
 
 $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,kde, \
 	$(if $(ENABLE_KDE4),kde4be1) \
+	$(if $(ENABLE_KDE5),kde5be1) \
 	$(if $(USING_X11), \
 		$(if $(ENABLE_KDE4),vclplug_kde4) \
+		$(if $(ENABLE_KDE5),vclplug_kde5) \
 	) \
 ))
 
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 3830d14..9a1dcc1 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -2996,6 +2996,39 @@ endef
 endif # ENABLE_KDE4
 
 
+ifeq ($(ENABLE_KDE5),TRUE)
+
+define gb_LinkTarget__use_kde5
+$(call gb_LinkTarget_set_include,$(1),\
+	$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(KF5_CFLAGS)))) \
+	$$(INCLUDE) \
+)
+
+$(call gb_LinkTarget_add_defs,$(1),\
+	$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(KF5_CFLAGS))) \
+)
+
+$(call gb_LinkTarget_add_libs,$(1),\
+	$(KF5_LIBS) \
+)
+
+ifeq ($(COM),GCC)
+$(call gb_LinkTarget_add_cxxflags,$(1),\
+	-Wno-shadow \
+)
+endif
+
+endef
+
+else # !ENABLE_KDE5
+
+define gb_LinkTarget__use_kde5
+
+endef
+
+endif # ENABLE_KDE5
+
+
 ifeq ($(ENABLE_TDE),TRUE)
 
 define gb_LinkTarget__use_tde
diff --git a/config_host.mk.in b/config_host.mk.in
index 33c26b7..48214b7 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -144,6 +144,7 @@ export ENABLE_GTK_PRINT=@ENABLE_GTK_PRINT@
 export ENABLE_HEADLESS=@ENABLE_HEADLESS@
 export ENABLE_JAVA=@ENABLE_JAVA@
 export ENABLE_KDE4=@ENABLE_KDE4@
+export ENABLE_KDE5=@ENABLE_KDE5@
 export ENABLE_LIBLANGTAG=@ENABLE_LIBLANGTAG@
 export ENABLE_LPSOLVE=@ENABLE_LPSOLVE@
 export ENABLE_LTO=@ENABLE_LTO@
@@ -164,13 +165,13 @@ export ENABLE_PDFIMPORT=@ENABLE_PDFIMPORT@
 export ENABLE_RANDR=@ENABLE_RANDR@
 export ENABLE_RELEASE_BUILD=@ENABLE_RELEASE_BUILD@
 export ENABLE_REPORTBUILDER=@ENABLE_REPORTBUILDER@
+export ENABLE_RSVG=@ENABLE_RSVG@
 export ENABLE_RUNTIME_OPTIMIZATIONS=@ENABLE_RUNTIME_OPTIMIZATIONS@
 export ENABLE_SAL_LOG=@ENABLE_SAL_LOG@
 export ENABLE_SCRIPTING_BEANSHELL=@ENABLE_SCRIPTING_BEANSHELL@
 export ENABLE_SCRIPTING_JAVASCRIPT=@ENABLE_SCRIPTING_JAVASCRIPT@
 export ENABLE_SDREMOTE=@ENABLE_SDREMOTE@
 export ENABLE_SDREMOTE_BLUETOOTH=@ENABLE_SDREMOTE_BLUETOOTH@
-export SYSTEM_BLUEZ=@SYSTEM_BLUEZ@
 export ENABLE_SILENT_MSI=@ENABLE_SILENT_MSI@
 export ENABLE_SYMBOLS=@ENABLE_SYMBOLS@
 export ENABLE_SYSTRAY_GTK=@ENABLE_SYSTRAY_GTK@
@@ -305,9 +306,14 @@ export JITC_PROCESSOR_TYPE=@JITC_PROCESSOR_TYPE@
 export JVM_ONE_PATH_CHECK=@JVM_ONE_PATH_CHECK@
 export KDE4_CFLAGS=$(gb_SPACE)@KDE4_CFLAGS@
 export KDE4_LIBS=$(gb_SPACE)@KDE4_LIBS@
-export KDE_GLIB_CFLAGS=$(gb_SPACE)@KDE_GLIB_CFLAGS@
-export KDE_GLIB_LIBS=$(gb_SPACE)@KDE_GLIB_LIBS@
-export KDE_HAVE_GLIB=@KDE_HAVE_GLIB@
+export KDE4_GLIB_CFLAGS=$(gb_SPACE)@KDE4_GLIB_CFLAGS@
+export KDE4_GLIB_LIBS=$(gb_SPACE)@KDE4_GLIB_LIBS@
+export KDE4_HAVE_GLIB=@KDE4_HAVE_GLIB@
+export KF5_CFLAGS=$(gb_SPACE)@KF5_CFLAGS@
+export KF5_LIBS=$(gb_SPACE)@KF5_LIBS@
+export KF5_GLIB_CFLAGS=$(gb_SPACE)@KF5_GLIB_CFLAGS@
+export KF5_GLIB_LIBS=$(gb_SPACE)@KF5_GLIB_LIBS@
+export KF5_HAVE_GLIB=@KF5_HAVE_GLIB@
 export KRB5_LIBS=@KRB5_LIBS@
 export LCMS2_CFLAGS=$(gb_SPACE)@LCMS2_CFLAGS@
 export LCMS2_LIBS=$(gb_SPACE)@LCMS2_LIBS@
@@ -356,6 +362,8 @@ export LIBO_VERSION_SUFFIX_SUFFIX=@LIBO_VERSION_SUFFIX_SUFFIX@
 export LIBPNG_CFLAGS=$(gb_SPACE)@LIBPNG_CFLAGS@
 export LIBPNG_LIBS=$(gb_SPACE)@LIBPNG_LIBS@
 export LIBREPOSITORY_JAR=@LIBREPOSITORY_JAR@
+export LIBRSVG_CFLAGS=@LIBRSVG_CFLAGS@
+export LIBRSVG_LIBS=@LIBRSVG_LIBS@
 export LIBSERIALIZER_JAR=@LIBSERIALIZER_JAR@
 export LIBTOOL=@LIBTOOL@
 export LIBXML_CFLAGS=$(gb_SPACE)@LIBXML_CFLAGS@
@@ -399,7 +407,7 @@ export MINGW_SHARED_LIBSTDCPP=@MINGW_SHARED_LIBSTDCPP@
 export MINGW_SYSROOT=@MINGW_SYSROOT@
 export ML_EXE=@ML_EXE@
 export MOC4=@MOC4@
-export MOC=@MOC@
+export MOC5=@MOC5@
 export MPL_SUBSET=@MPL_SUBSET@
 export MSM_PATH=@MSM_PATH@
 export MSPUB_CFLAGS=$(gb_SPACE)@MSPUB_CFLAGS@
@@ -509,6 +517,7 @@ export SYSBASE=@SYSBASE@
 export SYSTEM_ABW=@SYSTEM_ABW@
 export SYSTEM_APACHE_COMMONS=@SYSTEM_APACHE_COMMONS@
 export SYSTEM_APR=@SYSTEM_APR@
+export SYSTEM_BLUEZ=@SYSTEM_BLUEZ@
 export SYSTEM_BOOST=@SYSTEM_BOOST@
 export SYSTEM_BSH=@SYSTEM_BSH@
 export SYSTEM_BZIP2=@SYSTEM_BZIP2@
@@ -575,6 +584,7 @@ export SYSTEM_PYTHON=@SYSTEM_PYTHON@
 export SYSTEM_REDLAND=@SYSTEM_REDLAND@
 export SYSTEM_REVENGE=@SYSTEM_REVENGE@
 export SYSTEM_RHINO=@SYSTEM_RHINO@
+export SYSTEM_RSVG=@SYSTEM_RSVG@
 export SYSTEM_SERF=@SYSTEM_SERF@
 export SYSTEM_UCPP=@SYSTEM_UCPP@
 export SYSTEM_VIGRA=@SYSTEM_VIGRA@
@@ -586,6 +596,7 @@ export SYSTEM_ZLIB=@SYSTEM_ZLIB@
 export TARFILE_LOCATION=@TARFILE_LOCATION@
 export TDE_CFLAGS=$(gb_SPACE)@TDE_CFLAGS@
 export TDE_LIBS=$(gb_SPACE)@TDE_LIBS@
+export TDE_MOC=$(gb_SPACE)@TDE_MOC@
 export TELEPATHY_CFLAGS=$(gb_SPACE)@TELEPATHY_CFLAGS@
 export TELEPATHY_LIBS=$(gb_SPACE)@TELEPATHY_LIBS@
 export TESTINSTALLDIR=@TESTINSTALLDIR@
diff --git a/config_host/config_kde4.h.in b/config_host/config_kde4.h.in
index 6e91b38..50e8553 100644
--- a/config_host/config_kde4.h.in
+++ b/config_host/config_kde4.h.in
@@ -5,6 +5,6 @@ Settings for KDE4 integration.
 #ifndef CONFIG_KDE4_H
 #define CONFIG_KDE4_H
 
-#define KDE_HAVE_GLIB 0
+#define KDE4_HAVE_GLIB 0
 
 #endif
diff --git a/config_host/config_vclplug.h.in b/config_host/config_vclplug.h.in
index ae17474..75558b5 100644
--- a/config_host/config_vclplug.h.in
+++ b/config_host/config_vclplug.h.in
@@ -9,6 +9,7 @@ Settings about which X11 desktops have support enabled.
 
 #define ENABLE_GTK 0
 #define ENABLE_KDE4 0
+#define ENABLE_KDE5 0
 #define ENABLE_TDE 0
 #define ENABLE_GIO 0
 
diff --git a/configure.ac b/configure.ac
index fd5e1ec..e9cdf45 100644
--- a/configure.ac
+++ b/configure.ac
@@ -585,6 +585,7 @@ test_cups=yes
 test_dbus=yes
 test_fontconfig=yes
 test_cairo=no
+test_rsvg=no
 
 # Default values, as such probably valid just for Linux, set
 # differently below just for Mac OSX,but at least better than
@@ -637,7 +638,9 @@ linux-gnu*|k*bsd*-gnu*)
     build_gstreamer_0_10=yes
     test_tde=yes
     test_kde4=yes
+    test_kde5=yes
     test_freetype=yes
+    test_rsvg=yes
     _os=Linux
     ;;
 
@@ -733,6 +736,7 @@ freebsd*)
     build_gstreamer_0_10=yes
     test_tde=yes
     test_kde4=yes
+    test_kde5=yes
     test_freetype=yes
     AC_MSG_CHECKING([the FreeBSD operating system release])
     if test -n "$with_os_version"; then
@@ -762,6 +766,7 @@ freebsd*)
     build_gstreamer_0_10=yes
     test_tde=no
     test_kde4=yes
+    test_kde5=yes
     test_freetype=yes
     PTHREAD_LIBS="-pthread -lpthread"
     _os=NetBSD
@@ -789,6 +794,7 @@ dragonfly*)
     build_gstreamer_0_10=yes
     test_tde=yes
     test_kde4=yes
+    test_kde5=yes
     test_freetype=yes
     PTHREAD_LIBS="-pthread"
     _os=DragonFly
@@ -810,6 +816,7 @@ linux-android*)
     test_gtk=no
     test_tde=no
     test_kde4=no
+    test_kde5=no
     test_randr=no
     test_xrender=no
     _os=Android
@@ -1244,6 +1251,18 @@ AC_ARG_ENABLE(kde4,
          KDE4 are available.]),
 ,)
 
+AC_ARG_ENABLE(kde5,
+    AS_HELP_STRING([--enable-kde5],
+        [Determines whether to use Qt5/KF5 vclplug on platforms where Qt5 and
+         KF5 are available.]),
+,)
+
+AC_ARG_ENABLE(rsvg,
+    AS_HELP_STRING([--enable-rsvg],
+        [Determines whether to build the rsvg rasterer on platforms where librsvg
+         is available.]),
+,)
+
 AC_ARG_ENABLE(randr,
     AS_HELP_STRING([--disable-randr],
         [Disable RandR support in the vcl project.]),
@@ -1675,6 +1694,11 @@ AC_ARG_WITH(system-libxml,
         [Use libxml/libxslt already on system.]),,
     [with_system_libxml=auto])
 
+AC_ARG_WITH(system-librsvg,
+    AS_HELP_STRING([--with-system-librsvg],
+        [Use librsvg already on system.]),,
+    [with_system_librsvg=auto])
+
 AC_ARG_WITH(system-icu,
     AS_HELP_STRING([--with-system-icu],
         [Use icu already on system.]),,
@@ -4775,6 +4799,7 @@ if test "$USING_X11" != TRUE; then
     build_gstreamer_0_10=no
     test_tde=no
     test_kde4=no
+    test_kde5=no
     enable_cairo_canvas=no
     enable_gnome_vfs=no
 fi
@@ -7960,6 +7985,37 @@ AC_SUBST(LIBXML_CFLAGS)
 AC_SUBST(LIBXML_LIBS)
 AC_SUBST(XMLLINT)
 
+# ===================================================================
+# Check build the librsvg based SVG renderer
+# ===================================================================
+
+ENABLE_RSVG=
+SYSTEM_LIBRSVG=""
+LIBRSVG_CFLAGS=""
+LIBRSVG_LIBS=""
+
+if test "$test_rsvg" = "yes"; then
+    ENABLE_RSVG=TRUE
+    AC_MSG_CHECKING([which librsvg to use])
+    if test "$with_system_librsvg" = "yes"; then
+        AC_MSG_RESULT([external])
+        SYSTEM_LIBRSVG=TRUE
+        PKG_CHECK_MODULES([LIBRSVG], [librsvg-2.0])
+        LIBRSVG_CFLAGS=$(printf '%s' "${LIBRSVG_CFLAGS}" | sed -e "s/-I/${ISYSTEM?}/g")
+    else
+        AC_MSG_RESULT([internal])
+        SYSTEM_LIBRSVG=
+        BUILD_TYPE="$BUILD_TYPE LIBRSVG"
+        AC_MSG_ERROR([internal librsvg build currently not supported!])
+    fi
+fi
+
+AC_SUBST(ENABLE_RSVG)
+AC_SUBST(SYSTEM_LIBRSVG)
+AC_SUBST(LIBRSVG_CFLAGS)
+AC_SUBST(LIBRSVG_LIBS)
+
+
 # =====================================================================
 # Checking for a Python interpreter with version >= 2.6.
 # Build and runtime requires Python 3 compatible version (>= 2.6).
@@ -10097,6 +10153,14 @@ if test "x$enable_kde4" = "xyes"; then
 fi
 AC_SUBST(ENABLE_KDE4)
 
+ENABLE_KDE5=""
+if test "x$enable_kde5" = "xyes"; then
+    ENABLE_KDE5="TRUE"
+    AC_DEFINE(ENABLE_KDE5)
+    R="$R kde5"
+fi
+AC_SUBST(ENABLE_KDE5)
+
 ENABLE_HEADLESS=""
 if test "x$with_x" = "xno" -o "$CXX" = "emcc"; then
     ENABLE_HEADLESS="TRUE"
@@ -10924,7 +10988,7 @@ dnl ===================================================================
 TDE_CFLAGS=""
 TDE_LIBS=""
 if test "$_os" != "OpenBSD"; then
-    MOC="moc"
+    TDE_MOC="moc"
 fi
 if test "$test_tde" = "yes" -a "$ENABLE_TDE" = "TRUE"; then
     dnl Search paths for TQt and TDE
@@ -11044,7 +11108,7 @@ your TDE installation by exporting TDEDIR before running "configure".])
 fi
 AC_SUBST(TDE_CFLAGS)
 AC_SUBST(TDE_LIBS)
-AC_SUBST(MOC)
+AC_SUBST(TDE_MOC)
 
 dnl ===================================================================
 dnl KDE4 Integration
@@ -11054,108 +11118,108 @@ KDE4_CFLAGS=""
 KDE4_LIBS=""
 QMAKE4="qmake"
 MOC4="moc"
-KDE_GLIB_CFLAGS=""
-KDE_GLIB_LIBS=""
-KDE_HAVE_GLIB=""
+KDE4_GLIB_CFLAGS=""
+KDE4_GLIB_LIBS=""
+KDE4_HAVE_GLIB=""
 if test "$test_kde4" = "yes" -a "$ENABLE_KDE4" = "TRUE"; then
-    qt_incdirs="$QT4INC /usr/include/qt4 /usr/include $x_includes"
-    qt_libdirs="$QT4LIB /usr/lib/qt4 /usr/lib $x_libraries"
+    qt4_incdirs="$QT4INC /usr/include/qt4 /usr/include $x_includes"
+    qt4_libdirs="$QT4LIB /usr/lib/qt4 /usr/lib $x_libraries"
 
-    kde_incdirs="/usr/include /usr/include/kde4 $x_includes"
-    kde_libdirs="/usr/lib /usr/lib/kde4 /usr/lib/kde4/devel $x_libraries"
+    kde4_incdirs="/usr/include /usr/include/kde4 $x_includes"
+    kde4_libdirs="/usr/lib /usr/lib/kde4 /usr/lib/kde4/devel $x_libraries"
 
     if test -n "$supports_multilib"; then
-        qt_libdirs="$qt_libdirs /usr/lib64/qt4 /usr/lib64/qt /usr/lib64"
-        kde_libdirs="$kde_libdirs /usr/lib64 /usr/lib64/kde4 /usr/lib64/kde4/devel"
+        qt4_libdirs="$qt4_libdirs /usr/lib64/qt4 /usr/lib64/qt /usr/lib64"
+        kde4_libdirs="$kde4_libdirs /usr/lib64 /usr/lib64/kde4 /usr/lib64/kde4/devel"
     fi
 
     if test -n "$QTDIR"; then
-        qt_incdirs="$QTDIR/include $qt_incdirs"
+        qt4_incdirs="$QTDIR/include $qt4_incdirs"
         if test -z "$supports_multilib"; then
-            qt_libdirs="$QTDIR/lib $qt_libdirs"
+            qt4_libdirs="$QTDIR/lib $qt4_libdirs"
         else
-            qt_libdirs="$QTDIR/lib64 $QTDIR/lib $qt_libdirs"
+            qt4_libdirs="$QTDIR/lib64 $QTDIR/lib $qt4_libdirs"
         fi
     fi
     if test -n "$QT4DIR"; then
-        qt_incdirs="$QT4DIR/include $qt_incdirs"
+        qt4_incdirs="$QT4DIR/include $qt4_incdirs"
         if test -z "$supports_multilib"; then
-            qt_libdirs="$QT4DIR/lib $qt_libdirs"
+            qt4_libdirs="$QT4DIR/lib $qt4_libdirs"
         else
-            qt_libdirs="$QT4DIR/lib64 $QT4DIR/lib $qt_libdirs"
+            qt4_libdirs="$QT4DIR/lib64 $QT4DIR/lib $qt4_libdirs"
         fi
     fi
 
     if test -n "$KDEDIR"; then
-        kde_incdirs="$KDEDIR/include $kde_incdirs"
+        kde4_incdirs="$KDEDIR/include $kde4_incdirs"
         if test -z "$supports_multilib"; then
-            kde_libdirs="$KDEDIR/lib $kde_libdirs"
+            kde4_libdirs="$KDEDIR/lib $kde4_libdirs"
         else
-            kde_libdirs="$KDEDIR/lib64 $KDEDIR/lib $kde_libdirs"
+            kde4_libdirs="$KDEDIR/lib64 $KDEDIR/lib $kde4_libdirs"
         fi
     fi
     if test -n "$KDE4DIR"; then
-        kde_incdirs="$KDE4DIR/include $KDE4DIR/include/kde4 $kde_incdirs"
+        kde4_incdirs="$KDE4DIR/include $KDE4DIR/include/kde4 $kde4_incdirs"
         if test -z "$supports_multilib"; then
-            kde_libdirs="$KDE4DIR/lib $kde_libdirs"
+            kde4_libdirs="$KDE4DIR/lib $kde4_libdirs"
         else
-            kde_libdirs="$KDE4DIR/lib64 $KDE4DIR/lib $kde_libdirs"
+            kde4_libdirs="$KDE4DIR/lib64 $KDE4DIR/lib $kde4_libdirs"
         fi
     fi
 
-    qt_test_include="Qt/qobject.h"
-    qt_test_library="libQtNetwork.so"
-    kde_test_include="kwindowsystem.h"
-    kde_test_library="libsolid.so"
+    qt4_test_include="Qt/qobject.h"
+    qt4_test_library="libQtNetwork.so"
+    kde4_test_include="kwindowsystem.h"
+    kde4_test_library="libsolid.so"
 
     AC_MSG_CHECKING([for Qt4 headers])
-    qt_header_dir="no"
-    for inc_dir in $qt_incdirs; do
-        if test -r "$inc_dir/$qt_test_include"; then
-            qt_header_dir="$inc_dir"
+    qt4_header_dir="no"
+    for inc_dir in $qt4_incdirs; do
+        if test -r "$inc_dir/$qt4_test_include"; then
+            qt4_header_dir="$inc_dir"
             break
         fi
     done
 
-    AC_MSG_RESULT([$qt_header_dir])
-    if test "x$qt_header_dir" = "xno"; then
+    AC_MSG_RESULT([$qt4_header_dir])
+    if test "x$qt4_header_dir" = "xno"; then
         AC_MSG_ERROR([Qt4 headers not found.  Please specify the root of your Qt4 installation by exporting QT4DIR before running "configure".])
     fi
 
     dnl Check for qmake
-    AC_PATH_PROG( QMAKEQT4, qmake-qt4, no, [`dirname $qt_header_dir`/bin:$QT4DIR/bin:$PATH] )
+    AC_PATH_PROG( QMAKEQT4, qmake-qt4, no, [`dirname $qt4_header_dir`/bin:$QT4DIR/bin:$PATH] )
     QMAKE4="$QMAKEQT4"
     if test "$QMAKE4" = "no"; then
-        AC_PATH_PROG( QMAKE4, qmake, no, [`dirname $qt_header_dir`/bin:$QT4DIR/bin:$PATH] )
+        AC_PATH_PROG( QMAKE4, qmake, no, [`dirname $qt4_header_dir`/bin:$QT4DIR/bin:$PATH] )
         if test "$QMAKE4" = "no"; then
             AC_MSG_ERROR([Qmake not found.  Please specify
 the root of your Qt installation by exporting QT4DIR before running "configure".])
         fi
     fi
 
-    qt_libdirs="`$QMAKE4 -query QT_INSTALL_LIBS` $qt_libdirs"
+    qt4_libdirs="`$QMAKE4 -query QT_INSTALL_LIBS` $qt4_libdirs"
     AC_MSG_CHECKING([for Qt4 libraries])
-    qt_lib_dir="no"
-    for lib_dir in $qt_libdirs; do
-        if test -r "$lib_dir/$qt_test_library"; then
-            qt_lib_dir="$lib_dir"
-            PKG_CONFIG_PATH="$qt_lib_dir"/pkgconfig:$PKG_CONFIG_PATH
+    qt4_lib_dir="no"
+    for lib_dir in $qt4_libdirs; do
+        if test -r "$lib_dir/$qt4_test_library"; then
+            qt4_lib_dir="$lib_dir"
+            PKG_CONFIG_PATH="$qt4_lib_dir"/pkgconfig:$PKG_CONFIG_PATH
             break
         fi
     done
 
-    AC_MSG_RESULT([$qt_lib_dir])
+    AC_MSG_RESULT([$qt4_lib_dir])
 
-    if test "x$qt_lib_dir" = "xno"; then
+    if test "x$qt4_lib_dir" = "xno"; then
         AC_MSG_ERROR([Qt4 libraries not found.  Please specify the root of your Qt4 installation by exporting QT4DIR before running "configure".])
     fi
 
     dnl Check for Meta Object Compiler
 
-    AC_PATH_PROG( MOCQT4, moc-qt4, no, [`dirname $qt_lib_dir`/bin:$QT4DIR/bin:$PATH] )
+    AC_PATH_PROG( MOCQT4, moc-qt4, no, [`dirname $qt4_lib_dir`/bin:$QT4DIR/bin:$PATH] )
     MOC4="$MOCQT4"
     if test "$MOC4" = "no"; then
-        AC_PATH_PROG( MOC4, moc, no, [`dirname $qt_lib_dir`/bin:$QT4DIR/bin:$PATH] )
+        AC_PATH_PROG( MOC4, moc, no, [`dirname $qt4_lib_dir`/bin:$QT4DIR/bin:$PATH] )
         if test "$MOC4" = "no"; then
             AC_MSG_ERROR([Qt Meta Object Compiler not found.  Please specify
 the root of your Qt installation by exporting QT4DIR before running "configure".])
@@ -11164,36 +11228,36 @@ the root of your Qt installation by exporting QT4DIR before running "configure".
 
     dnl Check for KDE4 headers
     AC_MSG_CHECKING([for KDE4 headers])
-    kde_incdir="no"
-    for kde_check in $kde_incdirs; do
-        if test -r "$kde_check/$kde_test_include"; then
-            kde_incdir="$kde_check"
+    kde4_incdir="no"
+    for kde4_check in $kde4_incdirs; do
+        if test -r "$kde4_check/$kde4_test_include"; then
+            kde4_incdir="$kde4_check"
             break
         fi
     done
-    AC_MSG_RESULT([$kde_incdir])
-    if test "x$kde_incdir" = "xno"; then
+    AC_MSG_RESULT([$kde4_incdir])
+    if test "x$kde4_incdir" = "xno"; then
         AC_MSG_ERROR([KDE4 headers not found.  Please specify the root of your KDE4 installation by exporting KDE4DIR before running "configure".])
     fi
 
     dnl Check for KDE4 libraries
     AC_MSG_CHECKING([for KDE4 libraries])
-    kde_libdir="no"
-    for kde_check in $kde_libdirs; do
-        if test -r "$kde_check/$kde_test_library"; then
-            kde_libdir="$kde_check"
+    kde4_libdir="no"
+    for kde4_check in $kde4_libdirs; do
+        if test -r "$kde4_check/$kde4_test_library"; then
+            kde4_libdir="$kde4_check"
             break
         fi
     done
 
-    AC_MSG_RESULT([$kde_libdir])
-    if test "x$kde_libdir" = "xno"; then
+    AC_MSG_RESULT([$kde4_libdir])
+    if test "x$kde4_libdir" = "xno"; then
         AC_MSG_ERROR([KDE4 libraries not found.  Please specify the root of your KDE4 installation by exporting KDE4DIR before running "configure".])
     fi
 
     PKG_CHECK_MODULES([QT4],[QtNetwork QtGui])
-    KDE4_CFLAGS="-I$kde_incdir $QT4_CFLAGS -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT"
-    KDE4_LIBS="-L$kde_libdir -lkio -lkfile -lkdeui -lkdecore -L$qt_lib_dir $QT4_LIBS"
+    KDE4_CFLAGS="-I$kde4_incdir $QT4_CFLAGS -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT"
+    KDE4_LIBS="-L$kde4_libdir -lkio -lkfile -lkdeui -lkdecore -L$qt4_lib_dir $QT4_LIBS"
     KDE4_CFLAGS=$(printf '%s' "$KDE4_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
     FilterLibs "$KDE4_LIBS"
     KDE4_LIBS="$filteredlibs"
@@ -11214,14 +11278,14 @@ int main(int argc, char **argv) {
     AC_LANG_POP([C++])
 
     # Glib is needed for properly handling Qt event loop with Qt's Glib integration enabled.
-    # Sets also KDE_GLIB_CFLAGS/KDE_GLIB_LIBS if successful.
-    PKG_CHECK_MODULES(KDE_GLIB,[glib-2.0 >= 2.4],
+    # Sets also KDE4_GLIB_CFLAGS/KDE4_GLIB_LIBS if successful.
+    PKG_CHECK_MODULES(KDE4_GLIB,[glib-2.0 >= 2.4],
         [
-            KDE_HAVE_GLIB=1
-            AC_DEFINE(KDE_HAVE_GLIB,1)
-            KDE_GLIB_CFLAGS=$(printf '%s' "$KDE_GLIB_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
-            FilterLibs "${KDE_GLIB_LIBS}"
-            KDE_GLIB_LIBS="${filteredlibs}"
+            KDE4_HAVE_GLIB=1
+            AC_DEFINE(KDE4_HAVE_GLIB,1)
+            KDE4_GLIB_CFLAGS=$(printf '%s' "$KDE4_GLIB_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
+            FilterLibs "${KDE4_GLIB_LIBS}"
+            KDE4_GLIB_LIBS="${filteredlibs}"
 
             qt4_fix_warning=
 
@@ -11318,9 +11382,246 @@ fi
 AC_SUBST(KDE4_CFLAGS)
 AC_SUBST(KDE4_LIBS)
 AC_SUBST(MOC4)
-AC_SUBST(KDE_GLIB_CFLAGS)
-AC_SUBST(KDE_GLIB_LIBS)
-AC_SUBST(KDE_HAVE_GLIB)
+AC_SUBST(KDE4_GLIB_CFLAGS)
+AC_SUBST(KDE4_GLIB_LIBS)
+AC_SUBST(KDE4_HAVE_GLIB)
+
+dnl ===================================================================
+dnl KDE5 Integration
+dnl ===================================================================
+
+KF5_CFLAGS=""
+KF5_LIBS=""
+QMAKE5="qmake"
+KF5_CONFIG="kf5-config"
+MOC5="moc"
+KF5_GLIB_CFLAGS=""
+KF5_GLIB_LIBS=""
+KF5_HAVE_GLIB=""
+if test "$test_kde5" = "yes" -a "$ENABLE_KDE5" = "TRUE"; then
+    qt5_incdirs="$QT5INC /usr/include/qt5 /usr/include $x_includes"
+    qt5_libdirs="$QT5LIB /usr/lib/qt5 /usr/lib $x_libraries"
+
+    kf5_incdirs="$KF5INC /usr/include /usr/include/KF5 $x_includes"
+    kf5_libdirs="$KF5LIB /usr/lib /usr/lib/kf5 /usr/lib/kf5/devel $x_libraries"
+
+    if test -n "$supports_multilib"; then
+        qt5_libdirs="$qt5_libdirs /usr/lib64/qt5 /usr/lib64/qt /usr/lib64"
+        kf5_libdirs="$kf5_libdirs /usr/lib64 /usr/lib64/kf5 /usr/lib64/kf5/devel"
+    fi
+
+    qt5_test_include="QtWidgets/qapplication.h"
+    qt5_test_library="libQt5Widgets.so"
+    kf5_test_include="kcoreaddons_version.h"
+    kf5_test_library="libKF5CoreAddons.so"
+
+    dnl Check for qmake
+    AC_PATH_PROGS( QMAKE5, [qmake-qt5 qmake], no, [$QT5DIR/bin:$PATH] )
+    if test "$QMAKE5" != "no"; then
+        qt5_incdirs="`$QMAKE5 -query QT_INSTALL_HEADERS` $qt5_incdirs"
+        qt5_libdirs="`$QMAKE5 -query QT_INSTALL_LIBS` $qt5_libdirs"
+    fi
+
+    AC_MSG_CHECKING([for Qt5 headers])
+    qt5_incdir="no"
+    for inc_dir in $qt5_incdirs; do
+        if test -r "$inc_dir/$qt5_test_include"; then
+            qt5_incdir="$inc_dir"
+            break
+        fi
+    done
+    AC_MSG_RESULT([$qt5_incdir])
+    if test "x$qt5_incdir" = "xno"; then
+        AC_MSG_ERROR([Qt5 headers not found.  Please specify the root of your Qt5 installation by exporting QT5DIR before running "configure".])
+    fi
+
+    AC_MSG_CHECKING([for Qt5 libraries])
+    qt5_libdir="no"
+    for lib_dir in $qt5_libdirs; do
+        if test -r "$lib_dir/$qt5_test_library"; then
+            qt5_libdir="$lib_dir"
+            break
+        fi
+    done
+    AC_MSG_RESULT([$qt5_libdir])
+    if test "x$qt5_libdir" = "xno"; then
+        AC_MSG_ERROR([Qt5 libraries not found.  Please specify the root of your Qt5 installation by exporting QT5DIR before running "configure".])
+    fi
+    kf5_libdirs="$qt5_libdir $kf5_libdirs"
+
+    dnl Check for Meta Object Compiler
+
+    AC_PATH_PROGS( MOC5, [moc-qt5 moc], no, [`dirname $qt5_libdir`/bin:$QT5DIR/bin:$PATH] )
+    if test "$MOC5" = "no"; then
+        AC_MSG_ERROR([Qt Meta Object Compiler not found.  Please specify
+the root of your Qt installation by exporting QT5DIR before running "configure".])
+    fi
+
+    dnl kf5 KDE4 support compatibility installed
+    AC_PATH_PROG( KF5_CONFIG, $KF5_CONFIG, no, )
+    if test "$KF5_CONFIG" != "no"; then
+        kf5_incdirs="`$KF5_CONFIG --path include` $kf5_incdirs"
+        kf5_libdirs="`$KF5_CONFIG --path lib` $kf5_libdirs"
+    fi
+
+    dnl Check for KF5 headers
+    AC_MSG_CHECKING([for KF5 headers])
+    kf5_incdir="no"
+    for kf5_check in $kf5_incdirs; do
+        if test -r "$kf5_check/$kf5_test_include"; then
+            kf5_incdir="$kf5_check"
+            break
+        fi
+    done
+    AC_MSG_RESULT([$kf5_incdir])
+    if test "x$kf5_incdir" = "xno"; then
+        AC_MSG_ERROR([KF5 headers not found.  Please specify the root of your KF5 installation by exporting KF5DIR before running "configure".])
+    fi
+
+    dnl Check for KF5 libraries
+    AC_MSG_CHECKING([for KF5 libraries])
+    kf5_libdir="no"
+    for kf5_check in $kf5_libdirs; do
+        if test -r "$kf5_check/$kf5_test_library"; then
+            kf5_libdir="$kf5_check"
+            break
+        fi
+    done
+
+    AC_MSG_RESULT([$kf5_libdir])
+    if test "x$kf5_libdir" = "xno"; then
+        AC_MSG_ERROR([KF5 libraries not found.  Please specify the root of your KF5 installation by exporting KF5DIR before running "configure".])
+    fi
+
+    PKG_CHECK_MODULES(KF5_XCB,[xcb],,[AC_MSG_ERROR([XCB not installed])])
+
+    KF5_CFLAGS="-I$kf5_incdir -I$kf5_incdir/KCoreAddons -I$kf5_incdir/KI18n -I$kf5_incdir/KConfigCore -I$kf5_incdir/KWindowSystem -I$kf5_incdir/KIOCore -I$qt5_incdir -I$qt5_incdir/QtCore -I$qt5_incdir/QtGui -I$qt5_incdir/QtWidgets -I$qt5_incdir/QtNetwork -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT $KF5_XCB_CFLAGS"
+    KF5_LIBS="-L$kf5_libdir -lKF5CoreAddons -lKF5I18n -lKF5ConfigCore -lKF5WindowSystem -lKF5KIOCore -L$qt5_libdir -lQt5Core -lQt5Gui -lQt5Widgets -lQt5Network -lQt5X11Extras $KF5_XCB_LIBS"
+    KF5_CFLAGS=$(printf '%s' "$KF5_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
+
+    AC_LANG_PUSH([C++])
+    save_CXXFLAGS=$CXXFLAGS
+    CXXFLAGS="$CXXFLAGS $KF5_CFLAGS"
+    AC_MSG_CHECKING([whether KDE is >= 5.0])
+       AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#include <kcoreaddons_version.h>
+
+int main(int argc, char **argv) {
+       if (KCOREADDONS_VERSION_MAJOR == 5 && KCOREADDONS_VERSION_MINOR >= 0) return 0;
+       else return 1;
+}
+       ]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([KDE version too old])],[])
+    CXXFLAGS=$save_CXXFLAGS
+    AC_LANG_POP([C++])
+
+    # Glib is needed for properly handling Qt event loop with Qt's Glib integration enabled.
+    # Sets also KF5_GLIB_CFLAGS/KF5_GLIB_LIBS if successful.
+    PKG_CHECK_MODULES(KF5_GLIB,[glib-2.0 >= 2.4],
+        [
+            KF5_HAVE_GLIB=1
+            AC_DEFINE(KF5_HAVE_GLIB,1)
+            KF5_GLIB_CFLAGS=$(printf '%s' "$KF5_GLIB_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
+            FilterLibs "${KF5_GLIB_LIBS}"
+            KF5_GLIB_LIBS="${filteredlibs}"
+
+            qt4_fix_warning=
+
+            AC_LANG_PUSH([C++])
+            # tst_exclude_socket_notifiers.moc:70:28: runtime error: member access within address 0x60d00000bb20 which does not point to an object of type 'QObjectData'
+            # 0x60d00000bb20: note: object is of type 'QObjectPrivate'
+            #  02 00 80 3a  90 8a 4e d2 3a 00 00 00  f0 b4 b9 a7 ff 7f 00 00  00 00 00 00 00 00 00 00  20 d8 4e d2
+            #               ^~~~~~~~~~~~~~~~~~~~~~~
+            #               vptr for 'QObjectPrivate'
+            save_CXX=$CXX
+            CXX=$(printf %s "$CXX" \
+                | sed -e 's/-fno-sanitize-recover\(=[[0-9A-Za-z,_-]]*\)*//')
+            save_CXXFLAGS=$CXXFLAGS
+            CXXFLAGS="$CXXFLAGS $KF5_CFLAGS"
+            save_LIBS=$LIBS
+            LIBS="$LIBS $KF5_LIBS"
+            AC_MSG_CHECKING([whether Qt has fixed ExcludeSocketNotifiers])
+
+            # Prepare meta object data
+            TSTBASE="tst_exclude_socket_notifiers"
+            TSTMOC="${SRC_ROOT}/vcl/unx/kde5/${TSTBASE}"
+            ln -fs "${TSTMOC}.hxx"
+            $MOC5 "${TSTBASE}.hxx" -o "${TSTBASE}.moc"
+
+            AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#include <cstdlib>
+#include "tst_exclude_socket_notifiers.moc"
+
+int main(int argc, char *argv[])
+{
+    QCoreApplication app(argc, argv);
+    exit(tst_processEventsExcludeSocket());
+    return 0;
+}
+            ]])],[
+                AC_MSG_RESULT([yes])
+            ],[
+                AC_MSG_RESULT([no])
+                AC_MSG_WARN([native KF5 file pickers will be disabled at runtime])
+                if test -z "$qt5_fix_warning"; then
+                    add_warning "native KF5 file pickers will be disabled at runtime, Qt5 fixes needed"
+                fi
+                qt5_fix_warning=1
+                add_warning "  https://bugreports.qt-project.org/browse/QTBUG-37380 (needed)"
+            ])
+
+            # Remove meta object data
+            rm -f "${TSTBASE}."*
+
+            AC_MSG_CHECKING([whether Qt avoids QClipboard recursion caused by posted events])
+
+            # Prepare meta object data
+            TSTBASE="tst_exclude_posted_events"
+            TSTMOC="${SRC_ROOT}/vcl/unx/kde5/${TSTBASE}"
+            ln -fs "${TSTMOC}.hxx"
+            $MOC5 "${TSTBASE}.hxx" -o "${TSTBASE}.moc"
+
+            AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#include <cstdlib>
+#include "tst_exclude_posted_events.moc"
+
+int main(int argc, char *argv[])
+{
+    QCoreApplication app(argc, argv);
+    exit(tst_excludePostedEvents());
+    return 0;
+}
+            ]])],[
+                AC_MSG_RESULT([yes])
+            ],[
+                AC_MSG_RESULT([no])
+                AC_MSG_WARN([native KF5 file pickers will be disabled at runtime])
+                if test -z "$qt5_fix_warning"; then
+                    add_warning "native KF5 file pickers will be disabled at runtime, Qt5 fixes needed"
+                fi
+                qt5_fix_warning=1
+                add_warning "  https://bugreports.qt-project.org/browse/QTBUG-34614 (needed)"
+            ])
+
+            # Remove meta object data
+            rm -f "${TSTBASE}."*
+
+            if test -n "$qt5_fix_warning"; then
+                add_warning "  https://bugreports.qt-project.org/browse/QTBUG-38585 (recommended)"
+            fi
+
+            LIBS=$save_LIBS
+            CXXFLAGS=$save_CXXFLAGS
+            CXX=$save_CXX
+            AC_LANG_POP([C++])
+        ],
+        AC_MSG_WARN([[No Glib found, KF5 support will not use native file pickers!]]))
+fi
+AC_SUBST(KF5_CFLAGS)
+AC_SUBST(KF5_LIBS)
+AC_SUBST(MOC5)
+AC_SUBST(KF5_GLIB_CFLAGS)
+AC_SUBST(KF5_GLIB_LIBS)
+AC_SUBST(KF5_HAVE_GLIB)
 
 dnl ===================================================================
 dnl Test whether to include Evolution 2 support
@@ -11522,6 +11823,8 @@ test_font_map()
     fi
 }
 
+
+
 dnl ===================================================================
 dnl Test whether to include fonts
 dnl ===================================================================
@@ -12970,6 +13273,7 @@ AC_CONFIG_HEADERS([config_host/config_locales.h])
 AC_CONFIG_HEADERS([config_host/config_mpl.h])
 AC_CONFIG_HEADERS([config_host/config_orcus.h])
 AC_CONFIG_HEADERS([config_host/config_kde4.h])
+AC_CONFIG_HEADERS([config_host/config_kde5.h])
 AC_CONFIG_HEADERS([config_host/config_mingw.h])
 AC_CONFIG_HEADERS([config_host/config_oox.h])
 AC_CONFIG_HEADERS([config_host/config_opengl.h])
diff --git a/cui/Library_cui.mk b/cui/Library_cui.mk
index 85a9bf0..bb7d811 100644
--- a/cui/Library_cui.mk
+++ b/cui/Library_cui.mk
@@ -22,6 +22,7 @@ $(eval $(call gb_Library_add_defs,cui,\
     $(if $(filter TRUE,$(ENABLE_GTK)),-DENABLE_GTK) \
     $(if $(filter TRUE,$(ENABLE_TDE)),-DENABLE_TDE) \
     $(if $(filter TRUE,$(ENABLE_KDE4)),-DENABLE_KDE4) \
+    $(if $(filter TRUE,$(ENABLE_KDE5)),-DENABLE_KDE5) \
 ))
 
 $(eval $(call gb_Library_use_custom_headers,cui,\
diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index dfb517f..8fab36b 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -198,7 +198,15 @@ namespace
         {
             const OUString &rDesktopEnvironment = Application::GetDesktopEnvironment();
 
-            if ( rDesktopEnvironment.equalsIgnoreAsciiCase("kde4") )
+            if ( rDesktopEnvironment.equalsIgnoreAsciiCase("kde5") )
+            {
+                #if ENABLE_KDE4
+                return OUString("com.sun.star.ui.dialogs.KDE5FilePicker" );
+                #else
+                return OUString();
+                #endif
+            }
+            else if ( rDesktopEnvironment.equalsIgnoreAsciiCase("kde4") )
             {
                 #if ENABLE_KDE4
                 return OUString("com.sun.star.ui.dialogs.KDE4FilePicker" );
diff --git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
index be7ff65..d7e4f70 100644
--- a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
+++ b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
@@ -189,6 +189,8 @@ namespace
     }
 } // end of anonymous namespace
 
+#include <iostream>
+
 namespace drawinglayer
 {
     namespace primitive2d
@@ -255,11 +257,31 @@ namespace drawinglayer
                             // apply created object transformation
                             aEmbedSvg = rTransform * aEmbedSvg;
 
+#if 0
                             // add Svg primitives embedded
                             aRetval.realloc(1);
                             aRetval[0] = new TransformPrimitive2D(
                                 aEmbedSvg,
                                 rGraphic.getSvgData()->getPrimitive2DSequence());
+#else
+                            aRetval.realloc(1);
+                            // rSVG can do the scaling
+                            basegfx::B2DTuple rScale, rTranslate;
+                            double rRotate, rShearX;
+                            aEmbedSvg.decompose( rScale, rTranslate, rRotate, rShearX );
+
+                            basegfx::B2DRange aRange( 0.0, 0.0,
+                                rSvgRange.getWidth() * rScale.getX(),
+                                rSvgRange.getHeight() * rScale.getY() );
+std::cout << aRange << "\n";
+                            rGraphic.getSvgData()->setRange( aRange );
+                            aEmbedSvg = rTransform;
+                            aEmbedSvg.scale( 1.0, 1.0 );
+                            aRetval[0] = new BitmapPrimitive2D(
+                                rGraphic.getSvgData()->getReplacement(),
+                                aEmbedSvg);
+//                                rTransform);
+#endif
                         }
                     }
                     else
diff --git a/include/vcl/svgdata.hxx b/include/vcl/svgdata.hxx
index 84a625e..2d2c91f 100644
--- a/include/vcl/svgdata.hxx
+++ b/include/vcl/svgdata.hxx
@@ -22,6 +22,7 @@
 
 #include <basegfx/range/b2drange.hxx>
 #include <com/sun/star/graphic/XPrimitive2D.hpp>
+#include <com/sun/star/graphic/XGraphicRasterizer.hpp>
 #include <vcl/bitmapex.hxx>
 #include <rtl/ustring.hxx>
 
@@ -53,6 +54,8 @@ private:
                             maSequence;
     BitmapEx                maReplacement;
 
+    css::uno::Reference< css::graphic::XGraphicRasterizer >  mxRasterizer;
+
     // on demand creators
     void ensureReplacement();
     void ensureSequenceAndRange();
@@ -73,6 +76,7 @@ public:
     const basegfx::B2DRange& getRange() const;
     const css::uno::Sequence< css::uno::Reference< css::graphic::XPrimitive2D > >& getPrimitive2DSequence() const;
     const BitmapEx& getReplacement() const;
+    void setRange(basegfx::B2DRange& range);
 };
 
 typedef std::shared_ptr< SvgData > SvgDataPtr;
diff --git a/scp2/InstallScript_setup_osl.mk b/scp2/InstallScript_setup_osl.mk
index 593b1af..ca9f4cf 100644
--- a/scp2/InstallScript_setup_osl.mk
+++ b/scp2/InstallScript_setup_osl.mk
@@ -36,7 +36,7 @@ $(eval $(call gb_InstallScript_use_modules,setup_osl,\
 	$(if $(filter TRUE,$(ENABLE_EVOAB2) $(ENABLE_GIO) $(ENABLE_GTK) $(ENABLE_GTK3)),\
 		scp2/gnome \
 	) \
-	$(if $(filter TRUE,$(ENABLE_KDE4)),\
+	$(if $(filter TRUE,$(ENABLE_KDE4) $(ENABLE_KDE5)),\
 		scp2/kde \
 	) \
 	$(if $(filter TRUE,$(ENABLE_ONLINE_UPDATE)),\
diff --git a/scp2/Module_scp2.mk b/scp2/Module_scp2.mk
index 5acaa0c..6320483 100644
--- a/scp2/Module_scp2.mk
+++ b/scp2/Module_scp2.mk
@@ -42,7 +42,7 @@ $(eval $(call gb_Module_add_targets,scp2,\
 	$(if $(filter TRUE,$(ENABLE_EVOAB2) $(ENABLE_GIO) $(ENABLE_GTK) $(ENABLE_GTK3)),\
 		InstallModule_gnome \
 	) \
-	$(if $(filter TRUE,$(ENABLE_KDE4)),\
+	$(if $(filter TRUE,$(ENABLE_KDE4) $(ENABLE_KDE5)),\
 		InstallModule_kde \
 	) \
 	$(if $(filter TRUE,$(ENABLE_TDE)),\
diff --git a/shell/Module_shell.mk b/shell/Module_shell.mk
index 44d0a61..2d0d834 100644
--- a/shell/Module_shell.mk
+++ b/shell/Module_shell.mk
@@ -36,6 +36,12 @@ $(eval $(call gb_Module_add_targets,shell,\
 ))
 endif
 
+ifeq ($(ENABLE_KDE5),TRUE)
+$(eval $(call gb_Module_add_targets,shell,\
+	Library_kde5be \
+))
+endif
+
 ifeq ($(ENABLE_TDE),TRUE)
 $(eval $(call gb_Module_add_targets,shell,\
 	Library_tdebe \
diff --git a/shell/source/backends/kde4be/kde4access.cxx b/shell/source/backends/kde4be/kde4access.cxx
index bebb528..b67d5aa 100644
--- a/shell/source/backends/kde4be/kde4access.cxx
+++ b/shell/source/backends/kde4be/kde4access.cxx
@@ -19,11 +19,13 @@
 
 #include "sal/config.h"
 
-#include "QFont"
-#include "QString"
-#include "kemailsettings.h"
-#include "kglobalsettings.h"
-#include "kprotocolmanager.h"
+#include "kde4access.hxx"
+
+#include <QtGui/QFont>
+#include <QtCore/QString>
+#include <kemailsettings.h>
+#include <kglobalsettings.h>
+#include <kprotocolmanager.h>
 
 #include "com/sun/star/uno/Any.hxx"
 #include "cppu/unotype.hxx"
@@ -32,8 +34,6 @@
 #include "rtl/string.h"
 #include "rtl/ustring.hxx"
 
-#include "kde4access.hxx"
-
 #define SPACE      ' '
 #define COMMA      ','
 #define SEMI_COLON ';'
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index b90fb7f..99924fb 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -182,6 +182,7 @@ $(call gb_CppunitTest_get_target,$(1)) : $(if $(filter $(2),$(true)),, \
         $(if $(ENABLE_GTK),$(call gb_Library_get_target,vclplug_gtk)) \
         $(if $(ENABLE_GTK3),$(call gb_Library_get_target,vclplug_gtk3)) \
         $(if $(ENABLE_KDE4),$(call gb_Library_get_target,vclplug_kde4)) \
+        $(if $(ENABLE_KDE5),$(call gb_Library_get_target,vclplug_kde5)) \
         $(if $(ENABLE_TDE),$(call gb_Library_get_target,vclplug_tde)))
 endif
 
diff --git a/sysui/CustomTarget_share.mk b/sysui/CustomTarget_share.mk
index c81edd5..8cc67e4 100644
--- a/sysui/CustomTarget_share.mk
+++ b/sysui/CustomTarget_share.mk
@@ -16,6 +16,8 @@ else ifeq ($(ENABLE_TDE),TRUE)
 	brand_URIPARAM := --urls
 else ifeq ($(ENABLE_KDE4),TRUE)
 	brand_URIPARAM := --urls
+else ifeq ($(ENABLE_KDE5),TRUE)
+	brand_URIPARAM := --urls
 else
 	brand_URIPARAM :=
 endif
diff --git a/vcl/CustomTarget_tde_moc.mk b/vcl/CustomTarget_tde_moc.mk
index c6a44edefe..72c8699 100644
--- a/vcl/CustomTarget_tde_moc.mk
+++ b/vcl/CustomTarget_tde_moc.mk
@@ -16,6 +16,6 @@ $(call gb_CustomTarget_get_workdir,vcl/unx/kde/fpicker)/kdefilepicker.moc.cxx :\
 		$(SRCDIR)/vcl/unx/kde/fpicker/kdefilepicker.hxx \
 		| $(call gb_CustomTarget_get_workdir,vcl/unx/kde/fpicker)/.dir
 	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),MOC,1)
-	cat $< | grep -v 'FILTER_OUT_KDE' | $(MOC) -o $@ -f$<
+	cat $< | grep -v 'FILTER_OUT_KDE' | $(TDE_MOC) -o $@ -f$<
 
 # vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index 25f2d85..52cda6d 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -367,6 +367,7 @@ $(eval $(call gb_Library_add_exception_objects,vcl,\
     vcl/source/components/dtranscomp \
     vcl/source/components/factory \
     vcl/source/components/fontident \
+    vcl/source/components/rasterizer_rsvg \
     vcl/source/filter/FilterConfigCache \
     vcl/source/filter/FilterConfigItem \
     vcl/source/filter/graphicfilter \
diff --git a/vcl/Library_vclplug_kde4.mk b/vcl/Library_vclplug_kde4.mk
index 645d6c9..30c4069 100644
--- a/vcl/Library_vclplug_kde4.mk
+++ b/vcl/Library_vclplug_kde4.mk
@@ -64,13 +64,13 @@ $(eval $(call gb_Library_add_libs,vclplug_kde4,\
 	-lICE \
 ))
 
-ifneq ($(KDE_HAVE_GLIB),)
+ifneq ($(KDE4_HAVE_GLIB),)
 $(eval $(call gb_Library_add_defs,vclplug_kde4,\
-    $(KDE_GLIB_CFLAGS) \
+    $(KDE4_GLIB_CFLAGS) \
 ))
 
 $(eval $(call gb_Library_add_libs,vclplug_kde4,\
-    $(KDE_GLIB_LIBS) \
+    $(KDE4_GLIB_LIBS) \
 ))
 endif
 
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index 1480504..82c076e 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -79,6 +79,12 @@ $(eval $(call gb_Module_add_targets,vcl,\
     Library_vclplug_kde4 \
 ))
 endif
+ifneq ($(ENABLE_KDE5),)
+$(eval $(call gb_Module_add_targets,vcl,\
+    CustomTarget_kde5_moc \
+    Library_vclplug_kde5 \
+))
+endif
 endif
 
 ifeq ($(OS),MACOSX)
diff --git a/vcl/inc/factory.hxx b/vcl/inc/factory.hxx
index 056a6c8..49cfbb5 100644
--- a/vcl/inc/factory.hxx
+++ b/vcl/inc/factory.hxx
@@ -73,6 +73,15 @@ OUString SAL_CALL DropTarget_getImplementationName();
 css::uno::Reference<css::uno::XInterface> SAL_CALL DropTarget_createInstance(
     css::uno::Reference<css::lang::XMultiServiceFactory > const &);
 
+namespace rsvg {
+
+    css::uno::Sequence<OUString> SAL_CALL
+        Rasterizer_getSupportedServiceNames();
+    OUString SAL_CALL Rasterizer_getImplementationName();
+    css::uno::Reference<css::uno::XInterface> SAL_CALL
+        Rasterizer_createInstance(
+            css::uno::Reference<css::lang::XMultiServiceFactory > const &);
+}
 }
 
 
diff --git a/vcl/inc/vclpluginapi.h b/vcl/inc/vclpluginapi.h
index 86fbf17..d274b0b 100644
--- a/vcl/inc/vclpluginapi.h
+++ b/vcl/inc/vclpluginapi.h
@@ -53,6 +53,12 @@
 #define VCLPLUG_KDE4_PUBLIC SAL_DLLPUBLIC_IMPORT
 #endif
 
+#if defined VCLPLUG_KDE5_IMPLEMENTATION
+#define VCLPLUG_KDE5_PUBLIC SAL_DLLPUBLIC_EXPORT
+#else
+#define VCLPLUG_KDE5_PUBLIC SAL_DLLPUBLIC_IMPORT
+#endif
+
 #if defined VCLPLUG_SVP_IMPLEMENTATION
 #define VCLPLUG_SVP_PUBLIC SAL_DLLPUBLIC_EXPORT
 #else
diff --git a/vcl/source/components/factory.cxx b/vcl/source/components/factory.cxx
index c6096b4..943af81 100644
--- a/vcl/source/components/factory.cxx
+++ b/vcl/source/components/factory.cxx
@@ -74,6 +74,12 @@ extern "C" {
                     xMgr, vcl::DropTarget_getImplementationName(), vcl::DropTarget_createInstance,
                     vcl::DropTarget_getSupportedServiceNames() );
             }
+            else if( vcl::rsvg::Rasterizer_getImplementationName().equalsAscii( pImplementationName ) )
+            {
+                xFactory = ::cppu::createSingleFactory(
+                    xMgr, vcl::rsvg::Rasterizer_getImplementationName(), vcl::rsvg::Rasterizer_createInstance,
+                    vcl::rsvg::Rasterizer_getSupportedServiceNames() );
+            }
             if( xFactory.is() )
             {
                 xFactory->acquire();
diff --git a/vcl/source/gdi/svgdata.cxx b/vcl/source/gdi/svgdata.cxx
index cd1614e..f985c42 100644
--- a/vcl/source/gdi/svgdata.cxx
+++ b/vcl/source/gdi/svgdata.cxx
@@ -93,7 +93,38 @@ void SvgData::ensureReplacement()
 
     if(maReplacement.IsEmpty() && maSequence.hasElements())
     {
-        maReplacement = convertPrimitive2DSequenceToBitmapEx(maSequence, getRange());
+#if 1
+        bool fallback = true;
+        try
+        {
+            uno::Reference< uno::XComponentContext > xContext(::comphelper::getProcessComponentContext());
+
+            if( !mxRasterizer.is() )
+            {
+                uno::Reference< lang::XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
+                mxRasterizer.set( xFactory->createInstance( "com.sun.star.graphic.GraphicRasterizer_RSVG" ), uno::UNO_QUERY );
+            }
+            if( mxRasterizer.is() )
+            {
+                const uno::Reference< io::XInputStream > xIStm(new comphelper::SequenceInputStream(maSvgDataArray));
+                const Size aDPI(Application::GetDefaultDevice()->LogicToPixel(Size(1, 1), MAP_INCH));
+                awt::Size aSizePixel;
+                if( xIStm.is() && mxRasterizer->initializeData( xIStm, aDPI.Width(), aDPI.Height(), aSizePixel ) )
+                {
+                    const uno::Sequence< beans::PropertyValue > aPropertySeq;
+                    const Graphic aRasteredGraphic( mxRasterizer->rasterize(
+                        getRange().getWidth(), getRange().getHeight(), 0.0, 0.0, 0.0, aPropertySeq ) );
+                    maReplacement = aRasteredGraphic.GetBitmapEx();
+                    fallback = false;
+                }
+            }
+        }
+        catch(const uno::Exception&)
+        {
+        }
+        if (fallback)
+#endif
+            maReplacement = convertPrimitive2DSequenceToBitmapEx(maSequence, getRange());
     }
 }
 
@@ -190,6 +221,16 @@ const basegfx::B2DRange& SvgData::getRange() const
     return maRange;
 }
 
+void SvgData::setRange(basegfx::B2DRange& range)
+{
+    const_cast< SvgData* >(this)->ensureSequenceAndRange();
+    if (maRange != range)
+    {
+        maRange = range;
+        maReplacement.SetEmpty();
+    }
+}
+
 const css::uno::Sequence< css::uno::Reference< css::graphic::XPrimitive2D > >& SvgData::getPrimitive2DSequence() const
 {
     const_cast< SvgData* >(this)->ensureSequenceAndRange();
diff --git a/vcl/unx/generic/plugadapt/salplug.cxx b/vcl/unx/generic/plugadapt/salplug.cxx
index c51d1ec..cb16479 100644
--- a/vcl/unx/generic/plugadapt/salplug.cxx
+++ b/vcl/unx/generic/plugadapt/salplug.cxx
@@ -99,7 +99,7 @@ static SalInstance* tryInstance( const OUString& rModuleBase, bool bForce = fals
                  * #i109007# KDE3 seems to have the same problem.
                  * And same applies for KDE4.
                  */
-                if( rModuleBase == "gtk" || rModuleBase == "gtk3" || rModuleBase == "tde" || rModuleBase == "kde" || rModuleBase == "kde4" )
+                if( rModuleBase == "gtk" || rModuleBase == "gtk3" || rModuleBase == "tde" || rModuleBase == "kde" || rModuleBase == "kde4" || rModuleBase == "kde5" )
                 {
                     pCloseModule = nullptr;
                 }
@@ -168,6 +168,9 @@ static SalInstance* autodetect_plugin()
     static const char* const pTDEFallbackList[] =
     {
         "tde",
+#if ENABLE_KDE5
+        "kde5",
+#endif
 #if ENABLE_KDE4
         "kde4",
 #endif
@@ -176,6 +179,9 @@ static SalInstance* autodetect_plugin()
 
     static const char* const pKDEFallbackList[] =
     {
+#if ENABLE_KDE5
+        "kde5",
+#endif
 #if ENABLE_KDE4
         "kde4",
 #endif
diff --git a/vcl/unx/kde4/KDE4FilePicker.cxx b/vcl/unx/kde4/KDE4FilePicker.cxx
index d1c718d..9aa4817 100644
--- a/vcl/unx/kde4/KDE4FilePicker.cxx
+++ b/vcl/unx/kde4/KDE4FilePicker.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include "KDE4FilePicker.hxx"
+
 #include <com/sun/star/lang/DisposedException.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <cppuhelper/interfacecontainer.h>
@@ -36,7 +38,6 @@
 
 #include "osl/file.h"
 
-#include "KDE4FilePicker.hxx"
 #include "FPServiceInfo.hxx"
 #include "VCLKDEApplication.hxx"
 
@@ -49,10 +50,10 @@
 #include <kservicetypetrader.h>
 #include <kmessagebox.h>
 
-#include <qclipboard.h>
-#include <QWidget>
-#include <QCheckBox>
-#include <QGridLayout>
+#include <QtGui/QClipboard>
+#include <QtGui/QWidget>
+#include <QtGui/QCheckBox>
+#include <QtGui/QGridLayout>
 
 #undef Region
 
@@ -82,7 +83,7 @@ using namespace ::com::sun::star::uno;
 
 // helper functions
 
-#include <QDebug>
+#include <QtCore/QDebug>
 
 namespace
 {
diff --git a/vcl/unx/kde4/KDE4FilePicker.hxx b/vcl/unx/kde4/KDE4FilePicker.hxx
index 65cb01a..ebc7a60 100644
--- a/vcl/unx/kde4/KDE4FilePicker.hxx
+++ b/vcl/unx/kde4/KDE4FilePicker.hxx
@@ -32,9 +32,9 @@
 
 #include <rtl/ustrbuf.hxx>
 
-#include <QObject>
-#include <QString>
-#include <QHash>
+#include <QtCore/QObject>
+#include <QtCore/QString>
+#include <QtCore/QHash>
 
 class KFileDialog;
 class QWidget;
diff --git a/vcl/unx/kde4/KDEData.cxx b/vcl/unx/kde4/KDEData.cxx
index b180695..71267a0 100644
--- a/vcl/unx/kde4/KDEData.cxx
+++ b/vcl/unx/kde4/KDEData.cxx
@@ -17,7 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <QStyle>
+#include <QtGui/QStyle>
 #include <kapplication.h>
 
 #undef Region
diff --git a/vcl/unx/kde4/KDESalFrame.cxx b/vcl/unx/kde4/KDESalFrame.cxx
index 25a401f..d02779a 100644
--- a/vcl/unx/kde4/KDESalFrame.cxx
+++ b/vcl/unx/kde4/KDESalFrame.cxx
@@ -17,8 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <QColor>
-#include <QStyle>
+#include <QtGui/QColor>
+#include <QtGui/QStyle>
+#include <QtCore/QDebug>
+#include <QtGui/QToolTip>
 
 #include <kconfig.h>
 #include <kglobal.h>
@@ -27,8 +29,6 @@
 #include <kmainwindow.h>
 #include <kapplication.h>
 #include <ktoolbar.h>
-#include <qdebug.h>
-#include <qtooltip.h>
 
 #undef Region
 
diff --git a/vcl/unx/kde4/KDESalGraphics.cxx b/vcl/unx/kde4/KDESalGraphics.cxx
index b8c98c3..a05f358 100644
--- a/vcl/unx/kde4/KDESalGraphics.cxx
+++ b/vcl/unx/kde4/KDESalGraphics.cxx
@@ -17,11 +17,11 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <QStyle>
-#include <QStyleOption>
-#include <QPainter>
-#include <QFrame>
-#include <QLabel>
+#include <QtGui/QStyle>
+#include <QtGui/QStyleOption>
+#include <QtGui/QPainter>
+#include <QtGui/QFrame>
+#include <QtGui/QLabel>
 
 #include <kapplication.h>
 #include <kdebug.h>
diff --git a/vcl/unx/kde4/KDESalGraphics.hxx b/vcl/unx/kde4/KDESalGraphics.hxx
index b803c60..38dd169 100644
--- a/vcl/unx/kde4/KDESalGraphics.hxx
+++ b/vcl/unx/kde4/KDESalGraphics.hxx
@@ -25,7 +25,7 @@
 #include <unx/saldisp.hxx>
 #include <unx/salgdi.h>
 
-#include <QImage>
+#include <QtGui/QImage>
 
 /** handles graphics drawings requests and performs the needed drawing operations */
 class KDESalGraphics : public X11SalGraphics
diff --git a/vcl/unx/kde4/KDEXLib.cxx b/vcl/unx/kde4/KDEXLib.cxx
index b6aa293..7d45ace 100644
--- a/vcl/unx/kde4/KDEXLib.cxx
+++ b/vcl/unx/kde4/KDEXLib.cxx
@@ -17,8 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include "VCLKDEApplication.hxx"
+#include "config_kde4.h"
 
+#include "KDEXLib.hxx"
+#include "VCLKDEApplication.hxx"
 #include "KDESalInstance.hxx"
 
 #include <kapplication.h>
@@ -26,23 +28,19 @@
 #include <kaboutdata.h>
 #include <kcmdlineargs.h>
 #include <kstartupinfo.h>
-#include <qabstracteventdispatcher.h>
-#include <qclipboard.h>
-#include <qthread.h>
 
-#include "KDEXLib.hxx"
-
-#include <unx/i18n_im.hxx>
-#include <unx/i18n_xkb.hxx>
+#include <QtCore/QAbstractEventDispatcher>
+#include <QtGui/QClipboard>
+#include <QtCore/QThread>
 
-#include <unx/saldata.hxx>
-#include <osl/process.h>
+#include "unx/i18n_im.hxx"
+#include "unx/i18n_xkb.hxx"
+#include "unx/saldata.hxx"
+#include "osl/process.h"
 
 #include "KDESalDisplay.hxx"
 
-#include <config_kde4.h>
-
-#if KDE_HAVE_GLIB
+#if KDE4_HAVE_GLIB
 #include "KDE4FilePicker.hxx"
 #include "tst_exclude_socket_notifiers.moc"
 #include "tst_exclude_posted_events.moc"
@@ -182,7 +180,7 @@ void KDEXLib::Init()
 
     KApplication::setQuitOnLastWindowClosed(false);
 
-#if KDE_HAVE_GLIB
+#if KDE4_HAVE_GLIB
     m_isGlibEventLoopType = QAbstractEventDispatcher::instance()->inherits( "QEventDispatcherGlib" );
     // Using KDE dialogs (and their nested event loops) works only with a proper event loop integration
     // that will release SolarMutex when waiting for more events.
@@ -210,7 +208,7 @@ void KDEXLib::Init()
 // needs to be unlocked shortly before entering the main sleep (e.g. select()) and locked
 // immediatelly after. So we need to know which event loop implementation is used and
 // hook accordingly.
-#if KDE_HAVE_GLIB
+#if KDE4_HAVE_GLIB
 #include <glib.h>
 
 static GPollFunc old_gpoll = nullptr;
@@ -235,7 +233,7 @@ static bool qt_event_filter( void* m )
 void KDEXLib::setupEventLoop()
 {
     old_qt_event_filter = QAbstractEventDispatcher::instance()->setEventFilter( qt_event_filter );
-#if KDE_HAVE_GLIB
+#if KDE4_HAVE_GLIB
     if( m_isGlibEventLoopType )
     {
         old_gpoll = g_main_context_get_poll_func( nullptr );
@@ -414,7 +412,7 @@ using namespace com::sun::star;
 uno::Reference< ui::dialogs::XFilePicker2 > KDEXLib::createFilePicker(
         const uno::Reference< uno::XComponentContext >& xMSF )
 {
-#if KDE_HAVE_GLIB
+#if KDE4_HAVE_GLIB
     if( qApp->thread() != QThread::currentThread()) {
         SalYieldMutexReleaser aReleaser;
         return Q_EMIT createFilePickerSignal( xMSF );
@@ -425,7 +423,7 @@ uno::Reference< ui::dialogs::XFilePicker2 > KDEXLib::createFilePicker(
 #endif
 }
 
-#include <qframe.h>
+#include <QtGui/QFrame>
 
 int KDEXLib::getFrameWidth()
 {
diff --git a/vcl/unx/kde4/KDEXLib.hxx b/vcl/unx/kde4/KDEXLib.hxx
index 0e9c0dd..70bdf19 100644
--- a/vcl/unx/kde4/KDEXLib.hxx
+++ b/vcl/unx/kde4/KDEXLib.hxx
@@ -25,9 +25,9 @@
 
 #include <fixx11h.h>
 
-#include <qhash.h>
-#include <qsocketnotifier.h>
-#include <qtimer.h>
+#include <QtCore/QHash>
+#include <QtCore/QSocketNotifier>
+#include <QtCore/QTimer>
 
 #include <unx/salinst.h>
 
diff --git a/vcl/unx/kde4/VCLKDEApplication.cxx b/vcl/unx/kde4/VCLKDEApplication.cxx
index 17dcdd6..78181b2 100644
--- a/vcl/unx/kde4/VCLKDEApplication.cxx
+++ b/vcl/unx/kde4/VCLKDEApplication.cxx
@@ -19,8 +19,8 @@
 
 #include "VCLKDEApplication.hxx"
 
-#include <QClipboard>
-#include <QEvent>
+#include <QtGui/QClipboard>
+#include <QtCore/QEvent>
 
 #include "KDESalDisplay.hxx"
 
diff --git a/vcl/unx/kde4/main.cxx b/vcl/unx/kde4/main.cxx
index 3b318eb44..13b0d46 100644
--- a/vcl/unx/kde4/main.cxx
+++ b/vcl/unx/kde4/main.cxx
@@ -17,7 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <QApplication>
+#include <QtGui/QApplication>
 
 #include "KDEData.hxx"
 #include "KDESalInstance.hxx"
diff --git a/vcl/unx/kde4/tst_exclude_posted_events.hxx b/vcl/unx/kde4/tst_exclude_posted_events.hxx
index a840523..0830cd5 100644
--- a/vcl/unx/kde4/tst_exclude_posted_events.hxx
+++ b/vcl/unx/kde4/tst_exclude_posted_events.hxx
@@ -21,8 +21,8 @@
 
 #pragma once
 
-#include <qcoreapplication.h>
-#include <qeventloop.h>
+#include <QtCore/QCoreApplication>
+#include <QtCore/QEventLoop>
 
 namespace
 {
diff --git a/vcl/unx/kde4/tst_exclude_socket_notifiers.hxx b/vcl/unx/kde4/tst_exclude_socket_notifiers.hxx
index 3adb956..9df67c2 100644
--- a/vcl/unx/kde4/tst_exclude_socket_notifiers.hxx
+++ b/vcl/unx/kde4/tst_exclude_socket_notifiers.hxx
@@ -21,9 +21,9 @@
 
 #pragma once
 
-#include <qcoreapplication.h>
-#include <qeventloop.h>
-#include <qsocketnotifier.h>
+#include <QtCore/QCoreApplication>
+#include <QtCore/QEventLoop>
+#include <QtCore/QSocketNotifier>
 #include <unistd.h>
 
 namespace
diff --git a/vcl/vcl.unx.component b/vcl/vcl.unx.component
index d690127..45f7893 100644
--- a/vcl/vcl.unx.component
+++ b/vcl/vcl.unx.component
@@ -34,4 +34,7 @@
   <implementation name="vcl::FontIdentificator">
     <service name="com.sun.star.awt.FontIdentificator"/>
   </implementation>
+  <implementation name="vcl::rsvg::Rasterizer">
+    <service name="com.sun.star.graphic.GraphicRasterizer_RSVG"/>
+  </implementation>
 </component>


More information about the Libreoffice-commits mailing list