From 5a9e8c0da64f1f6f094f312cb044b2111ce8b4a7 Mon Sep 17 00:00:00 2001 From: jzxc95 <907297917@qq.com> Date: Tue, 30 May 2023 13:47:28 +0800 Subject: [PATCH] fix issue --- plugins/mobilehotspot/mobilehotspotwidget.cpp | 9 +++++++++ plugins/proxy/proxy.cpp | 18 +++++++++--------- .../dbus-interface/kylinconnectresource.cpp | 8 ++++---- .../kywirelessconnectoperation.cpp | 2 ++ .../kywirelessconnectoperation.h | 5 +++-- .../dbus-interface/kywirelessnetitem.cpp | 6 +++++- src/frontend/list-items/wlanlistitem.cpp | 3 ++- src/frontend/netdetails/netdetail.cpp | 1 + src/frontend/tab-pages/wlanpage.cpp | 2 ++ 9 files changed, 37 insertions(+), 17 deletions(-) diff --git a/plugins/mobilehotspot/mobilehotspotwidget.cpp b/plugins/mobilehotspot/mobilehotspotwidget.cpp index 9ddabbdf..e7fd3495 100644 --- a/plugins/mobilehotspot/mobilehotspotwidget.cpp +++ b/plugins/mobilehotspot/mobilehotspotwidget.cpp @@ -419,6 +419,10 @@ void MobileHotspotWidget::getApInfo() setUiEnabled(false); m_uuid = apInfo.at(4); } + int i = m_freqBandComboBox->findText(apInfo.at(5)); + if (i >= 0) { + m_freqBandComboBox->setCurrentIndex(i); + } } else { qDebug() << LOG_HEAD << "no such interface " << apInfo.at(2); } @@ -723,6 +727,7 @@ void MobileHotspotWidget::setWidgetHidden(bool isHidden) void MobileHotspotWidget::updateBandCombox() { + QString tmp = m_freqBandComboBox->currentText(); m_freqBandComboBox->clear(); QDBusReply > capReply = m_interface->call("getWirelessDeviceCap"); if (!capReply.isValid()) { @@ -737,6 +742,10 @@ void MobileHotspotWidget::updateBandCombox() if (devCapMap[m_interfaceName] & 0x04) { m_freqBandComboBox->addItem("5GHz"); } + int index = m_freqBandComboBox->findText(tmp); + if (index >= 0) { + m_freqBandComboBox->setCurrentIndex(index); + } } QFrame* MobileHotspotWidget::myLine() diff --git a/plugins/proxy/proxy.cpp b/plugins/proxy/proxy.cpp index 1adddb10..3886ad96 100644 --- a/plugins/proxy/proxy.cpp +++ b/plugins/proxy/proxy.cpp @@ -123,7 +123,7 @@ QWidget *Proxy::pluginUi() { initManualProxyStatus(); initIgnoreHostStatus(); initDbus(); - initAppProxyStatus(); +// initAppProxyStatus(); } else { qCritical() << "Xml needed by Proxy is not installed"; } @@ -371,10 +371,10 @@ void Proxy::initUi(QWidget *widget) Lyt->addWidget(mIgnoreFrame); //应用代理模块 - m_appProxyLabel = new TitleLabel(widget); - m_appProxyLabel->setText(tr("Application Proxy")); //应用代理 - setAppProxyFrameUi(widget); - setAppListFrameUi(widget); +// m_appProxyLabel = new TitleLabel(widget); +// m_appProxyLabel->setText(tr("Application Proxy")); //应用代理 +// setAppProxyFrameUi(widget); +// setAppListFrameUi(widget); //APT代理模块 mAptProxyLabel = new TitleLabel(widget); @@ -431,11 +431,11 @@ void Proxy::initUi(QWidget *widget) mverticalLayout->addWidget(mTitleLabel); mverticalLayout->addWidget(mProxyFrame); mverticalLayout->addSpacing(32); - mverticalLayout->addWidget(m_appProxyLabel); - mverticalLayout->addWidget(m_appProxyFrame); +// mverticalLayout->addWidget(m_appProxyLabel); +// mverticalLayout->addWidget(m_appProxyFrame); mverticalLayout->addSpacing(4); - mverticalLayout->addWidget(m_appListFrame); - mverticalLayout->addSpacing(32); +// mverticalLayout->addWidget(m_appListFrame); +// mverticalLayout->addSpacing(32); mverticalLayout->addWidget(mAptProxyLabel); mverticalLayout->addWidget(mAPTFrame); mverticalLayout->addStretch(); diff --git a/src/backend/dbus-interface/kylinconnectresource.cpp b/src/backend/dbus-interface/kylinconnectresource.cpp index db3ef2a1..bb2b1be8 100644 --- a/src/backend/dbus-interface/kylinconnectresource.cpp +++ b/src/backend/dbus-interface/kylinconnectresource.cpp @@ -28,8 +28,8 @@ #include #include -const QString str2GBand = "2.4Ghz"; -const QString str5GBand = "5Ghz"; +const QString str2GBand = "2.4GHz"; +const QString str5GBand = "5GHz"; static bool subLanListSort(const KyConnectItem* info1, const KyConnectItem* info2) { @@ -737,9 +737,9 @@ KyApConnectItem *KyConnectResourse::getApConnectItem(NetworkManager::Connection: apConnectItem->m_connectName = connectPtr->name(); apConnectItem->m_connectSsid = getSsidFromByteArray(rawSsid); apConnectItem->m_connectUuid = connectPtr->uuid(); - if (wirelessSetting->band() == NetworkManager::WirelessSetting::FrequencyBand::A) { + if (wirelessSetting->band() == NetworkManager::WirelessSetting::FrequencyBand::Bg) { apConnectItem->m_band = str2GBand; - } else if (wirelessSetting->band() == NetworkManager::WirelessSetting::FrequencyBand::Bg) { + } else if (wirelessSetting->band() == NetworkManager::WirelessSetting::FrequencyBand::A) { apConnectItem->m_band = str5GBand; } apConnectItem->m_ifaceName = settingPtr->interfaceName(); diff --git a/src/backend/dbus-interface/kywirelessconnectoperation.cpp b/src/backend/dbus-interface/kywirelessconnectoperation.cpp index f76c8df7..6e44439e 100644 --- a/src/backend/dbus-interface/kywirelessconnectoperation.cpp +++ b/src/backend/dbus-interface/kywirelessconnectoperation.cpp @@ -1206,6 +1206,7 @@ void KyWirelessConnectOperation::updateWirelessApSetting( wirelessSecuritySetting->setKeyMgmt(NetworkManager::WirelessSecuritySetting::WpaPsk); wirelessSecuritySetting->setPsk(apPassword); } + apConnectPtr->update(apConnectSettingPtr->toMap()); QStringList blackList = getBlackListHostName(apConnectPtr->path()); NMVariantMapMap newMap = apConnectSettingPtr->toMap(); @@ -1213,6 +1214,7 @@ void KyWirelessConnectOperation::updateWirelessApSetting( newMap[KEY_802_11_WIRELESS].insert(KEY_BLACKLIST_HOSTNAME, blackList); } apConnectPtr->update(newMap); + usleep(100*1000); } void KyWirelessConnectOperation::activeWirelessAp(const QString apUuid, const QString apName, diff --git a/src/backend/dbus-interface/kywirelessconnectoperation.h b/src/backend/dbus-interface/kywirelessconnectoperation.h index c08d4f98..f23ea505 100644 --- a/src/backend/dbus-interface/kywirelessconnectoperation.h +++ b/src/backend/dbus-interface/kywirelessconnectoperation.h @@ -33,14 +33,15 @@ const QByteArray GSETTINGS_SCHEMA = "org.ukui.kylin-nm.switch"; const QString WIRELESS_SWITCH = "wirelessswitch"; -const QString WIFI_BAND_2_4GHZ = "2.4Ghz"; -const QString WIFI_BAND_5GHZ = "5Ghz"; +const QString WIFI_BAND_2_4GHZ = "2.4GHz"; +const QString WIFI_BAND_5GHZ = "5GHz"; enum KySecuType { NONE = 0, WPA_AND_WPA2_PERSONAL, WPA_AND_WPA2_ENTERPRISE, WPA3_PERSONAL, + WPA_AND_WPA3, }; enum KyKeyMgmt { diff --git a/src/backend/dbus-interface/kywirelessnetitem.cpp b/src/backend/dbus-interface/kywirelessnetitem.cpp index 59331458..11ed55e4 100644 --- a/src/backend/dbus-interface/kywirelessnetitem.cpp +++ b/src/backend/dbus-interface/kywirelessnetitem.cpp @@ -189,7 +189,11 @@ void KyWirelessNetItem::setKySecuType(QString strSecuType) if (strSecuType.indexOf(ENTERPRICE_TYPE) >= 0) { m_kySecuType = WPA_AND_WPA2_ENTERPRISE; } else if (strSecuType.indexOf(WPA3) >= 0) { - m_kySecuType = WPA3_PERSONAL; + if (strSecuType.indexOf(WPA1_AND_WPA2) >= 0) { + m_kySecuType = WPA_AND_WPA3; + } else { + m_kySecuType = WPA3_PERSONAL; + } } else if ( strSecuType.indexOf(WPA1_AND_WPA2) >= 0) { m_kySecuType = WPA_AND_WPA2_PERSONAL; } else { diff --git a/src/frontend/list-items/wlanlistitem.cpp b/src/frontend/list-items/wlanlistitem.cpp index 9b4712d3..81fb6c68 100644 --- a/src/frontend/list-items/wlanlistitem.cpp +++ b/src/frontend/list-items/wlanlistitem.cpp @@ -531,7 +531,8 @@ void WlanListItem::onNetButtonClicked() //qDebug() << "!!!!" << m_wirelessNetItem.m_kySecuType << kySecuType; //有配置或者无密码的wifi直接连接 if (m_wirelessNetItem.m_isConfigured) { - if (m_wirelessNetItem.m_kySecuType == kySecuType) { + if (m_wirelessNetItem.m_kySecuType == kySecuType || + (m_wirelessNetItem.m_kySecuType == WPA_AND_WPA3 && (kySecuType == WPA_AND_WPA2_PERSONAL || kySecuType == WPA3_PERSONAL))) { //安全类型不变直接连接 m_wirelessConnectOperation->activeWirelessConnect(m_wlanDevice, m_wirelessNetItem.m_connectUuid); qDebug()<<"[WlanListItem] Has configuration, will be activated. ssid = " diff --git a/src/frontend/netdetails/netdetail.cpp b/src/frontend/netdetails/netdetail.cpp index 5d8f6acf..85fe1821 100644 --- a/src/frontend/netdetails/netdetail.cpp +++ b/src/frontend/netdetails/netdetail.cpp @@ -721,6 +721,7 @@ void NetDetail::initSecuData() break; case WPA_AND_WPA2_PERSONAL: case WPA3_PERSONAL: + case WPA_AND_WPA3: if (!m_uuid.isEmpty()) { NetworkManager::Setting::SecretFlags flag; if (m_wirelessConnOpration->getConnSecretFlags(m_uuid, flag)) { diff --git a/src/frontend/tab-pages/wlanpage.cpp b/src/frontend/tab-pages/wlanpage.cpp index b7e3c7c4..5da79676 100644 --- a/src/frontend/tab-pages/wlanpage.cpp +++ b/src/frontend/tab-pages/wlanpage.cpp @@ -1491,6 +1491,7 @@ void WlanPage::showHiddenWlanPage(QString devName) m_joinHiddenWiFiPagePtrMap.insert(devName, hiddenWiFi); hiddenWiFi->show(); + KWindowSystem::raiseWindow(hiddenWiFi->winId()); hiddenWiFi->centerToScreen(); } @@ -1521,6 +1522,7 @@ void WlanPage::showDetailPage(QString devName, QString ssid) } }); netDetail->show(); + KWindowSystem::raiseWindow(netDetail->winId()); netDetail->centerToScreen(); return;