Skip to content

Commit 5884ad7

Browse files
committed
fix: auto scan when in the wireless page
auto scan when in the wireless page PMS: BUG-286941
1 parent 3a921bd commit 5884ad7

3 files changed

Lines changed: 21 additions & 2 deletions

File tree

dcc-network/qml/PageWirelessDevice.qml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// SPDX-FileCopyrightText: 2024 - 2027 UnionTech Software Technology Co., Ltd.
1+
// SPDX-FileCopyrightText: 2024 - 2026 UnionTech Software Technology Co., Ltd.
22
// SPDX-License-Identifier: GPL-3.0-or-later
33
import QtQuick 2.15
44
import QtQuick.Controls 2.15
@@ -271,6 +271,20 @@ DccObject {
271271
"bold": true
272272
})
273273
text: dccObj.displayName
274+
275+
Timer {
276+
id: refreshTimer
277+
interval: 60000 // 一分钟间隔
278+
running: true
279+
repeat: true
280+
triggeredOnStart: true
281+
onTriggered: {
282+
// 定期扫描网络
283+
if (root.netItem) {
284+
root.netItem.requestScan()
285+
}
286+
}
287+
}
274288
}
275289
onParentItemChanged: {
276290
if (parentItem) {

net-view/operation/netitem.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// SPDX-FileCopyrightText: 2018 - 2022 UnionTech Software Technology Co., Ltd.
1+
// SPDX-FileCopyrightText: 2018 - 2026 UnionTech Software Technology Co., Ltd.
22
//
33
// SPDX-License-Identifier: GPL-3.0-or-later
44

@@ -168,6 +168,7 @@ class NetWirelessDeviceItem : public NetDeviceItem
168168

169169
Q_SIGNALS:
170170
void apModeChanged(bool apMode) const;
171+
void requestScan();
171172

172173
protected:
173174
using NetDeviceItem::NetDeviceItem;

net-view/operation/private/netmanagerthreadprivate.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1926,6 +1926,10 @@ void NetManagerThreadPrivate::onDeviceAdded(QList<NetworkDeviceBase *> devices)
19261926
WirelessDevice *wirelessDevice = static_cast<WirelessDevice *>(device);
19271927
NetWirelessDeviceItemPrivate *wirelessDeviceItem = NetItemNew(WirelessDeviceItem, wirelessDevice->path());
19281928
addDevice(wirelessDeviceItem, wirelessDevice);
1929+
NetWirelessDeviceItem *devItem = NetItem::toItem<NetWirelessDeviceItem>(wirelessDeviceItem->item());
1930+
if (devItem) {
1931+
connect(devItem, &NetWirelessDeviceItem::requestScan, wirelessDevice, &dde::network::WirelessDevice::scanNetwork);
1932+
}
19291933
wirelessDeviceItem->updateapMode(wirelessDevice->hotspotEnabled());
19301934
wirelessDeviceItem->item()->moveToThread(m_parentThread);
19311935
Q_EMIT itemAdded("Root", wirelessDeviceItem);

0 commit comments

Comments
 (0)