diff -Nur a/cmake/modules/FindGSettingSchemas.cmake b/cmake/modules/FindGSettingSchemas.cmake --- a/cmake/modules/FindGSettingSchemas.cmake 2019-03-12 09:52:51.000000000 +0000 +++ b/cmake/modules/FindGSettingSchemas.cmake 1970-01-01 01:00:00.000000000 +0100 @@ -1,23 +0,0 @@ -find_package(PkgConfig) - -pkg_check_modules(PC_GLIB2 REQUIRED glib-2.0) - -find_path(GLIB_SCHEMAS_DIR org.gnome.desktop.interface.gschema.xml - HINTS ${PC_GLIB2_PREFIX}/share - PATH_SUFFIXES glib-2.0/schemas) - -if (GLIB_SCHEMAS_DIR) - set(GSettingSchemas_FOUND true) -else() - set(GSettingSchemas_FOUND false) -endif() - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(GSettingSchemas - FOUND_VAR - GSettingSchemas_FOUND - REQUIRED_VARS - GSettingSchemas_FOUND -) - -mark_as_advanced(GSettingSchemas_FOUND) diff -Nur a/cmake/modules/FindGTK3.cmake b/cmake/modules/FindGTK3.cmake --- a/cmake/modules/FindGTK3.cmake 2019-03-12 09:52:51.000000000 +0000 +++ b/cmake/modules/FindGTK3.cmake 2019-03-19 11:53:52.091013209 +0000 @@ -35,7 +35,7 @@ GLIB2_INCLUDE_DIR_PART1 glib.h HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} PATH_SUFFIXES glib-2.0) - + FIND_PATH( GLIB2_INCLUDE_DIR_PART2 glibconfig.h HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS} @@ -58,7 +58,7 @@ GOBJECT2_INCLUDE_DIR_PART1 glib.h HINTS ${PC_GOBJECT2_INCLUDEDIR} ${PC_GOBJECT2_INCLUDE_DIRS} PATH_SUFFIXES gobject-2.0) - + FIND_PATH( GOBJECT2_INCLUDE_DIR_PART2 gobject.h HINTS ${PC_GOBJECT2_INCLUDEDIR} ${PC_GOBJECT2_INCLUDE_DIRS} @@ -71,30 +71,6 @@ HINTS ${PC_GOBJECT2_LIBDIR} ${PC_GOBJECT2_LIBRARY_DIRS}) # -# gio -# -PKG_CHECK_MODULES(PC_GIO2 REQUIRED gio-2.0) - -SET(GLIB2_DEFINITIONS ${PC_GIO2_CXXFLAGS_OTHER}) - -FIND_PATH( - GIO2_INCLUDE_DIR_PART1 glib.h - HINTS ${PC_GIO2_INCLUDEDIR} ${PC_GIO2_INCLUDE_DIRS} - PATH_SUFFIXES gio) - -FIND_PATH( - GIO2_INCLUDE_DIR_PART2 gio.h - HINTS ${PC_GIO2_INCLUDEDIR} ${PC_GIO2_INCLUDE_DIRS} - PATH_SUFFIXES glib-2.0/gio) - -SET(GIO2_INCLUDE_DIR ${GIO2_INCLUDE_DIR_PART1} ${GIO2_INCLUDE_DIR_PART2}) - -FIND_LIBRARY( - GIO2_LIBRARY NAMES gio-2.0 - HINTS ${PC_GIO2_LIBDIR} ${PC_GIO2_LIBRARY_DIRS}) - - -# # pango # PKG_CHECK_MODULES(PC_PANGO REQUIRED pango) @@ -164,7 +140,7 @@ # # SET(GTK3_LIBRARY_DIRS ${GTK3_LIBRARY} ${GLIB2_LIBRARY} ${PANGO_LIBRARY} ${CAIRO_LIBRARY} ${GDKPIXBUF_LIBRARY} ${ATK_LIBRARY}) -SET(GTK3_INCLUDE_DIRS ${GTK3_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${GIO2_INCLUDE_DIR} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR}) +SET(GTK3_INCLUDE_DIRS ${GTK3_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR}) INCLUDE(FindPackageHandleStandardArgs) diff -Nur a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt 2019-03-12 09:52:55.000000000 +0000 +++ b/CMakeLists.txt 2019-03-19 11:53:52.091013209 +0000 @@ -8,14 +8,11 @@ find_package(Qt5 REQUIRED NO_MODULE COMPONENTS Widgets Svg Test) find_package(KF5 REQUIRED COMPONENTS I18n KIO ConfigWidgets NewStuff Archive KCMUtils IconThemes) find_package(X11 REQUIRED) -find_package(GTK3 REQUIRED) -find_package(GSettingSchemas REQUIRED) include_directories( - ${CMAKE_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/src/ui - ${GTK3_INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/src + ${CMAKE_SOURCE_DIR}/src/ui ) include(ECMSetupVersion) @@ -40,21 +37,21 @@ src/appearencegtk.cpp src/abstractappearance.cpp src/thread.cpp - src/installer.cpp + src/installer.cpp src/gtkconfigkcmodule.cpp - src/dialog_installer.cpp - src/dialog_uninstaller.cpp + src/dialog_installer.cpp + src/dialog_uninstaller.cpp src/fontshelpers.cpp ) -ki18n_wrap_ui(kcm_SRCS - src/ui/gui.ui - src/ui/dialog_installer.ui +ki18n_wrap_ui(kcm_SRCS + src/ui/gui.ui + src/ui/dialog_installer.ui src/ui/dialog_uninstaller.ui ) add_library(kcm_kdegtkconfig MODULE ${kcm_SRCS}) target_compile_definitions(kcm_kdegtkconfig PRIVATE -DPROJECT_VERSION="${PROJECT_VERSION}") -target_link_libraries(kcm_kdegtkconfig ${X11_Xcursor_LIB} ${GIO2_LIBRARY} ${GLIB2_LIBRARY} ${GTK3_LIBRARY} ${GOBJECT2_LIBRARY} Qt5::Svg KF5::ConfigCore KF5::I18n KF5::KIOWidgets KF5::NewStuff KF5::Archive KF5::NewStuff KF5::ConfigWidgets KF5::IconThemes) +target_link_libraries(kcm_kdegtkconfig ${X11_Xcursor_LIB} Qt5::Svg KF5::ConfigCore KF5::I18n KF5::KIOWidgets KF5::NewStuff KF5::Archive KF5::NewStuff KF5::ConfigWidgets KF5::IconThemes) kcoreaddons_desktop_to_json(kcm_kdegtkconfig kde-gtk-config.desktop) diff -Nur a/gtkproxies/CMakeLists.txt b/gtkproxies/CMakeLists.txt --- a/gtkproxies/CMakeLists.txt 2019-03-12 09:52:51.000000000 +0000 +++ b/gtkproxies/CMakeLists.txt 2019-03-19 11:53:52.091013209 +0000 @@ -1,6 +1,6 @@ find_package(GTK2 REQUIRED) -include_directories(BEFORE ${GTK2_INCLUDE_DIRS}) +include_directories(${GTK2_INCLUDE_DIRS}) add_executable(reload_gtk_apps reload.c) target_link_libraries(reload_gtk_apps ${GTK2_LIBRARIES}) diff -Nur a/src/appearancegtk3.cpp b/src/appearancegtk3.cpp --- a/src/appearancegtk3.cpp 2019-03-12 09:52:51.000000000 +0000 +++ b/src/appearancegtk3.cpp 2019-03-19 11:53:52.091013209 +0000 @@ -1,5 +1,5 @@ /* KDE GTK Configuration Module - * + * * Copyright 2011 José Antonio Sanchez Reynaga * Copyright 2011 Aleix Pol Gonzalez * @@ -10,13 +10,13 @@ * later version accepted by the membership of KDE e.V. (or its * successor approved by the membership of KDE e.V.), which shall * act as a proxy defined in Section 6 of version 3 of the license. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public + * + * You should have received a copy of the GNU Lesser General Public * License along with this library. If not, see . */ @@ -28,11 +28,6 @@ #include #include -#undef signals -#include -#include -#define signals Q_SIGNALS - QStringList AppearanceGTK3::installedThemes() const { QFileInfoList availableThemes; @@ -125,7 +120,7 @@ QString root = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); if(root.isEmpty()) root = QFileInfo(QDir::home(), ".config").absoluteFilePath(); - + return root + '/' + configFileName(); } @@ -159,33 +154,6 @@ bool AppearanceGTK3::saveSettings() const { - // FIXME kdebz#387417 - // We should maybe use GSettings everywhere in future, but at this moment we - // need this to have this configuration available in sandboxed applications which - // is only possible through dconf - gtk_init(nullptr, nullptr); - - g_autoptr(GSettings) gsettings = g_settings_new("org.gnome.desktop.interface"); - g_settings_set_string(gsettings, "gtk-theme", m_settings["theme"].toUtf8().constData()); - g_settings_set_string(gsettings, "icon-theme", m_settings["icon"].toUtf8().constData()); - g_settings_set_string(gsettings, "cursor-theme", m_settings["cursor"].toUtf8().constData()); - g_settings_set_string(gsettings, "font-name", m_settings["font"].toUtf8().constData()); - - QString toolbarStyle; - if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_ICONS")) { - toolbarStyle = QStringLiteral("icons"); - } else if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_TEXT")) { - toolbarStyle = QStringLiteral("text"); - } else if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_BOTH")) { - toolbarStyle = QStringLiteral("both"); - } else if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_BOTH_HORIZ")) { - toolbarStyle = QStringLiteral("both-horiz"); - } - - g_settings_set_string(gsettings, "toolbar-style", toolbarStyle.toUtf8().constData()); - - g_object_set(gtk_settings_get_default(), "gtk-application-prefer-dark-theme", getApplicationPreferDarkTheme(), nullptr); - auto cfg = KSharedConfig::openConfig(configFileName(), KConfig::NoGlobals); return saveSettings(cfg); } diff -Nur a/tests/CMakeLists.txt b/tests/CMakeLists.txt --- a/tests/CMakeLists.txt 2019-03-12 09:52:51.000000000 +0000 +++ b/tests/CMakeLists.txt 2019-03-19 11:53:52.091013209 +0000 @@ -2,7 +2,7 @@ add_executable(${name} ${name}.cpp ${ARGV}) add_test(${name} ${name}) ecm_mark_as_test(${name}) - target_link_libraries(${name} ${GIO2_LIBRARY} ${GLIB2_LIBRARY} ${GTK3_LIBRARY} ${GOBJECT2_LIBRARY} Qt5::Core Qt5::Gui Qt5::Test KF5::ConfigCore) + target_link_libraries(${name} Qt5::Core Qt5::Gui Qt5::Test KF5::ConfigCore) target_include_directories(${name} PRIVATE ${CMAKE_BINARY_DIR}) endmacro(add_kgc_test)