diff options
author | Pasi Petäjäjärvi <pasi.petajajarvi@qt.io> | 2021-12-16 14:36:23 +0200 |
---|---|---|
committer | Pasi Petäjäjärvi <pasi.petajajarvi@qt.io> | 2022-06-15 06:58:28 +0000 |
commit | a6d299e8b545aab18195f07dbb031a304d5d8677 (patch) | |
tree | fb71f8d20fa8f20fc2ee76087e225421abafcb67 /src/networksettings/qnetworksettingsinterfacemodel.cpp | |
parent | 5bcfd28a57878bd7e193b38886950974acf706c1 (diff) |
Fix dynamic interface handling
Properly add/remove interface/technology when either physically
added/removed or disable with connman
Change-Id: I8d527c60a0e9218e3ae01ba6a685e067182622c1
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
(cherry picked from commit 694effb2afc14961cd9cbda56da6fa6e1e07c607)
Diffstat (limited to 'src/networksettings/qnetworksettingsinterfacemodel.cpp')
-rw-r--r-- | src/networksettings/qnetworksettingsinterfacemodel.cpp | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/networksettings/qnetworksettingsinterfacemodel.cpp b/src/networksettings/qnetworksettingsinterfacemodel.cpp index 045d3ff..8d6ca60 100644 --- a/src/networksettings/qnetworksettingsinterfacemodel.cpp +++ b/src/networksettings/qnetworksettingsinterfacemodel.cpp @@ -122,12 +122,7 @@ QVariant QNetworkSettingsInterfaceModel::data(const QModelIndex & index, int rol */ void QNetworkSettingsInterfaceModel::append(QNetworkSettingsInterface* item) { - item->setParent(this); - connectStateChanges(item); - - beginInsertRows(QModelIndex(), rowCount(), rowCount()); - m_items.append(item); - endInsertRows(); + insert(rowCount(), item); } /*! @@ -155,7 +150,7 @@ void QNetworkSettingsInterfaceModel::connectStateChanges(QNetworkSettingsInterfa void QNetworkSettingsInterfaceModel::remove(int row) { beginRemoveRows(QModelIndex(), row, row); - m_items.removeFirst(); + m_items.takeAt(row)->deleteLater(); endRemoveRows(); } |