From 889a52959fa25b5af2cb5439017352bb94370af5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20St=C3=BCrz?= Date: Fri, 14 Nov 2025 22:09:29 +0100 Subject: [PATCH] network monitor: sync mode and register type --- .../hardware/network/networkdevicemonitorimpl.cpp | 10 +++++++++- libnymea/network/networkdeviceinfo.cpp | 4 ++++ libnymea/network/networkdeviceinfo.h | 3 +++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/libnymea-core/hardware/network/networkdevicemonitorimpl.cpp b/libnymea-core/hardware/network/networkdevicemonitorimpl.cpp index 0f9bf773..a20224ea 100644 --- a/libnymea-core/hardware/network/networkdevicemonitorimpl.cpp +++ b/libnymea-core/hardware/network/networkdevicemonitorimpl.cpp @@ -73,7 +73,15 @@ NetworkDeviceInfo::MonitorMode NetworkDeviceMonitorImpl::monitorMode() const void NetworkDeviceMonitorImpl::setMonitorMode(NetworkDeviceInfo::MonitorMode monitorMode) { + if (m_monitorMode == monitorMode) + return; + m_monitorMode = monitorMode; + + if (m_networkDeviceInfo.monitorMode() != monitorMode) { + m_networkDeviceInfo.setMonitorMode(monitorMode); + emit networkDeviceInfoChanged(m_networkDeviceInfo); + } } NetworkDeviceInfo NetworkDeviceMonitorImpl::networkDeviceInfo() const @@ -163,7 +171,7 @@ bool NetworkDeviceMonitorImpl::isMyNetworkDeviceInfo(const NetworkDeviceInfo &ne break; case NetworkDeviceInfo::MonitorModeHostName: - if (!m_hostName.isEmpty() && networkDeviceInfo.hostName() == m_hostName) + if (!m_hostName.isEmpty() && networkDeviceInfo.hostName().compare(m_hostName, Qt::CaseInsensitive) == 0) myNetworkDevice = true; break; diff --git a/libnymea/network/networkdeviceinfo.cpp b/libnymea/network/networkdeviceinfo.cpp index adcbfc71..63f8e8a1 100644 --- a/libnymea/network/networkdeviceinfo.cpp +++ b/libnymea/network/networkdeviceinfo.cpp @@ -31,6 +31,10 @@ #include "networkdeviceinfo.h" #include "macaddress.h" +#include + +static const int networkDeviceInfoMetaTypeId = qRegisterMetaType("NetworkDeviceInfo"); + NetworkDeviceInfo::NetworkDeviceInfo() { diff --git a/libnymea/network/networkdeviceinfo.h b/libnymea/network/networkdeviceinfo.h index d74c046b..4ba302fc 100644 --- a/libnymea/network/networkdeviceinfo.h +++ b/libnymea/network/networkdeviceinfo.h @@ -36,6 +36,7 @@ #include #include #include +#include #include "libnymea.h" #include "macaddressinfos.h" @@ -104,4 +105,6 @@ private: QDebug operator<<(QDebug debug, const NetworkDeviceInfo &networkDeviceInfo); +Q_DECLARE_METATYPE(NetworkDeviceInfo) + #endif // NETWORKDEVICEINFO_H