mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
fix: 网络插件设备列表不显示
在任务栏网络插件关闭网络后,再在控制中心打开,设备列表显示状态设置错误。 Log: 修复网络插件不显示设备列表的问题。 Bug: https://pms.uniontech.com/zentao/bug-view-62142.html Change-Id: If8dfa6337e476047d3fd431b3b6ff16e1ff22319
This commit is contained in:
parent
81faaaa060
commit
fc4fdc455a
@ -492,7 +492,6 @@ void NetworkItem::wirelessEnable(bool enable)
|
||||
wirelessItem->itemApplet()->setVisible(enable);
|
||||
}
|
||||
}
|
||||
updateSelf();
|
||||
}
|
||||
|
||||
void NetworkItem::onThemeTypeChanged(DGuiApplicationHelper::ColorType themeType)
|
||||
@ -1113,49 +1112,65 @@ int NetworkItem::getStrongestAp()
|
||||
return retStrength;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 更新有线(无线)适配器的开关状态,并根据开关状态显示设备列表。
|
||||
*/
|
||||
void NetworkItem::updateMasterControlSwitch()
|
||||
{
|
||||
bool deviceState = false;
|
||||
for (auto wirelessItem : m_wirelessItems) {
|
||||
if (wirelessItem)
|
||||
if (wirelessItem->deviceEanbled()) {
|
||||
deviceState = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
m_switchWirelessBtn->blockSignals(true);
|
||||
m_switchWirelessBtn->setChecked(deviceState);
|
||||
m_loadingIndicator->setVisible(deviceState);
|
||||
m_switchWirelessBtn->blockSignals(false);
|
||||
if (deviceState) {
|
||||
for (auto wirelessItem : m_wirelessItems) {
|
||||
if (wirelessItem) {
|
||||
m_wirelessLayout->addWidget(wirelessItem->itemApplet());
|
||||
wirelessItem->itemApplet()->setVisible(true);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (auto wirelessItem : m_wirelessItems) {
|
||||
if (wirelessItem) {
|
||||
m_wirelessLayout->removeWidget(wirelessItem->itemApplet());
|
||||
wirelessItem->itemApplet()->setVisible(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
m_switchWirelessBtnState = deviceState;
|
||||
m_switchWiredBtnState = false;
|
||||
m_switchWirelessBtnState = false;
|
||||
|
||||
deviceState = false;
|
||||
for (auto wiredItem : m_wiredItems) {
|
||||
if (wiredItem)
|
||||
if (wiredItem->deviceEabled()) {
|
||||
deviceState = true;
|
||||
break;
|
||||
}
|
||||
/* 获取有线适配器启用状态 */
|
||||
for (WiredItem *wiredItem : m_wiredItems) {
|
||||
if (wiredItem && wiredItem->deviceEabled()) {
|
||||
m_switchWiredBtnState = wiredItem->deviceEabled();
|
||||
break;
|
||||
}
|
||||
}
|
||||
/* 更新有线适配器总开关状态(阻塞信号是为了防止重复设置适配器启用状态)*/
|
||||
m_switchWiredBtn->blockSignals(true);
|
||||
m_switchWiredBtn->setChecked(deviceState);
|
||||
m_switchWiredBtn->setChecked(m_switchWiredBtnState);
|
||||
m_switchWiredBtn->blockSignals(false);
|
||||
m_switchWiredBtnState = deviceState;
|
||||
/* 根据有线适配器启用状态增/删布局中的组件 */
|
||||
for (WiredItem *wiredItem : m_wiredItems) {
|
||||
if (!wiredItem) {
|
||||
continue;
|
||||
}
|
||||
if (m_switchWiredBtnState) {
|
||||
m_wiredLayout->addWidget(wiredItem->itemApplet());
|
||||
} else {
|
||||
m_wiredLayout->removeWidget(wiredItem->itemApplet());
|
||||
}
|
||||
// wiredItem->itemApplet()->setVisible(m_switchWiredBtnState); // TODO
|
||||
wiredItem->setVisible(m_switchWiredBtnState);
|
||||
}
|
||||
|
||||
/* 获取无线适配器启用状态 */
|
||||
for (auto wirelessItem : m_wirelessItems) {
|
||||
if (wirelessItem && wirelessItem->deviceEanbled()) {
|
||||
m_switchWirelessBtnState = wirelessItem->deviceEanbled();
|
||||
break;
|
||||
}
|
||||
}
|
||||
/* 更新无线适配器总开关状态(阻塞信号是为了防止重复设置适配器启用状态) */
|
||||
m_switchWirelessBtn->blockSignals(true);
|
||||
m_switchWirelessBtn->setChecked(m_switchWirelessBtnState);
|
||||
m_switchWirelessBtn->blockSignals(false);
|
||||
/* 根据无线适配器启用状态增/删布局中的组件 */
|
||||
for (WirelessItem *wirelessItem : m_wirelessItems) {
|
||||
if (!wirelessItem) {
|
||||
continue;
|
||||
}
|
||||
if (m_switchWirelessBtnState) {
|
||||
m_wirelessLayout->addWidget(wirelessItem->itemApplet());
|
||||
} else {
|
||||
m_wirelessLayout->removeWidget(wirelessItem->itemApplet());
|
||||
}
|
||||
wirelessItem->itemApplet()->setVisible(m_switchWirelessBtnState);
|
||||
wirelessItem->setVisible(m_switchWirelessBtnState);
|
||||
}
|
||||
|
||||
m_loadingIndicator->setVisible(m_switchWirelessBtnState || m_switchWiredBtnState);
|
||||
}
|
||||
|
||||
void NetworkItem::refreshTips()
|
||||
|
Loading…
x
Reference in New Issue
Block a user