File indexing completed on 2024-05-19 16:31:57

0001 /*  nicsignals.cpp
0002  *
0003  *  SPDX-FileCopyrightText: 2009 David Hubner <hubnerd@ntlworld.com>
0004  *
0005  *  SPDX-License-Identifier: GPL-2.0-or-later
0006  *
0007  */
0008 
0009 #include "nicsignals.h"
0010 
0011 // KDE
0012 #include <solid/control/networkinterface.h>
0013 #include <solid/control/networkmanager.h>
0014 
0015 NicSignals::NicSignals()
0016 {
0017     connectToNicSignals();
0018 }
0019 
0020 void NicSignals::connectToNicSignals()
0021 {
0022     const QList<Solid::Control::NetworkInterface *> nicList = Solid::Control::NetworkManager::networkInterfaces();
0023 
0024     foreach (const Solid::Control::NetworkInterface *nic, nicList) {
0025         connect(nic, SIGNAL(connectionStateChanged(int, int, int)), this, SLOT(nicChangedSignal(int, int, int)));
0026     }
0027 }
0028 
0029 void NicSignals::nicChangedSignal(int ns, int os, int reason)
0030 {
0031     Q_UNUSED(os);
0032     Q_UNUSED(reason);
0033     if (ns == 8 || ns == 2) {
0034         emit nicActivatedOrDisconnected();
0035     }
0036 }