diff options
Diffstat (limited to 'src/networksettings/connman')
6 files changed, 27 insertions, 11 deletions
diff --git a/src/networksettings/connman/connmancommon.cpp b/src/networksettings/connman/connmancommon.cpp index ae57da8..887af48 100644 --- a/src/networksettings/connman/connmancommon.cpp +++ b/src/networksettings/connman/connmancommon.cpp @@ -55,6 +55,9 @@ const QString &operator>>(const QString &argument, QNetworkSettingsType &obj) else if (argument == AttributeWifi) { obj.setType(QNetworkSettingsType::Wifi); } + else if (argument == AttributeBluetooth) { + obj.setType(QNetworkSettingsType::Bluetooth); + } else { obj.setType(QNetworkSettingsType::Unknown); } diff --git a/src/networksettings/connman/connmancommon.h b/src/networksettings/connman/connmancommon.h index 9c6e53a..442730f 100644 --- a/src/networksettings/connman/connmancommon.h +++ b/src/networksettings/connman/connmancommon.h @@ -42,6 +42,7 @@ #define AttributeWifi QStringLiteral("wifi") #define AttributeEthernet QStringLiteral("ethernet") +#define AttributeBluetooth QStringLiteral("bluetooth") #define AttributeIdle QStringLiteral("idle") #define AttributeFailure QStringLiteral("failure") #define AttributeAssociation QStringLiteral("association") diff --git a/src/networksettings/connman/qnetworksettingsinterface_p.cpp b/src/networksettings/connman/qnetworksettingsinterface_p.cpp index 041dcca..5a64c15 100644 --- a/src/networksettings/connman/qnetworksettingsinterface_p.cpp +++ b/src/networksettings/connman/qnetworksettingsinterface_p.cpp @@ -97,7 +97,10 @@ void QNetworkSettingsInterfacePrivate::setPowered(const bool aPowered) void QNetworkSettingsInterfacePrivate::scan() { - m_technology->Scan(); + if (m_powered) + m_technology->Scan(); + else + qDebug() << "Tried to scan while not powered"; } QT_END_NAMESPACE diff --git a/src/networksettings/connman/qnetworksettingsmanager_p.cpp b/src/networksettings/connman/qnetworksettingsmanager_p.cpp index a136237..b3373ee 100644 --- a/src/networksettings/connman/qnetworksettingsmanager_p.cpp +++ b/src/networksettings/connman/qnetworksettingsmanager_p.cpp @@ -81,12 +81,9 @@ QNetworkSettingsManagerPrivate::QNetworkSettingsManagerPrivate(QNetworkSettingsM void QNetworkSettingsManagerPrivate::requestInput(const QString& service, const QString& type) { + Q_UNUSED(service); Q_UNUSED(type); - foreach (QNetworkSettingsService* servicePtr, m_serviceModel->getModel()) { - if (servicePtr->id() == service) - emit servicePtr->showCrendentialInput(); - } - m_agent->showUserCredentialsInput(); + emit m_agent->showUserCredentialsInput(); } void QNetworkSettingsManagerPrivate::getServicesFinished(QDBusPendingCallWatcher *watcher) diff --git a/src/networksettings/connman/qnetworksettingsuseragent_p.cpp b/src/networksettings/connman/qnetworksettingsuseragent_p.cpp index 595092b..e9e8063 100644 --- a/src/networksettings/connman/qnetworksettingsuseragent_p.cpp +++ b/src/networksettings/connman/qnetworksettingsuseragent_p.cpp @@ -46,8 +46,14 @@ QNetworkSettingsUserAgentPrivate::QNetworkSettingsUserAgentPrivate(QNetworkSetti void QNetworkSettingsUserAgentPrivate::cancel() { // handle method call net.connman.Agent.Cancel + if (!m_pendingReply) + return; + m_pendingReply = false; - QMetaObject::invokeMethod(parent(), "Cancel"); + QDBusMessage errorMessage = m_pendingMessage.createErrorReply( + QStringLiteral("net.connman.Agent.Error.Canceled"), + QStringLiteral("")); + QDBusConnection::systemBus().send(errorMessage); } void QNetworkSettingsUserAgentPrivate::release() @@ -76,8 +82,9 @@ QVariantMap QNetworkSettingsUserAgentPrivate::RequestInput(const QDBusObjectPath Q_UNUSED(path); Q_UNUSED(params); msg.setDelayedReply(true); - m_reply = msg.createReply(); + m_pendingReply = true; + m_pendingMessage = msg; emit q->showUserCredentialsInput(); return QVariantMap(); } @@ -85,11 +92,16 @@ QVariantMap QNetworkSettingsUserAgentPrivate::RequestInput(const QDBusObjectPath void QNetworkSettingsUserAgentPrivate::setPassphrase(const QString& passphrase) { m_passphrase = passphrase; + if (!m_pendingReply) + return; + QVariantMap response; response[PropertyPassphrase] = m_passphrase; - m_reply << response; + + QDBusMessage reply = m_pendingMessage.createReply(); + reply << response; m_pendingReply = false; - QDBusConnection::systemBus().send(m_reply); + QDBusConnection::systemBus().send(reply); } QT_END_NAMESPACE diff --git a/src/networksettings/connman/qnetworksettingsuseragent_p.h b/src/networksettings/connman/qnetworksettingsuseragent_p.h index 6433918..180eea5 100644 --- a/src/networksettings/connman/qnetworksettingsuseragent_p.h +++ b/src/networksettings/connman/qnetworksettingsuseragent_p.h @@ -72,7 +72,7 @@ public Q_SLOTS: // Dbus methods void registerAgent(); private: QNetworkSettingsUserAgent *q_ptr; - QDBusMessage m_reply; + QDBusMessage m_pendingMessage; bool m_pendingReply; QString m_passphrase; }; |