From ecd2209d4c4f4582566947247bffb98fefc79a98 Mon Sep 17 00:00:00 2001 From: Serhiy Mytrovtsiy Date: Mon, 11 Oct 2021 18:40:38 +0200 Subject: [PATCH] feat: added connection status information to the network details view (#653) --- Modules/Net/main.swift | 1 + Modules/Net/popup.swift | 8 ++++++-- Modules/Net/readers.swift | 2 ++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Modules/Net/main.swift b/Modules/Net/main.swift index b38c536e..9423d3ec 100644 --- a/Modules/Net/main.swift +++ b/Modules/Net/main.swift @@ -40,6 +40,7 @@ public struct Network_Usage: value_t { var interface: Network_interface? = nil var connectionType: Network_t? = nil + var status: Bool = false var countryCode: String? = nil var ssid: String? = nil diff --git a/Modules/Net/popup.swift b/Modules/Net/popup.swift index 0243b70f..5f17d464 100644 --- a/Modules/Net/popup.swift +++ b/Modules/Net/popup.swift @@ -36,6 +36,7 @@ internal class Popup: NSStackView, Popup_p { private var macAdressField: ValueField? = nil private var totalUploadField: ValueField? = nil private var totalDownloadField: ValueField? = nil + private var connectionField: ValueField? = nil private var publicIPStackView: NSStackView? = nil private var publicIPv4Field: ValueField? = nil @@ -180,12 +181,13 @@ internal class Popup: NSStackView, Popup_p { self.totalUploadField = popupWithColorRow(container, color: NSColor.systemRed, n: 5, title: "\(localizedString("Total upload")):", value: "0") self.totalDownloadField = popupWithColorRow(container, color: NSColor.systemBlue, n: 4, title: "\(localizedString("Total download")):", value: "0") - + + self.connectionField = popupRow(container, n: 4, title: "\(localizedString("Status")):", value: localizedString("Unknown")).1 self.interfaceField = popupRow(container, n: 3, title: "\(localizedString("Interface")):", value: localizedString("Unknown")).1 self.ssidField = popupRow(container, n: 2, title: "\(localizedString("Network")):", value: localizedString("Unknown")).1 self.macAdressField = popupRow(container, n: 1, title: "\(localizedString("Physical address")):", value: localizedString("Unknown")).1 self.localIPField = popupRow(container, n: 0, title: "\(localizedString("Local IP")):", value: localizedString("Unknown")).1 - + self.localIPField?.isSelectable = true self.macAdressField?.isSelectable = true @@ -330,6 +332,8 @@ internal class Popup: NSStackView, Popup_p { self.localIPField?.stringValue = value.laddr ?? localizedString("Unknown") } + self.connectionField?.stringValue = localizedString(value.status ? "UP" : "DOWN") + self.initialized = true } diff --git a/Modules/Net/readers.swift b/Modules/Net/readers.swift index 4def05bf..60367924 100644 --- a/Modules/Net/readers.swift +++ b/Modules/Net/readers.swift @@ -90,6 +90,8 @@ internal class UsageReader: Reader { self.usage.total.upload += self.usage.bandwidth.upload self.usage.total.download += self.usage.bandwidth.download + self.usage.status = self.reachability?.connection != Optional.none + self.callback(self.usage) self.usage.bandwidth.upload = current.upload