Update bluetooth server state changes and keep the order properly
This commit is contained in:
parent
14655ba171
commit
139d0957bf
@ -131,8 +131,8 @@ Core::Core(QObject *parent) :
|
|||||||
|
|
||||||
m_bluetoothServer = new BluetoothServer(m_networkManager);
|
m_bluetoothServer = new BluetoothServer(m_networkManager);
|
||||||
|
|
||||||
connect(m_bluetoothServer, &BluetoothServer::runningChanged, this, &Core::onBluetoothServerRunningChanged);
|
connect(m_bluetoothServer, &BluetoothServer::runningChanged, this, &Core::onBluetoothServerRunningChanged, Qt::QueuedConnection);
|
||||||
connect(m_bluetoothServer, &BluetoothServer::connectedChanged, this, &Core::onBluetoothServerConnectedChanged);
|
connect(m_bluetoothServer, &BluetoothServer::connectedChanged, this, &Core::onBluetoothServerConnectedChanged, Qt::QueuedConnection);
|
||||||
|
|
||||||
m_nymeaService = new NymeadService(false, this);
|
m_nymeaService = new NymeadService(false, this);
|
||||||
connect(m_nymeaService, &NymeadService::availableChanged, this, &Core::onNymeaServiceAvailableChanged);
|
connect(m_nymeaService, &NymeadService::availableChanged, this, &Core::onNymeaServiceAvailableChanged);
|
||||||
@ -192,9 +192,13 @@ void Core::evaluateNetworkManagerState(NetworkManager::NetworkManagerState state
|
|||||||
case NetworkManager::NetworkManagerStateAsleep:
|
case NetworkManager::NetworkManagerStateAsleep:
|
||||||
case NetworkManager::NetworkManagerStateDisconnected:
|
case NetworkManager::NetworkManagerStateDisconnected:
|
||||||
case NetworkManager::NetworkManagerStateConnectedLocal:
|
case NetworkManager::NetworkManagerStateConnectedLocal:
|
||||||
// Everything else is not connected, start the service
|
if (m_networkManager->available()) {
|
||||||
qCDebug(dcApplication()) << "Start the bluetooth service because of \"offline\" mode.";
|
// Everything else is not connected, start the service
|
||||||
startService();
|
qCDebug(dcApplication()) << "Start the bluetooth service because of \"offline\" mode.";
|
||||||
|
startService();
|
||||||
|
} else {
|
||||||
|
qCDebug(dcApplication()) << "Not starting the service yet because the networkmanager is not available.";
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
qCDebug(dcApplication()) << "Ignoring" << state;
|
qCDebug(dcApplication()) << "Ignoring" << state;
|
||||||
@ -288,7 +292,6 @@ void Core::onBluetoothServerConnectedChanged(bool connected)
|
|||||||
|
|
||||||
if (!connected) {
|
if (!connected) {
|
||||||
m_advertisingTimer->stop();
|
m_advertisingTimer->stop();
|
||||||
m_bluetoothServer->stop();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user