From 3f9079cd958e001bda629b439b235aebd988999e Mon Sep 17 00:00:00 2001 From: kangshuning Date: Tue, 19 Oct 2021 09:16:44 +0800 Subject: [PATCH 1/3] lan switchbutton not enable without device --- src/frontend/netdetails/netdetail.h | 2 +- src/frontend/tab-pages/lanpage.cpp | 28 +++++++++++++++++++++------- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/src/frontend/netdetails/netdetail.h b/src/frontend/netdetails/netdetail.h index 950670af..396788a8 100644 --- a/src/frontend/netdetails/netdetail.h +++ b/src/frontend/netdetails/netdetail.h @@ -129,9 +129,9 @@ private: private slots: void on_btnConfirm_clicked(); void on_btnForget_clicked(); + void onPaletteChanged(); signals: void detailPageClose(bool on); - void onPaletteChanged(); }; #endif // NETDETAIL_H diff --git a/src/frontend/tab-pages/lanpage.cpp b/src/frontend/tab-pages/lanpage.cpp index 55dce961..ac43a285 100644 --- a/src/frontend/tab-pages/lanpage.cpp +++ b/src/frontend/tab-pages/lanpage.cpp @@ -52,9 +52,6 @@ LanPage::~LanPage() void LanPage::initLanDevice() { - m_devList.clear(); - m_deviceResource->getNetworkDeviceList(NetworkManager::Device::Type::Ethernet, m_devList); - m_currentDeviceName = getDefaultDeviceName(WIRED); QMap deviceStateMap; @@ -93,11 +90,18 @@ void LanPage::initLanDevice() void LanPage::initNetSwitch() { + m_devList.clear(); + m_deviceResource->getNetworkDeviceList(NetworkManager::Device::Type::Ethernet, m_devList); + if (QGSettings::isSchemaInstalled(GSETTINGS_SCHEMA)) { m_switchGsettings = new QGSettings(GSETTINGS_SCHEMA); if (m_switchGsettings->keys().contains(WIRED_SWITCH)) { m_wiredSwitch = m_switchGsettings->get(WIRED_SWITCH).toBool(); - m_netSwitch->setSwitchStatus(m_wiredSwitch); + if (m_wiredSwitch && m_devList.count() > 0) { + m_netSwitch->setSwitchStatus(true); + } else { + m_netSwitch->setSwitchStatus(false); + } connect(m_switchGsettings, &QGSettings::changed, this, &LanPage::onSwithGsettingsChanged); } connect(m_netSwitch, &SwitchButton::clicked, this, &LanPage::onLanSwitchClicked); @@ -141,7 +145,9 @@ void LanPage::onLanSwitchClicked() qDebug()<<"[LanPage] On lan switch button clicked! Status:" <getSwitchStatus(); if (m_netSwitch->getSwitchStatus()) { - m_switchGsettings->set(WIRED_SWITCH, true); + if (m_devList.count() > 0) { + m_switchGsettings->set(WIRED_SWITCH, true); + } } else { m_switchGsettings->set(WIRED_SWITCH, false); } @@ -526,6 +532,11 @@ void LanPage::deleteDeviceFromCombox(QString deviceName) disconnect(m_deviceComboBox, QOverload::of(&QComboBox::currentIndexChanged), this, &LanPage::onDeviceComboxIndexChanged); + if (m_devList.count() == 0) { + m_netSwitch->setSwitchStatus(false); + m_switchGsettings->set(WIRED_SWITCH, false); + } + if (m_wiredSwitch) { if (0 == m_enableDeviceList.count()) { //1、没有使能任何网卡 @@ -580,6 +591,7 @@ void LanPage::onDeviceRemove(QString deviceName) qDebug() << "[LanPage] deviceRemove:" << deviceName; + m_devList.removeOne(deviceName); QString nowDevice = m_currentDeviceName; deleteDeviceFromCombox(deviceName); if (nowDevice == deviceName) { @@ -587,7 +599,6 @@ void LanPage::onDeviceRemove(QString deviceName) initLanArea(); } - m_devList.removeOne(deviceName); if (m_enableDeviceList.contains(deviceName)) { m_enableDeviceList.removeOne(deviceName); } @@ -677,6 +688,8 @@ void LanPage::initUI() m_inactivatedLanListWidget->setSpacing(LAN_LIST_SPACING); m_inactivatedLanListWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); // m_inactivatedLanListWidget->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); //用了listwidget的滚动条 +// m_inactivatedLanListWidget->setSortingEnabled(true); +// m_inactivatedLanListWidget->sortItems(Qt::AscendingOrder); inactiveLanListLayout->addWidget(m_inactivatedLanListWidget); m_settingsLabel->installEventFilter(this); @@ -686,7 +699,8 @@ QListWidgetItem *LanPage::addNewItem(KyConnectItem *itemData, QListWidget *listW { QListWidgetItem *p_listWidgetItem = new QListWidgetItem(); p_listWidgetItem->setSizeHint(QSize(listWidget->width(),ITEM_HEIGHT)); - listWidget->insertItem(0, p_listWidgetItem); +// listWidget->insertItem(0, p_listWidgetItem); + listWidget->addItem(p_listWidgetItem); LanListItem *p_lanItem = nullptr; if (itemData != nullptr) { From 7eaaa47fe3252aa2b0e526da9302be8aeb87f0ac Mon Sep 17 00:00:00 2001 From: kangshuning Date: Tue, 19 Oct 2021 18:46:13 +0800 Subject: [PATCH 2/3] bug#85839 --- src/frontend/tab-pages/lanpage.cpp | 38 ++++++++++++++++++++++++++---- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/src/frontend/tab-pages/lanpage.cpp b/src/frontend/tab-pages/lanpage.cpp index ac43a285..cbf98cb2 100644 --- a/src/frontend/tab-pages/lanpage.cpp +++ b/src/frontend/tab-pages/lanpage.cpp @@ -415,10 +415,6 @@ void LanPage::onRemoveConnection(QString path) //删除时后端会 qDebug() << "[LanPage] emit lanRemove because onRemoveConnection " << path; emit lanRemove(path); - QEventLoop loop; - QTimer::singleShot(200, &loop, SLOT(quit())); - loop.exec(); - QMap::iterator iters; for (iters = m_deactiveMap.begin(); iters != m_deactiveMap.end(); ++iters) { KyConnectItem *p_item = iters.key(); @@ -438,10 +434,34 @@ void LanPage::onRemoveConnection(QString path) //删除时后端会 delete p_item; p_item = nullptr; + return; + } + } + QMap::iterator iter; + for (iter = m_activeMap.begin(); iter != m_activeMap.end(); ++iter) { + KyConnectItem *p_item = iter.key(); + if (p_item->m_connectPath == path) { + qDebug()<<"[LanPage] Remove a connection from active list"; + + LanListItem *p_lanItem = (LanListItem *)m_activatedLanListWidget->itemWidget(iter.value()); + + m_activatedLanListWidget->removeItemWidget(iter.value()); + + delete p_lanItem; + p_lanItem = nullptr; + + delete(iter.value()); + m_activeMap.erase(iter); + + delete p_item; + p_item = nullptr; + break; } } - + if (m_activeMap.count() <= 0) { + addEmptyConnectItem(m_activeMap, m_activatedLanListWidget); + } return; } @@ -510,6 +530,11 @@ void LanPage::onDeviceAdd(QString deviceName, NetworkManager::Device::Type devic return; } + if (m_devList.count() == 0) { // 有线网卡从无到有,打开开关 + m_netSwitch->setSwitchStatus(true); + m_switchGsettings->set(WIRED_SWITCH, true); + } + qDebug() << "[LanPage] Begin add device:" << deviceName; m_devList << deviceName; @@ -744,6 +769,7 @@ void LanPage::updateActivatedConnectionArea(QString uuid) qDebug()<<"[LanPage]update active connection item"<m_connectName; QListWidgetItem *p_listWidgetItem = addNewItem(p_newItem, m_activatedLanListWidget); m_activeMap.insert(p_newItem, p_listWidgetItem); + this->showDesktopNotify(tr("LAN Connected Successfully")); } else { //释放内存 delete p_newItem; @@ -780,6 +806,7 @@ void LanPage::updateConnectionArea(QString uuid) qDebug()<<"[LanPage] update connection item"<m_connectName; QListWidgetItem *p_listWidgetItem = addNewItem(p_newItem, m_inactivatedLanListWidget); m_deactiveMap.insert(p_newItem, p_listWidgetItem); + this->showDesktopNotify(tr("LAN Disconnected Successfully")); } else { delete p_newItem; p_newItem = nullptr; @@ -794,6 +821,7 @@ void LanPage::onUpdateLanlist(QString uuid, { //lanpage函数内持续监听连接状态的变化并记录供其他函数调用获取状态 if (!m_connectResourse->isWiredConnection(uuid)) { + qDebug() << "[LanPage] connection state change signal but not wired"; return; } From f2b41b4f653b9919b158bea832d37d3ef94aa953 Mon Sep 17 00:00:00 2001 From: kangshuning Date: Tue, 19 Oct 2021 20:11:00 +0800 Subject: [PATCH 3/3] bug#85102 --- src/frontend/tab-pages/lanpage.cpp | 134 ++++++------- src/frontend/tab-pages/lanpage.h | 4 + translations/kylin-nm_zh_CN.qm | Bin 6696 -> 6849 bytes translations/kylin-nm_zh_CN.ts | 292 +++++++++++++++-------------- 4 files changed, 222 insertions(+), 208 deletions(-) diff --git a/src/frontend/tab-pages/lanpage.cpp b/src/frontend/tab-pages/lanpage.cpp index cbf98cb2..af70c949 100644 --- a/src/frontend/tab-pages/lanpage.cpp +++ b/src/frontend/tab-pages/lanpage.cpp @@ -25,8 +25,10 @@ LanPage::LanPage(QWidget *parent) : TabPage(parent) m_wiredConnectOperation = new KyWiredConnectOperation(this); initUI(); - initNetSwitch(); initLanDevice(); + initNetSwitch(); + initLanDeviceState(); + initDeviceCombox(); initLanArea(); @@ -54,16 +56,21 @@ void LanPage::initLanDevice() { m_currentDeviceName = getDefaultDeviceName(WIRED); - QMap deviceStateMap; - getDeviceEnableState(WIRED, deviceStateMap); + m_devList.clear(); + m_deviceResource->getNetworkDeviceList(NetworkManager::Device::Type::Ethernet, m_devList); +} + +void LanPage::initLanDeviceState() +{ + getDeviceEnableState(WIRED, m_deviceStateMap); QStringList disableDeviceList; disableDeviceList.clear(); m_enableDeviceList.clear(); for (int index = 0; index < m_devList.count(); ++index) { QString deviceName = m_devList.at(index); - if (deviceStateMap.contains(deviceName)) { - if (deviceStateMap[deviceName]) { + if (m_deviceStateMap.contains(deviceName)) { + if (m_deviceStateMap[deviceName]) { m_enableDeviceList<getNetworkDeviceList(NetworkManager::Device::Type::Ethernet, m_devList); + m_wiredSwitch = true; if (QGSettings::isSchemaInstalled(GSETTINGS_SCHEMA)) { m_switchGsettings = new QGSettings(GSETTINGS_SCHEMA); if (m_switchGsettings->keys().contains(WIRED_SWITCH)) { m_wiredSwitch = m_switchGsettings->get(WIRED_SWITCH).toBool(); - if (m_wiredSwitch && m_devList.count() > 0) { - m_netSwitch->setSwitchStatus(true); - } else { - m_netSwitch->setSwitchStatus(false); - } connect(m_switchGsettings, &QGSettings::changed, this, &LanPage::onSwithGsettingsChanged); } - connect(m_netSwitch, &SwitchButton::clicked, this, &LanPage::onLanSwitchClicked); } else { qDebug()<<"[LanPage] org.ukui.kylin-nm.switch is not installed!"; } + + if (m_devList.count() == 0) { + m_wiredSwitch = false; + } + + m_netSwitch->setSwitchStatus(m_wiredSwitch); + + connect(m_netSwitch, &SwitchButton::clicked, this, &LanPage::onLanSwitchClicked); + + return; } void LanPage::onSwithGsettingsChanged(const QString &key) @@ -147,6 +157,8 @@ void LanPage::onLanSwitchClicked() if (m_netSwitch->getSwitchStatus()) { if (m_devList.count() > 0) { m_switchGsettings->set(WIRED_SWITCH, true); + } else { + this->showDesktopNotify(tr("No ethernet device avaliable")); } } else { m_switchGsettings->set(WIRED_SWITCH, false); @@ -409,60 +421,49 @@ void LanPage::initLanArea() return; } +bool LanPage::removeConnectionItem(QMap &connectMap, + QListWidget *lanListWidget, QString path) +{ + QMap::iterator iter; + for (iter = connectMap.begin(); iter != connectMap.end(); ++iter) { + KyConnectItem *p_item = iter.key(); + if (p_item->m_connectPath == path) { + qDebug()<<"[LanPage] Remove a connection from list"; + + LanListItem *p_lanItem = (LanListItem *)lanListWidget->itemWidget(iter.value()); + + lanListWidget->removeItemWidget(iter.value()); + + delete p_lanItem; + p_lanItem = nullptr; + + delete(iter.value()); + connectMap.erase(iter); + + delete p_item; + p_item = nullptr; + + return true; + } + } + return false; +} + void LanPage::onRemoveConnection(QString path) //删除时后端会自动断开激活,将其从未激活列表中删除 { //for dbus qDebug() << "[LanPage] emit lanRemove because onRemoveConnection " << path; emit lanRemove(path); - QMap::iterator iters; - for (iters = m_deactiveMap.begin(); iters != m_deactiveMap.end(); ++iters) { - KyConnectItem *p_item = iters.key(); - if (p_item->m_connectPath == path) { - qDebug()<<"[LanPage] Remove a connection from inactive list"; - - LanListItem *p_lanItem = (LanListItem *)m_inactivatedLanListWidget->itemWidget(iters.value()); - - m_inactivatedLanListWidget->removeItemWidget(iters.value()); - - delete p_lanItem; - p_lanItem = nullptr; - - delete(iters.value()); - m_deactiveMap.erase(iters); - - delete p_item; - p_item = nullptr; - - return; + if (removeConnectionItem(m_deactiveMap, m_inactivatedLanListWidget, path)) { + return; + } else { + removeConnectionItem(m_activeMap, m_activatedLanListWidget, path); + if (m_activeMap.count() <= 0) { + addEmptyConnectItem(m_activeMap, m_activatedLanListWidget); } + return; } - QMap::iterator iter; - for (iter = m_activeMap.begin(); iter != m_activeMap.end(); ++iter) { - KyConnectItem *p_item = iter.key(); - if (p_item->m_connectPath == path) { - qDebug()<<"[LanPage] Remove a connection from active list"; - - LanListItem *p_lanItem = (LanListItem *)m_activatedLanListWidget->itemWidget(iter.value()); - - m_activatedLanListWidget->removeItemWidget(iter.value()); - - delete p_lanItem; - p_lanItem = nullptr; - - delete(iter.value()); - m_activeMap.erase(iter); - - delete p_item; - p_item = nullptr; - - break; - } - } - if (m_activeMap.count() <= 0) { - addEmptyConnectItem(m_activeMap, m_activatedLanListWidget); - } - return; } void LanPage::onAddConnection(QString uuid) //新增一个有线连接,将其加入到激活列表 @@ -530,9 +531,9 @@ void LanPage::onDeviceAdd(QString deviceName, NetworkManager::Device::Type devic return; } - if (m_devList.count() == 0) { // 有线网卡从无到有,打开开关 - m_netSwitch->setSwitchStatus(true); - m_switchGsettings->set(WIRED_SWITCH, true); + if (m_devList.count() == 0) {// 有线网卡从无到有,打开开关 + m_wiredSwitch = m_switchGsettings->get(WIRED_SWITCH).toBool(); + m_netSwitch->setSwitchStatus(m_wiredSwitch); } qDebug() << "[LanPage] Begin add device:" << deviceName; @@ -557,11 +558,6 @@ void LanPage::deleteDeviceFromCombox(QString deviceName) disconnect(m_deviceComboBox, QOverload::of(&QComboBox::currentIndexChanged), this, &LanPage::onDeviceComboxIndexChanged); - if (m_devList.count() == 0) { - m_netSwitch->setSwitchStatus(false); - m_switchGsettings->set(WIRED_SWITCH, false); - } - if (m_wiredSwitch) { if (0 == m_enableDeviceList.count()) { //1、没有使能任何网卡 @@ -617,6 +613,10 @@ void LanPage::onDeviceRemove(QString deviceName) qDebug() << "[LanPage] deviceRemove:" << deviceName; m_devList.removeOne(deviceName); + if (m_devList.count() == 0) { + m_netSwitch->setSwitchStatus(false); + } + QString nowDevice = m_currentDeviceName; deleteDeviceFromCombox(deviceName); if (nowDevice == deviceName) { diff --git a/src/frontend/tab-pages/lanpage.h b/src/frontend/tab-pages/lanpage.h index 3abb0893..ca6727eb 100644 --- a/src/frontend/tab-pages/lanpage.h +++ b/src/frontend/tab-pages/lanpage.h @@ -40,6 +40,7 @@ private: void initUI(); void initLanArea(); void initNetSwitch(); + void initLanDeviceState(); void initDeviceCombox(); void updateDeviceCombox(QString oldDeviceName, QString newDeviceName); @@ -47,6 +48,8 @@ private: void addDeviceForCombox(QString deviceName); QListWidgetItem *addNewItem(KyConnectItem *itemData, QListWidget *listWidget); + bool removeConnectionItem(QMap &connectMap, + QListWidget *lanListWidget, QString path); void getEnabledDevice(QStringList &enableDeviceList); void getDisabledDevices(QStringList &disableDeviceList); @@ -117,6 +120,7 @@ private: QGSettings *m_switchGsettings = nullptr; bool m_wiredSwitch = true; + QMap m_deviceStateMap; }; #endif // LANPAGE_H diff --git a/translations/kylin-nm_zh_CN.qm b/translations/kylin-nm_zh_CN.qm index 3942e145dd4955212cb4d94d6e8cffcb846b9247..a67610f878c60ce3ab4e0ec31846ecfc2f13b8f3 100644 GIT binary patch delta 980 zcmX|<2}l%i6vn^ZotfR)nOS#hkBqjKs6^So!V4=3vvAw6ElcUp+HzXA%npwTs;wwU zw6eB5Ac9EB%*xmlIxwZAJEG7ok-~^hqM)pd>ggY17=Fy-|K9)mzBdgC9f?)ePysOS zIiOtw`0@b5S4QI+aFyo)sTREcFd)|vtBKdaC(~J78u;v4fF%UJo%)P_8SQ)EkQY+l zayX_=0+dIH*E#|5BcuF@(VB;N+csdNcB@FUzvhh>d$VGDp~jQn{<{aB5!frjC@W?!|9)HxZgmo@j&>!`k( zk>AZI^lQ2*_XD;8?ZozaO2Nq(vfb2qb6Nn?2whDNT@I^F~fC9!>T<-0VYf z6vuk5U?Zm#O|cwpE|uGVvv1kPlX+PJ1uzbU>Xt~L1&^|x?$Q|~%mTskb#t=gg?5vwT-<96Cln*K~>A2|jiKY>xGGsru3ld)Dqf@u*Y+Hdgv$Rxo%hU4A<39t;(4e))2 z#=h4y=%nG}P{VRDG50Brdnx7*q|)B1#nKp_R#P9&)jC3%Mw2HD2pvZMKmz#*81ouF}MM&NWMj^l^V736-_bab(qn*U+&7dP4!cX(|wFK+@Uy^ z4f2q(cQVz*Xl3tOqP4g{-}mj?ci3ERuFP3bVu6B&QxS=<16zwS$P~(;nrVd!Ne3aDg+Gk6 zjOkQ5X%jr8l`RD+!bpF_Dk|8r5=k`B4)mwOQldxSUl-5A``qvS-0%C;(UsO<@fHBP zJ^}NDgf~&g+$R_amMnH)o`iWWKGw7@?2mIcxK-6#W!!#$IVze&6rtG0Q z0$X+}pt_KvwF8F3jEaXbI*b%+6%Z>0;F^gg1KHS~-UM(CM!E26pUry%7Y_9T%i0lX zzDO!@m@x04dKPoO9&!=V2>q1+-ZS!LjKZWQw~NHkuBrE1X|9pclB#*JrIq?e82QbN z!k{KxcNwsr&?XOe0Qzx8uXUr&oj*WpT+ua;(?!M_-S>Q2*EGW^74a0uFjsP(YHNUN z=uRMG`CNRq`lpS1e=K{sp#|>uuqqvf|P-Y0wR50=jT%>-4=2bp(-&yKA8Ts%M zz0f;(cfx7PGn+5AuOI`@_*NfnWNH%Xc?gIpl|9|`jiM9eK+7oI)+zTkt*2c5jOOifcy*9$1sH{OjQVnA)0ZcJ*ZM}e z?ku9gO68HJf^w1>ExZzTKBotXSM5nR>0ei?_Wg_8t=4X!zBs1V9w){ms(-kXlxK-i zS@n^OhmGvt>Ws60X#q=>>2A&|GVsoHzi%zgnM_~R4!ZBtQ5qift(4+}ZMr;NFkSzX W_f6Z@1e?^5&KGN59z0`q8U6!j1K3Oe diff --git a/translations/kylin-nm_zh_CN.ts b/translations/kylin-nm_zh_CN.ts index caff463f..107964e6 100644 --- a/translations/kylin-nm_zh_CN.ts +++ b/translations/kylin-nm_zh_CN.ts @@ -35,47 +35,47 @@ CreatNetPage - + Connection Name 网络名称 - + Ipv4Config Ipv4配置 - + Address 地址 - + Netmask 子网掩码 - + Default Gateway 默认网关 - + Prefs DNS 首选DNS - + Alternative DNS 备选DNS - + Auto(DHCP) 自动(DHCP) - + Manual 手动 @@ -83,57 +83,62 @@ DetailPage - + Auto Connection 自动连接 - + SSID: SSID: - + + Please input SSID: + 请输入SSID: + + + Protocol: 协议: - + Security Type: 安全类型: - + Hz: 网络频带: - + Chan: 网络通道: - + BandWidth: 带宽: - + IPV6: 本地链接IPV6地址: - + IPV4: IPV4地址: - + IPV4 Dns: IPV4 DNS服务器: - + Mac: 物理地址: @@ -371,22 +376,22 @@ EnterpriseWlanDialog - + Connect Enterprise WLAN 连接企业网 - + Close 关闭 - + Cancel 取消 - + Connect 连接 @@ -394,42 +399,42 @@ Ipv4Page - + Ipv4Config Ipv4配置 - + Address 地址 - + Netmask 子网掩码 - + Default Gateway 默认网关 - + Prefs DNS 首选DNS - + Alternative DNS 备选DNS - + Auto(DHCP) 自动 - + Manual 手动 @@ -437,42 +442,42 @@ Ipv6Page - + Ipv6Config Ipv6配置 - + Address 地址 - + Subnet prefix Length 子网前缀长度 - + Default Gateway 默认网关 - + Prefs DNS 首选DNS - + Alternative DNS 备选DNS - + Auto(DHCP) 自动 - + Manual 手动 @@ -480,12 +485,12 @@ LanListItem - + Not connected 未连接 - + Wired Device not carried 未插入网线 @@ -493,27 +498,32 @@ LanPage - + + No ethernet device avaliable + 未检测到有线设备 + + + LAN 有线网络 - + Activated LAN 已激活 - + Inactivated LAN 未激活 - + LAN Disconnected Successfully 有线网络已断开 - + LAN Connected Successfully 有线网络已连接 @@ -521,12 +531,12 @@ ListItem - + Kylin NM 麒麟网络工具 - + kylin network applet desktop message 网络提示消息 @@ -534,30 +544,30 @@ MainWindow - - + + kylin-nm 麒麟网络工具 - + LAN 有线网络 有线网络 - + WLAN 无线局域网 无线局域网 - + Show MainWindow 打开网络工具 - + Settings 设置网络项 设置网络项 @@ -566,94 +576,94 @@ NetDetail - + Kylin NM 麒麟网络工具 - + kylin network desktop message 网络提示消息 - + Detail 详情 - + Ipv4 Ipv4 - + Ipv6 Ipv6 - + Security 安全 - + Close 关闭 - + Confirm 确定 - + Cancel 取消 - + Forget this network 忘记此网络 - + Add Lan Connect 添加有线连接 - + connect hiddin wlan 连接到隐藏WLAN - - - + + + Auto 自动 - + start check ipv4 address conflict 开始检测ipv4地址冲突 - + start check ipv6 address conflict 开始检测ipv6地址冲突 - - - + + + ipv4 address conflict! ipv4地址冲突! - - + + ipv6 address conflict! - ipv4地址冲突! + ipv6地址冲突! @@ -674,7 +684,7 @@ OneConnForm - + Form @@ -702,7 +712,7 @@ OneLancForm - + Form @@ -726,63 +736,63 @@ SecurityPage - + Security 安全性 - - + + Password 密钥 - + EAP type EAP方法 - + Identity 匿名身份 - + Domain - + CA certficate CA 证书 - + no need for CA certificate 不需要CA证书 - + User certificate 用户证书 - + User private key 用户私钥 - + User key password 用户密钥密码 - + Ineer authentication 内部认证 - + Usename 用户名 @@ -792,54 +802,54 @@ 用户名 - + Ask pwd each query 每次询问密码 - - - - - - - + + + + + + + None - + WPA&WPA2 Personal WPA&WPA2 个人 - + WPA&WPA2 Enterprise WPA&WPA2 企业 - + WPA3 Personal WPA3 个人 - - - + + + Choose from file... 从文件选择... - - - + + + Choose a CA certificate 选择一个CA证书 - - - + + + CA Files (*.pem *.der *.p12 *.crt *.cer *.pfx) CA 证书 (*.pem *.der *.p12 *.crt *.cer *.pfx) @@ -847,27 +857,27 @@ TabPage - + Current Device 当前网卡 - + Devices Closed! 设备关闭! - + Settings 网络设置 - + Kylin NM 麒麟网络工具 - + kylin network applet desktop message 网络提示消息 @@ -875,42 +885,42 @@ WiFiConfigDialog - + Dialog - + WLAN Authentication - + Input WLAN Information Please - + WLAN ID: - + WLAN Name: - + Password: - + Cancl - + Ok @@ -918,31 +928,31 @@ WlanListItem - + Not connected 未连接 - - + + Disconnect 断开 - - - + + + Connect 连接 - - + + Forget 忘记此网络 - + Auto Connect 自动连接 @@ -950,32 +960,32 @@ WlanPage - + WLAN 无线局域网 - + Activated WLAN 已激活 - + Other WLAN 其他 - + More... 更多... - + WLAN Connected Successfully 无线网络已连接 - + WLAN Disconnected Successfully 无线网络已断开