summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2013-08-12 01:59:59 +0200
committerSlávek Banko <slavek.banko@axis.cz>2013-08-12 02:47:46 +0200
commit3a601abfd441a9416a6cd2d6b0d7ce35d8dd5a21 (patch)
tree46507f33ee762a0d9524e4e8de564703094764b4
parent3c06aad1564601e37dfce6e6bffabb4472421999 (diff)
downloadtdelibs-3a601abfd441a9416a6cd2d6b0d7ce35d8dd5a21.tar.gz
tdelibs-3a601abfd441a9416a6cd2d6b0d7ce35d8dd5a21.zip
Add option WITH_TDEHWLIB_DAEMONS
Fix incorrect use WITH_UPOWER
-rw-r--r--CMakeLists.txt1
-rw-r--r--tdecore/tdehw/CMakeLists.txt8
-rw-r--r--tdecore/tdehw/tdebacklightdevice.cpp46
-rw-r--r--tdecore/tdehw/tdecpudevice.cpp49
4 files changed, 49 insertions, 55 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 15a829404..057a562d0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -83,6 +83,7 @@ OPTION( WITH_PCRE "Enable pcre regex support for kjs" ON )
OPTION( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} )
OPTION( WITH_INOTIFY "Enable inotify support for tdeio" ON )
OPTION( WITH_GAMIN "Enable FAM/GAMIN support" ${WITH_ALL_OPTIONS} )
+option( WITH_TDEHWLIB_DAEMONS "Enable daemons for TDE hwlib" ${WITH_ALL_OPTIONS} )
option( WITH_UPOWER "Enable uPower support" ${WITH_ALL_OPTIONS} )
option( WITH_UDISKS "Enable uDisks support" ${WITH_ALL_OPTIONS} )
option( WITH_UDISKS2 "Enable uDisks2 support" ${WITH_ALL_OPTIONS} )
diff --git a/tdecore/tdehw/CMakeLists.txt b/tdecore/tdehw/CMakeLists.txt
index 85cacf734..29c8b1ebe 100644
--- a/tdecore/tdehw/CMakeLists.txt
+++ b/tdecore/tdehw/CMakeLists.txt
@@ -10,20 +10,24 @@
#################################################
add_subdirectory( hwlibdata )
-add_subdirectory( hwlibdaemons )
+tde_conditional_add_subdirectory( WITH_TDEHWLIB_DAEMONS hwlibdaemons )
add_subdirectory( networkbackends )
if( NOT DBUS_SYSTEM_BUS )
set( DBUS_SYSTEM_BUS "unix:path=/var/run/dbus/system_bus_socket" CACHE INTERNAL "" FORCE )
endif()
-if( WITH_UPOWER OR WITH_UDISKS OR WITH_UDISKS2 OR
+if( WITH_TDEHWLIB_DAEMONS OR WITH_UPOWER OR WITH_UDISKS OR WITH_UDISKS2 OR
WITH_NETWORK_MANAGER_BACKEND OR WITH_CONSOLEKIT )
list( APPEND TDEHW_CUSTOM_INCLUDE_DIRS ${DBUS_TQT_INCLUDE_DIRS} )
list( APPEND TDEHW_CUSTOM_LIBRARY_DIRS ${DBUS_TQT_LIBRARY_DIRS} )
list( APPEND TDEHW_CUSTOM_LIBRARIES ${DBUS_TQT_LIBRARIES} )
endif( )
+if( WITH_TDEHWLIB_DAEMONS )
+ add_definitions( -DWITH_TDEHWLIB_DAEMONS )
+endif( )
+
if( WITH_UPOWER )
add_definitions( -DWITH_UPOWER )
endif( )
diff --git a/tdecore/tdehw/tdebacklightdevice.cpp b/tdecore/tdehw/tdebacklightdevice.cpp
index 0ce5533e0..fdd0787b1 100644
--- a/tdecore/tdehw/tdebacklightdevice.cpp
+++ b/tdecore/tdehw/tdebacklightdevice.cpp
@@ -26,13 +26,13 @@
#include "config.h"
// uPower
-#if defined(WITH_UPOWER)
+#if defined(WITH_TDEHWLIB_DAEMONS)
#include <tqdbusdata.h>
#include <tqdbusmessage.h>
#include <tqdbusproxy.h>
#include <tqdbusvariant.h>
#include <tqdbusconnection.h>
-#endif // defined(WITH_UPOWER)
+#endif // defined(WITH_TDEHWLIB_DAEMONS)
TDEBacklightDevice::TDEBacklightDevice(TDEGenericDeviceType::TDEGenericDeviceType dt, TQString dn) : TDEGenericDevice(dt, dn) {
}
@@ -70,8 +70,9 @@ bool TDEBacklightDevice::canSetBrightness() {
if (rval == 0) {
return TRUE;
}
- else {
-#ifdef WITH_UPOWER
+
+#ifdef WITH_TDEHWLIB_DAEMONS
+ {
TQT_DBusConnection dbusConn = TQT_DBusConnection::addConnection(TQT_DBusConnection::SystemBus);
if (dbusConn.isConnected()) {
TQT_DBusProxy hardwareControl("org.trinitydesktop.hardwarecontrol", "/org/trinitydesktop/hardwarecontrol", "org.trinitydesktop.hardwarecontrol.Brightness", dbusConn);
@@ -83,21 +84,12 @@ bool TDEBacklightDevice::canSetBrightness() {
if (reply.type() == TQT_DBusMessage::ReplyMessage && reply.count() == 1) {
return reply[0].toVariant().value.toBool();
}
- else {
- return FALSE;
- }
- }
- else {
- return FALSE;
}
}
- else {
- return FALSE;
- }
-#else // WITH_UPOWER
- return FALSE;
-#endif// WITH_UPOWER
}
+#endif // WITH_TDEHWLIB_DAEMONS
+
+ return FALSE;
}
int TDEBacklightDevice::rawBrightness() {
@@ -105,6 +97,8 @@ int TDEBacklightDevice::rawBrightness() {
}
void TDEBacklightDevice::setRawBrightness(int br) {
+ bool setRawBrightnessDone = FALSE;
+
TQString brightnessnode = systemPath() + "/brightness";
TQString brightnessCommand = TQString("%1").arg(br);
TQFile file( brightnessnode );
@@ -112,9 +106,11 @@ void TDEBacklightDevice::setRawBrightness(int br) {
TQTextStream stream( &file );
stream << brightnessCommand;
file.close();
+ setRawBrightnessDone = TRUE;
}
-#ifdef WITH_UPOWER
- else {
+
+#ifdef WITH_TDEHWLIB_DAEMONS
+ if ( !setRawBrightnessDone ) {
TQT_DBusConnection dbusConn = TQT_DBusConnection::addConnection(TQT_DBusConnection::SystemBus);
if (dbusConn.isConnected()) {
TQT_DBusProxy hardwareControl("org.trinitydesktop.hardwarecontrol", "/org/trinitydesktop/hardwarecontrol", "org.trinitydesktop.hardwarecontrol.Brightness", dbusConn);
@@ -122,17 +118,15 @@ void TDEBacklightDevice::setRawBrightness(int br) {
// set brightness
TQValueList<TQT_DBusData> params;
params << TQT_DBusData::fromString(brightnessnode) << TQT_DBusData::fromString(brightnessCommand);
- hardwareControl.sendWithReply("SetBrightness", params);
- }
- else {
- return;
+ TQT_DBusMessage reply = hardwareControl.sendWithReply("SetBrightness", params);
+ if (reply.type() == TQT_DBusMessage::ReplyMessage) {
+ setRawBrightnessDone = TRUE;
+ }
}
}
- else {
- return;
- }
}
-#endif // WITH_UPOWER
+#endif // WITH_TDEHWLIB_DAEMONS
+
}
#include "tdebacklightdevice.moc"
diff --git a/tdecore/tdehw/tdecpudevice.cpp b/tdecore/tdehw/tdecpudevice.cpp
index b6b4b9bf4..e1b5cd4ce 100644
--- a/tdecore/tdehw/tdecpudevice.cpp
+++ b/tdecore/tdehw/tdecpudevice.cpp
@@ -30,13 +30,13 @@
#include "config.h"
// uPower
-#if defined(WITH_UPOWER)
+#if defined(WITH_TDEHWLIB_DAEMONS)
#include <tqdbusdata.h>
#include <tqdbusmessage.h>
#include <tqdbusproxy.h>
#include <tqdbusvariant.h>
#include <tqdbusconnection.h>
-#endif // defined(WITH_UPOWER)
+#endif // defined(WITH_TDEHWLIB_DAEMONS)
TDECPUDevice::TDECPUDevice(TDEGenericDeviceType::TDEGenericDeviceType dt, TQString dn) : TDEGenericDevice(dt, dn) {
@@ -132,8 +132,9 @@ bool TDECPUDevice::canSetGovernor() {
if (rval == 0) {
return TRUE;
}
- else {
-#ifdef WITH_UPOWER
+
+#ifdef WITH_TDEHWLIB_DAEMONS
+ {
TQT_DBusConnection dbusConn = TQT_DBusConnection::addConnection(TQT_DBusConnection::SystemBus);
if (dbusConn.isConnected()) {
TQT_DBusProxy hardwareControl("org.trinitydesktop.hardwarecontrol", "/org/trinitydesktop/hardwarecontrol", "org.trinitydesktop.hardwarecontrol.CPUGovernor", dbusConn);
@@ -145,33 +146,28 @@ bool TDECPUDevice::canSetGovernor() {
if (reply.type() == TQT_DBusMessage::ReplyMessage && reply.count() == 1) {
return reply[0].toVariant().value.toBool();
}
- else {
- return FALSE;
- }
- }
- else {
- return FALSE;
}
}
- else {
- return FALSE;
- }
-#else // WITH_UPOWER
- return FALSE;
-#endif// WITH_UPOWER
}
+#endif // WITH_TDEHWLIB_DAEMONS
+
+ return FALSE;
}
void TDECPUDevice::setGovernor(TQString gv) {
+ bool setGovernorDone = FALSE;
+
TQString governornode = systemPath() + "/cpufreq/scaling_governor";
TQFile file( governornode );
if ( file.open( IO_WriteOnly ) ) {
TQTextStream stream( &file );
stream << gv.lower();
file.close();
+ setGovernorDone = TRUE;
}
-#ifdef WITH_UPOWER
- else {
+
+#ifdef WITH_TDEHWLIB_DAEMONS
+ if ( !setGovernorDone ) {
TQT_DBusConnection dbusConn = TQT_DBusConnection::addConnection(TQT_DBusConnection::SystemBus);
if (dbusConn.isConnected()) {
TQT_DBusProxy hardwareControl("org.trinitydesktop.hardwarecontrol", "/org/trinitydesktop/hardwarecontrol", "org.trinitydesktop.hardwarecontrol.CPUGovernor", dbusConn);
@@ -179,20 +175,19 @@ void TDECPUDevice::setGovernor(TQString gv) {
// set CPU governor
TQValueList<TQT_DBusData> params;
params << TQT_DBusData::fromInt32(coreNumber()) << TQT_DBusData::fromString(gv.lower());
- hardwareControl.sendWithReply("SetCPUGovernor", params);
- }
- else {
- return;
+ TQT_DBusMessage reply = hardwareControl.sendWithReply("SetCPUGovernor", params);
+ if (reply.type() == TQT_DBusMessage::ReplyMessage) {
+ setGovernorDone = TRUE;
+ }
}
}
- else {
- return;
- }
}
-#endif // WITH_UPOWER
+#endif // WITH_TDEHWLIB_DAEMONS
// Force update of the device information object
- TDEGlobal::hardwareDevices()->processModifiedCPUs();
+ if ( setGovernorDone ) {
+ TDEGlobal::hardwareDevices()->processModifiedCPUs();
+ }
}
bool TDECPUDevice::canSetMaximumScalingFrequency() {