summaryrefslogtreecommitdiffstats
path: root/src/networksettings/connman
diff options
context:
space:
mode:
Diffstat (limited to 'src/networksettings/connman')
-rw-r--r--src/networksettings/connman/connmancommon.cpp3
-rw-r--r--src/networksettings/connman/connmancommon.h1
-rw-r--r--src/networksettings/connman/qnetworksettingsinterface_p.cpp5
-rw-r--r--src/networksettings/connman/qnetworksettingsmanager_p.cpp7
-rw-r--r--src/networksettings/connman/qnetworksettingsuseragent_p.cpp20
-rw-r--r--src/networksettings/connman/qnetworksettingsuseragent_p.h2
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;
};