modify hotspot
This commit is contained in:
parent
2f8f8a9e4a
commit
4d2eda8529
|
@ -7,6 +7,7 @@ KyApConnectItem::KyApConnectItem(QObject *parent) : QObject(parent)
|
|||
m_connectUuid = "";
|
||||
m_ifaceName = "";
|
||||
m_password = "";
|
||||
m_isActivated = false;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@ public:
|
|||
QString m_connectUuid;
|
||||
QString m_ifaceName;
|
||||
QString m_password;
|
||||
bool m_isActivated;
|
||||
};
|
||||
|
||||
#endif // KYLINAPCONNECTITEM_H
|
||||
|
|
|
@ -505,6 +505,7 @@ KyApConnectItem *KyConnectResourse::getApConnectItem(NetworkManager::Connection:
|
|||
apConnectItem->m_connectName = connectPtr->name();
|
||||
apConnectItem->m_connectUuid = connectPtr->uuid();
|
||||
apConnectItem->m_ifaceName = settingPtr->interfaceName();
|
||||
apConnectItem->m_isActivated = m_networkResourceInstance->isActiveConnection(connectPtr->uuid());
|
||||
|
||||
//NetworkManager::WirelessSecuritySetting::Ptr wirelessSecuritySetting
|
||||
// = settingPtr->setting(NetworkManager::Setting::WirelessSecurity).dynamicCast<NetworkManager::WirelessSecuritySetting>();
|
||||
|
|
|
@ -244,6 +244,9 @@ QString KyWirelessConnectOperation::getPsk(const QString &connectUuid)
|
|||
return "";
|
||||
}
|
||||
QDBusPendingReply<NMVariantMapMap> reply = connectPtr->secrets(PSK_SETTING_NAME);
|
||||
if(!reply.isValid()) {
|
||||
return "";
|
||||
}
|
||||
QMap<QString,QVariantMap> map(reply.value());
|
||||
if (map.contains("802-11-wireless-security") && map.value("802-11-wireless-security").contains("psk"))
|
||||
{
|
||||
|
@ -696,10 +699,10 @@ void KyWirelessConnectOperation::updateWirelessApSetting(
|
|||
|
||||
NetworkManager::WirelessSecuritySetting::Ptr wirelessSecuritySetting
|
||||
= apConnectSettingPtr->setting(NetworkManager::Setting::WirelessSecurity).dynamicCast<NetworkManager::WirelessSecuritySetting>();
|
||||
wirelessSecuritySetting->setInitialized(true);
|
||||
if (apPassword.isEmpty()) {
|
||||
wirelessSecuritySetting->setKeyMgmt(NetworkManager::WirelessSecuritySetting::WpaNone);
|
||||
wirelessSecuritySetting->setInitialized(false);
|
||||
} else {
|
||||
wirelessSecuritySetting->setInitialized(true);
|
||||
wirelessSecuritySetting->setKeyMgmt(NetworkManager::WirelessSecuritySetting::WpaPsk);
|
||||
wirelessSecuritySetting->setPsk(apPassword);
|
||||
}
|
||||
|
@ -715,7 +718,7 @@ void KyWirelessConnectOperation::activeWirelessAp(const QString apUuid, const QS
|
|||
if (nullptr == connectPtr) {
|
||||
NetworkManager::Device::Ptr devicePtr = m_networkResourceInstance->findDeviceInterface(apDevice);
|
||||
if (devicePtr.isNull()) {
|
||||
QString errorMsg ="Create hotpot faild. " + apDevice + " is not existed";
|
||||
QString errorMsg ="Create hotspot faild. " + apDevice + " is not existed";
|
||||
qWarning()<< errorMsg;
|
||||
emit addAndActivateConnectionError(errorMsg);
|
||||
return;
|
||||
|
@ -730,7 +733,7 @@ void KyWirelessConnectOperation::activeWirelessAp(const QString apUuid, const QS
|
|||
watcher = new QDBusPendingCallWatcher{NetworkManager::addAndActivateConnection(apConnectSettingPtr->toMap(), deviceIdentifier, specificObject), this};
|
||||
connect(watcher, &QDBusPendingCallWatcher::finished, [&] (QDBusPendingCallWatcher * watcher) {
|
||||
if (watcher->isError() || !watcher->isValid()) {
|
||||
QString errorMsg = "Create hotpot faild. " + watcher->error().message();
|
||||
QString errorMsg = "Create hotspot faild. " + watcher->error().message();
|
||||
qWarning() << errorMsg;
|
||||
emit addAndActivateConnectionError(errorMsg);
|
||||
}
|
||||
|
@ -831,7 +834,7 @@ void KyWirelessConnectOperation::activateApConnectionByUuid(const QString apUuid
|
|||
QString connectName = "";
|
||||
QString specificObject = "";
|
||||
|
||||
qDebug()<<"it will activate hotpot connect"<<apUuid;
|
||||
qDebug()<<"it will activate hotspot connect"<<apUuid;
|
||||
|
||||
connectPath = connectPtr->path();
|
||||
connectName = connectPtr->name();
|
||||
|
@ -842,7 +845,7 @@ void KyWirelessConnectOperation::activateApConnectionByUuid(const QString apUuid
|
|||
}
|
||||
|
||||
if (deviceIdentifier.isEmpty()) {
|
||||
QString errorMessage = tr("Create hotpot faild.Device Identifier is empty, its name") + apDevice;
|
||||
QString errorMessage = tr("Create hotspot faild.Device Identifier is empty, its name") + apDevice;
|
||||
qWarning() << errorMessage;
|
||||
Q_EMIT activateConnectionError(errorMessage);
|
||||
return ;
|
||||
|
@ -852,7 +855,7 @@ void KyWirelessConnectOperation::activateApConnectionByUuid(const QString apUuid
|
|||
watcher = new QDBusPendingCallWatcher{NetworkManager::activateConnection(connectPath, deviceIdentifier, specificObject), this};
|
||||
connect(watcher, &QDBusPendingCallWatcher::finished, [this, connectName, apDevice] (QDBusPendingCallWatcher * watcher) {
|
||||
if (watcher->isError() || !watcher->isValid()) {
|
||||
QString errorMessage = tr("Create hotpot faild. ") + watcher->error().message();
|
||||
QString errorMessage = tr("Create hotspot faild. ") + watcher->error().message();
|
||||
qWarning()<<errorMessage;
|
||||
emit this->activateConnectionError(errorMessage);
|
||||
} else {
|
||||
|
|
|
@ -33,12 +33,16 @@ void saveDeviceEnableState(QString deviceName, bool enable)
|
|||
return;
|
||||
}
|
||||
|
||||
bool getDeviceEnableState(QMap<QString, bool> &map)
|
||||
void getDeviceEnableState(int type, QMap<QString, bool> &map)
|
||||
{
|
||||
if (!QFile::exists(CONFIG_FILE_PATH)) {
|
||||
return false;
|
||||
}
|
||||
map.clear();
|
||||
if (!QFile::exists(CONFIG_FILE_PATH)) {
|
||||
return;
|
||||
}
|
||||
if (type != 0 && type != 1) {
|
||||
qDebug() << "getDeviceEnableState but wrong type";
|
||||
return;
|
||||
}
|
||||
|
||||
KyNetworkDeviceResourse * kdr = new KyNetworkDeviceResourse();
|
||||
QStringList wiredDevList,wirelessDevList;
|
||||
|
@ -48,19 +52,21 @@ bool getDeviceEnableState(QMap<QString, bool> &map)
|
|||
QSettings * m_settings = new QSettings(CONFIG_FILE_PATH, QSettings::IniFormat);
|
||||
m_settings->beginGroup("CARDEABLE");
|
||||
|
||||
kdr->getNetworkDeviceList(NetworkManager::Device::Type::Ethernet, wiredDevList);
|
||||
if (!wiredDevList.isEmpty()) {
|
||||
for (int i = 0; i < wiredDevList.size(); ++i) {
|
||||
bool enable = m_settings->value(wiredDevList.at(i), true).toBool();
|
||||
map.insert(wiredDevList.at(i), enable);
|
||||
if (type == 0) {
|
||||
kdr->getNetworkDeviceList(NetworkManager::Device::Type::Ethernet, wiredDevList);
|
||||
if (!wiredDevList.isEmpty()) {
|
||||
for (int i = 0; i < wiredDevList.size(); ++i) {
|
||||
bool enable = m_settings->value(wiredDevList.at(i), true).toBool();
|
||||
map.insert(wiredDevList.at(i), enable);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
kdr->getNetworkDeviceList(NetworkManager::Device::Type::Wifi, wirelessDevList);
|
||||
if (!wirelessDevList.isEmpty()) {
|
||||
for (int i = 0; i < wirelessDevList.size(); ++i) {
|
||||
bool enable = m_settings->value(wirelessDevList.at(i), true).toBool();
|
||||
map.insert(wirelessDevList.at(i), enable);
|
||||
} else if (type == 1) {
|
||||
kdr->getNetworkDeviceList(NetworkManager::Device::Type::Wifi, wirelessDevList);
|
||||
if (!wirelessDevList.isEmpty()) {
|
||||
for (int i = 0; i < wirelessDevList.size(); ++i) {
|
||||
bool enable = m_settings->value(wirelessDevList.at(i), true).toBool();
|
||||
map.insert(wirelessDevList.at(i), enable);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -69,7 +75,7 @@ bool getDeviceEnableState(QMap<QString, bool> &map)
|
|||
m_settings = nullptr;
|
||||
delete kdr;
|
||||
kdr = nullptr;
|
||||
return true;
|
||||
return;
|
||||
}
|
||||
|
||||
//设置默认网卡
|
||||
|
@ -258,11 +264,11 @@ void DbusAdaptor::deActivateConnect(int type, QString devName, QString ssid)
|
|||
}
|
||||
|
||||
//获取设备列表和启用/禁用状态
|
||||
QMap<QString, bool> DbusAdaptor::getDeviceListAndEnabled()
|
||||
QMap<QString, bool> DbusAdaptor::getDeviceListAndEnabled(int devType)
|
||||
{
|
||||
QMap<QString, bool> map;
|
||||
map.clear();
|
||||
getDeviceEnableState(map);
|
||||
getDeviceEnableState(devType, map);
|
||||
return map;
|
||||
}
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@ public Q_SLOTS: // METHODS
|
|||
//断开连接 根据网卡类型 参数1 0:lan 1:wlan 参数3 为ssid/uuid
|
||||
Q_NOREPLY void deActivateConnect(int type, QString devName, QString ssid);
|
||||
//获取设备列表和启用/禁用状态
|
||||
QMap<QString, bool> getDeviceListAndEnabled();
|
||||
QMap<QString, bool> getDeviceListAndEnabled(int devType);
|
||||
//唤起属性页 根据网卡类型 参数2 为ssid/uuid
|
||||
Q_NOREPLY void showPropertyWidget(QString devName, QString ssid);
|
||||
//唤起新建有线连接界面
|
||||
|
@ -97,9 +97,9 @@ Q_SIGNALS: // SIGNALS
|
|||
void deviceStatusChanged();
|
||||
void deviceNameChanged(QString oldName, QString newName);
|
||||
//热点断开
|
||||
void hotPotDeactivated(QString devName, QString ssid);
|
||||
void hotspotDeactivated(QString devName, QString ssid);
|
||||
//热点连接
|
||||
void hotPotActivated(QString devName, QString ssid);
|
||||
void hotspotActivated(QString devName, QString ssid);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -154,8 +154,8 @@ void MainWindow::initDbusConnnect()
|
|||
connect(m_lanWidget, &LanPage::wiredActivating, this, &MainWindow::wiredActivating);
|
||||
connect(m_wlanWidget, &WlanPage::wirelessActivating, this, &MainWindow::wirelessActivating);
|
||||
|
||||
connect(m_wlanWidget, &WlanPage::hotPotDeactivated, this, &MainWindow::hotPotDeactivated);
|
||||
connect(m_wlanWidget, &WlanPage::hotPotActivated, this, &MainWindow::hotPotActivated);
|
||||
connect(m_wlanWidget, &WlanPage::hotspotDeactivated, this, &MainWindow::hotspotDeactivated);
|
||||
connect(m_wlanWidget, &WlanPage::hotspotActivated, this, &MainWindow::hotspotActivated);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -52,8 +52,8 @@ signals:
|
|||
void activateFailed(QString errorMessage);
|
||||
void deactivateFailed(QString errorMessage);
|
||||
//热点断开
|
||||
void hotPotDeactivated(QString devName, QString ssid);
|
||||
void hotPotActivated(QString devName, QString ssid);
|
||||
void hotspotDeactivated(QString devName, QString ssid);
|
||||
void hotspotActivated(QString devName, QString ssid);
|
||||
public slots:
|
||||
|
||||
protected:
|
||||
|
|
|
@ -364,8 +364,8 @@ void WlanPage::onActivatedWlanChanged(QString uuid, NetworkManager::ActiveConnec
|
|||
if (!apConnectItemList.isEmpty()) {
|
||||
foreach (auto item, apConnectItemList) {
|
||||
if (item->m_connectUuid == uuid) {
|
||||
qDebug() << "[WlanPage] hotpot Deactivated";
|
||||
emit hotPotDeactivated(item->m_ifaceName, ssid);
|
||||
qDebug() << "[WlanPage] hotspot Deactivated";
|
||||
emit hotspotDeactivated(item->m_ifaceName, ssid);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -378,8 +378,8 @@ void WlanPage::onActivatedWlanChanged(QString uuid, NetworkManager::ActiveConnec
|
|||
if (!apConnectItemList.isEmpty()) {
|
||||
foreach (auto item, apConnectItemList) {
|
||||
if (item->m_connectUuid == uuid) {
|
||||
qDebug() << "[WlanPage] hotpot Deactivated";
|
||||
emit hotPotActivated(item->m_ifaceName, ssid);
|
||||
qDebug() << "[WlanPage] hotspot Deactivated";
|
||||
emit hotspotActivated(item->m_ifaceName, ssid);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -514,7 +514,7 @@ void WlanPage::deactiveWirelessAp(const QString apName, const QString apPassword
|
|||
m_wirelessConnectOpreation->deactiveWirelessAp(apName, uuid);
|
||||
} else {
|
||||
qDebug() << "[WlanPage] deactiveWirelessAp can not find apName " << apName;
|
||||
emit deactivateFailed("Deactivate hotpot failed.Don't exist");
|
||||
emit deactivateFailed("Deactivate hotspot failed.Don't exist " + apName);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -527,6 +527,7 @@ void WlanPage::getStoredApInfo(QStringList &list)
|
|||
list << apConnectItemList.at(0)->m_connectName;
|
||||
list << apConnectItemList.at(0)->m_password;
|
||||
list << apConnectItemList.at(0)->m_ifaceName;
|
||||
list << (apConnectItemList.at(0)->m_isActivated? "true":"false");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -33,8 +33,8 @@ public:
|
|||
signals:
|
||||
void oneItemExpanded(const QString &ssid);
|
||||
void wirelessActivating(QString devName, QString ssid);
|
||||
void hotPotDeactivated(QString devName, QString ssid);
|
||||
void hotPotActivated(QString devName, QString ssid);
|
||||
void hotspotDeactivated(QString devName, QString ssid);
|
||||
void hotspotActivated(QString devName, QString ssid);
|
||||
|
||||
protected:
|
||||
bool eventFilter(QObject *watched, QEvent *event);
|
||||
|
|
Loading…
Reference in New Issue