summaryrefslogtreecommitdiff
path: root/src/bluetooth/qbluetoothlocaldevice_bluez.cpp
diff options
context:
space:
mode:
authorMichael Zanetti <michael.zanetti@nokia.com>2012-06-11 16:26:11 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-13 10:22:37 +0200
commit623ad8a15286e4bdb879609ed9d0147db0a6d06a (patch)
treeb4960f426b7b057481a6bda1ba5374e5aa2c01a3 /src/bluetooth/qbluetoothlocaldevice_bluez.cpp
parentd339122de2728bf501fb8a734623f5c3ce4aad99 (diff)
downloadqtconnectivity-623ad8a15286e4bdb879609ed9d0147db0a6d06a.tar.gz
only allow apps to temporarily power on Bluetooth
also disallow powering Bluetooth off while something else is still using it Change-Id: Icb8f5863e618d628dd40e2c2e169328c239eb81f Reviewed-by: Alex <alex.blasche@nokia.com>
Diffstat (limited to 'src/bluetooth/qbluetoothlocaldevice_bluez.cpp')
-rw-r--r--src/bluetooth/qbluetoothlocaldevice_bluez.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/bluetooth/qbluetoothlocaldevice_bluez.cpp b/src/bluetooth/qbluetoothlocaldevice_bluez.cpp
index 9da84795..d7e456ec 100644
--- a/src/bluetooth/qbluetoothlocaldevice_bluez.cpp
+++ b/src/bluetooth/qbluetoothlocaldevice_bluez.cpp
@@ -678,15 +678,11 @@ bool NokiaBtManServiceConnection::powered() const
void NokiaBtManServiceConnection::setPowered(bool powered)
{
- int powerState; // Disabled = 0, Enabling = 1, Enabled = 2, Disabling = 3
- QMetaObject::invokeMethod(m_btmanService, "powerState", Q_RETURN_ARG(int, powerState));
-
- if ((powered && powerState != 0) || (!powered && powerState != 2)) {
- qWarning() << "cannot change powered (wrong state)";
- return;
+ if (powered) {
+ QMetaObject::invokeMethod(m_btmanService, "acquireTemporaryPower");
+ } else {
+ QMetaObject::invokeMethod(m_btmanService, "releaseTemporaryPower");
}
-
- QMetaObject::invokeMethod(m_btmanService, "setPowered", Q_ARG(bool, powered));
}
void NokiaBtManServiceConnection::setHostMode(QBluetoothLocalDevice::HostMode mode)