bug#91322#91800#91818

This commit is contained in:
kangshuning 2021-11-23 14:50:41 +08:00
parent 9862e745ba
commit 8bbf88fba1
6 changed files with 56 additions and 11 deletions

View File

@ -58,14 +58,48 @@ KyConnectItem *KyConnectResourse::getConnectionItem(NetworkManager::Connection::
connectionItem->m_ifaceName = settingPtr->interfaceName();
connectionItem->m_itemType = settingPtr->connectionType();
QString devName = getDeviceOfConnect(connectionItem->m_connectUuid);
if (m_networkResourceInstance->isActivatingConnection(connectPtr->uuid())) {
connectionItem->m_connectState = NetworkManager::ActiveConnection::State::Activating;
if (connectionItem->m_ifaceName != "") {
connectionItem->m_connectState = NetworkManager::ActiveConnection::State::Activating;
} else if (connectionItem->m_ifaceName == "" && devName != "") {
connectionItem->m_ifaceName = devName;
connectionItem->m_connectState = NetworkManager::ActiveConnection::State::Activating;
} else {
connectionItem->m_connectState = NetworkManager::ActiveConnection::State::Deactivated;
}
} else {
connectionItem->m_connectState = NetworkManager::ActiveConnection::State::Deactivated;
}
return connectionItem;
}
QString KyConnectResourse::getDeviceOfConnect(QString conUuid)
{
QString deviceName = "";
NetworkManager::ActiveConnection::Ptr activeConnectPtr =
m_networkResourceInstance->getActiveConnect(conUuid);
if (nullptr == activeConnectPtr) {
qWarning()<< "[KyConnectResourse]" <<"it can not find activating connect "<< conUuid;
return deviceName;
}
QStringList interfaces = activeConnectPtr->devices();
if (interfaces.isEmpty()) {
qWarning()<< "[KyConnectResourse]" << "get device of activing connection failed.";
return deviceName;
}
QString ifaceUni = interfaces.at(0);
NetworkManager::Device:: Ptr devicePtr =
m_networkResourceInstance->findDeviceUni(ifaceUni);
deviceName = devicePtr->interfaceName();
return deviceName;
}
KyConnectItem * KyConnectResourse::getConnectionItemByUuid(QString connectUuid)
{
NetworkManager::Connection::Ptr connectPtr =
@ -155,7 +189,7 @@ void KyConnectResourse::getConnectionList(QString deviceName,
QString connectInterface = connectPtr->settings()->interfaceName();
if (!connectInterface.isEmpty()
&& deviceName != connectInterface) {
qDebug()<<"[KyConnectResourse]" << "connect name:"<< connectPtr->name()
qDebug() << "[KyConnectResourse]" << "connect name:"<< connectPtr->name()
<< "connect device name" << connectInterface;
continue;
}

View File

@ -39,6 +39,7 @@ public:
bool isApConnection(QString uuid);
private:
QString getDeviceOfConnect(QString conUuid);
KyConnectItem *getConnectionItem(NetworkManager::Connection::Ptr connectPtr);
void getConnectIp(NetworkManager::ConnectionSettings::Ptr settingPtr,
QString &ipv4Address,

View File

@ -15,12 +15,22 @@ LanListItem::LanListItem(const KyConnectItem *lanConnectItem,
m_deviceName = deviceName;
m_nameLabel->setText(m_lanConnectItem.m_connectName);
m_netButton->setButtonIcon(QIcon::fromTheme("network-wired-connected-symbolic"));
if (m_lanConnectItem.m_connectState == NetworkManager::ActiveConnection::State::Activated) {
setIcon(true);
if (m_deviceName != m_lanConnectItem.m_ifaceName) {
m_lanConnectItem.m_connectState = NetworkManager::ActiveConnection::State::Deactivated;
}
qDebug() << "LanListItem init:" << m_lanConnectItem.m_connectName << m_lanConnectItem.m_connectState << m_lanConnectItem.m_ifaceName;
if (Deactivated == m_lanConnectItem.m_connectState || Activated == m_lanConnectItem.m_connectState) {
m_netButton->stopLoading();
if (m_lanConnectItem.m_connectState == Activated) {
setIcon(true);
} else {
setIcon(false);
}
} else {
setIcon(false);
m_netButton->startLoading();
}
m_itemFrame->installEventFilter(this);

View File

@ -223,8 +223,8 @@ void NetDetail::initUI()
iconLabel = new QLabel(this);
if (!QIcon::fromTheme("preferences-system-network-symbolic").isNull()) {
iconLabel->setPixmap(QIcon::fromTheme("preferences-system-network-symbolic").pixmap(ICON_SIZE));
if (!QIcon::fromTheme("kylin-network").isNull()) {
iconLabel->setPixmap(QIcon::fromTheme("kylin-network").pixmap(ICON_SIZE));
iconLabel->setProperty("useIconHighlightEffect", 0x10);
} else {
qDebug() << "can't find preferences-system-network-symbolic in theme";

Binary file not shown.

View File

@ -42,12 +42,12 @@
<message>
<location filename="../src/frontend/netdetails/creatnetpage.cpp" line="32"/>
<source>Ipv4Config</source>
<translation>Ipv4配置</translation>
<translation>IPV4配置</translation>
</message>
<message>
<location filename="../src/frontend/netdetails/creatnetpage.cpp" line="33"/>
<source>Address</source>
<translation></translation>
<translation>IPV4地</translation>
</message>
<message>
<location filename="../src/frontend/netdetails/creatnetpage.cpp" line="34"/>
@ -997,7 +997,7 @@
<message>
<location filename="../src/frontend/list-items/wlanlistitem.cpp" line="259"/>
<source>Auto Connect</source>
<translation></translation>
<translation></translation>
</message>
</context>
<context>