diff options
Diffstat (limited to 'kde-plasma/plasma-pa/files/plasma-pa-5.13.3-optional_gconf.patch')
-rw-r--r-- | kde-plasma/plasma-pa/files/plasma-pa-5.13.3-optional_gconf.patch | 280 |
1 files changed, 0 insertions, 280 deletions
diff --git a/kde-plasma/plasma-pa/files/plasma-pa-5.13.3-optional_gconf.patch b/kde-plasma/plasma-pa/files/plasma-pa-5.13.3-optional_gconf.patch deleted file mode 100644 index f14fd180c249..000000000000 --- a/kde-plasma/plasma-pa/files/plasma-pa-5.13.3-optional_gconf.patch +++ /dev/null @@ -1,280 +0,0 @@ -From c9fae1fb3f8e8a820fd480ce227d7fabf87bd045 Mon Sep 17 00:00:00 2001 -From: David Rosca <nowrep@gmail.com> -Date: Tue, 26 Jun 2018 10:56:04 +0200 -Subject: [PATCH] Make GConf optional dependency - -When building without GConf, Advanded Output Configuration will be hidden in KCM. - -BUG: 386665 -FIXED-IN: 5.13.4 - -Differential Revision: https://phabricator.kde.org/D13734 ---- - CMakeLists.txt | 9 ++++-- - config.h.cmake | 3 ++ - src/CMakeLists.txt | 18 ++++++++---- - src/kcm/package/contents/ui/Advanced.qml | 5 +++- - src/modulemanager.cpp | 47 ++++++++++++++++++++++++++------ - src/modulemanager.h | 3 ++ - 6 files changed, 68 insertions(+), 17 deletions(-) - create mode 100644 config.h.cmake - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index e494ced..2505696 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -19,8 +19,11 @@ include(KDECompilerSettings NO_POLICY_SCOPE) - include(ECMOptionalAddSubdirectory) - - include(FindPkgConfig) --pkg_check_modules(GCONF REQUIRED gconf-2.0) --pkg_check_modules(GOBJECT REQUIRED gobject-2.0) -+pkg_check_modules(GCONF gconf-2.0) -+pkg_check_modules(GOBJECT gobject-2.0) -+if (GCONF_FOUND AND GOBJECT_FOUND) -+ set(HAVE_GCONF TRUE) -+endif() - - find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS - Core -@@ -41,6 +44,8 @@ find_package(PulseAudio 5.0.0 REQUIRED) - find_package(Canberra REQUIRED) - find_package(GLIB2 REQUIRED) - -+configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h) -+ - add_subdirectory(applet) - add_subdirectory(src) - add_subdirectory(data) -diff --git a/config.h.cmake b/config.h.cmake -new file mode 100644 -index 0000000..1643e50 ---- /dev/null -+++ b/config.h.cmake -@@ -0,0 +1,3 @@ -+/* config.h. Generated by cmake from config.h.cmake */ -+ -+#cmakedefine01 HAVE_GCONF -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index e6cddfc..09d108c 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -1,5 +1,4 @@ --include_directories(${PULSEAUDIO_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${GCONF_INCLUDE_DIRS} -- ${GOBJECT_INCLUDE_DIRS}) -+include_directories(${PULSEAUDIO_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR}) - - set(cpp_SRCS - card.cpp -@@ -15,7 +14,6 @@ set(cpp_SRCS - sink.cpp - sinkinput.cpp - modulemanager.cpp -- gconfitem.cpp - source.cpp - sourceoutput.cpp - stream.cpp -@@ -38,6 +36,11 @@ set(qml_SRCS - set_property(SOURCE qml/dbus/osdService.xml APPEND PROPERTY CLASSNAME OsdServiceInterface) - qt5_add_dbus_interface(dbus_SRCS qml/dbus/osdService.xml osdservice) - -+if (HAVE_GCONF) -+ include_directories(${GCONF_INCLUDE_DIRS} ${GOBJECT_INCLUDE_DIRS}) -+ set(cpp_SRCS ${cpp_SRCS} gconfitem.cpp) -+endif() -+ - add_library(plasma-volume-declarative SHARED ${dbus_SRCS} ${cpp_SRCS} ${qml_SRCS}) - target_link_libraries(plasma-volume-declarative - Qt5::Core -@@ -47,11 +50,16 @@ target_link_libraries(plasma-volume-declarative - KF5::GlobalAccel - ${PULSEAUDIO_LIBRARY} - ${PULSEAUDIO_MAINLOOP_LIBRARY} -- ${GCONF_LDFLAGS} -- ${GOBJECT_LDFLAGS} - ${CANBERRA_LIBRARIES} - ) - -+if (HAVE_GCONF) -+ target_link_libraries(plasma-volume-declarative -+ ${GCONF_LDFLAGS} -+ ${GOBJECT_LDFLAGS} -+ ) -+endif() -+ - set(PRIVATE_QML_INSTALL_DIR ${QML_INSTALL_DIR}/org/kde/plasma/private/volume) - install(TARGETS plasma-volume-declarative DESTINATION ${PRIVATE_QML_INSTALL_DIR}) - install(FILES ${qml_SRCS} DESTINATION ${PRIVATE_QML_INSTALL_DIR}) -diff --git a/src/kcm/package/contents/ui/Advanced.qml b/src/kcm/package/contents/ui/Advanced.qml -index b305cf1..0cd9eb9 100644 ---- a/src/kcm/package/contents/ui/Advanced.qml -+++ b/src/kcm/package/contents/ui/Advanced.qml -@@ -56,6 +56,7 @@ ScrollView { - Header { - Layout.fillWidth: true - text: i18n("Advanced Output Configuration") -+ visible: moduleManager.settingsSupported - } - - ModuleManager { -@@ -71,6 +72,7 @@ ScrollView { - checked: moduleManager.combineSinks - onCheckedChanged: moduleManager.combineSinks = checked; - enabled: moduleManager.loadedModules.indexOf("module-gconf") != -1 -+ visible: moduleManager.settingsSupported - } - - CheckBox { -@@ -81,6 +83,7 @@ ScrollView { - checked: moduleManager.switchOnConnect - onCheckedChanged: moduleManager.switchOnConnect = checked; - enabled: moduleManager.loadedModules.indexOf("module-gconf") != -1 -+ visible: moduleManager.settingsSupported - } - - Label { -@@ -88,7 +91,7 @@ ScrollView { - enabled: false - font.italic: true - text: i18n("Requires 'module-gconf' PulseAudio module") -- visible: moduleManager.loadedModules.indexOf("module-gconf") == -1 -+ visible: moduleManager.settingsSupported && moduleManager.loadedModules.indexOf("module-gconf") == -1 - } - } - } -diff --git a/src/modulemanager.cpp b/src/modulemanager.cpp -index 635adc8..5245ac5 100644 ---- a/src/modulemanager.cpp -+++ b/src/modulemanager.cpp -@@ -21,20 +21,22 @@ - - #include "modulemanager.h" - #include "module.h" -+#include "../config.h" - -+#if HAVE_GCONF -+#include "gconfitem.h" - #define PA_GCONF_ROOT "/system/pulseaudio" - #define PA_GCONF_PATH_MODULES PA_GCONF_ROOT"/modules" -- --#include "gconfitem.h" -+#endif - - #include <QTimer> - - namespace QPulseAudio - { - -+#if HAVE_GCONF - class GConfModule : public GConfItem - { -- Q_OBJECT - public: - GConfModule(const QString &configName, const QString &moduleName, QObject *parent); - bool isEnabled() const; -@@ -67,17 +69,21 @@ void GConfModule::setEnabled(bool enabled, const QVariant &args) - } - set(QStringLiteral("locked"), false); - } -+#endif - - - ModuleManager::ModuleManager(QObject *parent) : -- QObject(parent), -- m_combineSinks(new GConfModule(QStringLiteral("combine"), QStringLiteral("module-combine"), this)), -- m_switchOnConnect(new GConfModule(QStringLiteral("switch-on-connect"), QStringLiteral("module-switch-on-connect"), this)), -- m_deviceManager(new GConfModule(QStringLiteral("device-manager"), QStringLiteral("module-device-manager"), this)) -+ QObject(parent) - { -+#if HAVE_GCONF -+ m_combineSinks = new GConfModule(QStringLiteral("combine"), QStringLiteral("module-combine"), this); -+ m_switchOnConnect = new GConfModule(QStringLiteral("switch-on-connect"), QStringLiteral("module-switch-on-connect"), this); -+ m_deviceManager = new GConfModule(QStringLiteral("device-manager"), QStringLiteral("module-device-manager"), this); -+ - connect(m_combineSinks, &GConfItem::subtreeChanged, this, &ModuleManager::combineSinksChanged); - connect(m_switchOnConnect, &GConfItem::subtreeChanged, this, &ModuleManager::switchOnConnectChanged); - connect(m_deviceManager, &GConfItem::subtreeChanged, this, &ModuleManager::switchOnConnectChanged); -+#endif - - QTimer *updateModulesTimer = new QTimer(this); - updateModulesTimer->setInterval(500); -@@ -92,14 +98,31 @@ ModuleManager::~ModuleManager() - { - }; - -+bool ModuleManager::settingsSupported() const -+{ -+#if HAVE_GCONF -+ return true; -+#else -+ return false; -+#endif -+} -+ - bool ModuleManager::combineSinks() const - { -+#if HAVE_GCONF - return m_combineSinks->isEnabled(); -+#else -+ return false; -+#endif - } - - void ModuleManager::setCombineSinks(bool combineSinks) - { -+#if HAVE_GCONF - m_combineSinks->setEnabled(combineSinks); -+#else -+ Q_UNUSED(combineSinks) -+#endif - } - - bool ModuleManager::switchOnConnect() const -@@ -109,13 +132,21 @@ bool ModuleManager::switchOnConnect() const - //Note on the first run m_deviceManager will appear to be disabled even though it's actually running - //because there is no gconf entry, however m_switchOnConnect will only exist if set by Plasma PA - //hence only check this entry -+#if HAVE_GCONF - return m_switchOnConnect->isEnabled() ; -+#else -+ return false; -+#endif - } - - void ModuleManager::setSwitchOnConnect(bool switchOnConnect) - { -+#if HAVE_GCONF - m_deviceManager->setEnabled(!switchOnConnect); - m_switchOnConnect->setEnabled(switchOnConnect); -+#else -+ Q_UNUSED(switchOnConnect) -+#endif - } - - QStringList ModuleManager::loadedModules() const -@@ -134,5 +165,3 @@ void ModuleManager::updateLoadedModules() - } - - } -- --#include "modulemanager.moc" -diff --git a/src/modulemanager.h b/src/modulemanager.h -index b8fcd0b..8108fe0 100644 ---- a/src/modulemanager.h -+++ b/src/modulemanager.h -@@ -38,12 +38,15 @@ class GConfModule; - class ModuleManager : public QObject - { - Q_OBJECT -+ Q_PROPERTY(bool settingsSupported READ settingsSupported CONSTANT) - Q_PROPERTY(bool combineSinks READ combineSinks WRITE setCombineSinks NOTIFY combineSinksChanged) - Q_PROPERTY(bool switchOnConnect READ switchOnConnect WRITE setSwitchOnConnect NOTIFY switchOnConnectChanged) - Q_PROPERTY(QStringList loadedModules READ loadedModules NOTIFY loadedModulesChanged) - public: - ModuleManager(QObject *parent = nullptr); - ~ModuleManager(); -+ -+ bool settingsSupported() const; - bool combineSinks() const; - void setCombineSinks(bool combineSinks); - bool switchOnConnect() const; |