diff --git a/libs/models/networkmodel.cpp b/libs/models/networkmodel.cpp --- a/libs/models/networkmodel.cpp +++ b/libs/models/networkmodel.cpp @@ -823,13 +823,14 @@ if (!device) return; - beginResetModel(); for (NetworkModelItem *item : m_list.returnItems(NetworkItemsList::Device, device->uni())) { item->setDeviceState(state); item->invalidateDetails(); + int row = m_list.indexOf(item); + Q_EMIT dataChanged(index(row, 0), index(row, 0), item->changedRoles()); + item->clearChangedRoles(); // qCDebug(PLASMA_NM) << "Item " << item->name() << ": device state changed to " << item->deviceState(); } - endResetModel(); } #if WITH_MODEMMANAGER_SUPPORT