Skip to content

Commit 4294347

Browse files
committed
Add configurable fade seconds
1 parent 7ccbfad commit 4294347

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

IsThereNet.xcodeproj/project.pbxproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@
311311
"@executable_path/../Frameworks",
312312
);
313313
MACOSX_DEPLOYMENT_TARGET = 11.0;
314-
MARKETING_VERSION = 1.4;
314+
MARKETING_VERSION = 1.5;
315315
PRODUCT_BUNDLE_IDENTIFIER = com.lowtechguys.IsThereNet;
316316
PRODUCT_NAME = "$(TARGET_NAME)";
317317
SWIFT_EMIT_LOC_STRINGS = YES;
@@ -342,7 +342,7 @@
342342
"@executable_path/../Frameworks",
343343
);
344344
MACOSX_DEPLOYMENT_TARGET = 11.0;
345-
MARKETING_VERSION = 1.4;
345+
MARKETING_VERSION = 1.5;
346346
PRODUCT_BUNDLE_IDENTIFIER = com.lowtechguys.IsThereNet;
347347
PRODUCT_NAME = "$(TARGET_NAME)";
348348
SWIFT_EMIT_LOC_STRINGS = YES;

IsThereNet/IsThereNetApp.swift

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@ private func drawColoredTopLine(_ color: NSColor, hideAfter: TimeInterval = 5) {
6868
}
6969
}
7070

71+
private struct FadeSecondsConfig: Codable, Equatable {
72+
var connected: Double? = 5.0
73+
var disconnected: Double? = 0.0
74+
var slow: Double? = 10.0
75+
}
76+
7177
private enum PingStatus: Equatable {
7278
case reachable(Double)
7379
case timedOut
@@ -83,9 +89,9 @@ private enum PingStatus: Equatable {
8389

8490
var hideAfter: TimeInterval {
8591
switch self {
86-
case .reachable: 5
87-
case .timedOut: 0
88-
case .slow: 10
92+
case .reachable: CONFIG.fadeSeconds?.connected ?? 5
93+
case .timedOut: CONFIG.fadeSeconds?.disconnected ?? 0
94+
case .slow: CONFIG.fadeSeconds?.slow ?? 10
8995
}
9096
}
9197

@@ -253,7 +259,7 @@ func startPingMonitor() {
253259
slowCounter = MAX_COUNTS
254260
fastCounter = MAX_COUNTS
255261
timeoutCounter = MAX_COUNTS
256-
lastPingStatus = ms > CONFIG.pingSlowThresholdMilliseconds ? .slow(ms) : .reachable(ms)
262+
lastPingStatus = (CONFIG.pingSlowThresholdMilliseconds > 0 && ms > CONFIG.pingSlowThresholdMilliseconds) ? .slow(ms) : .reachable(ms)
257263
return
258264
}
259265

@@ -336,6 +342,8 @@ private struct Config: Codable, Equatable {
336342
var pingIntervalSeconds = 5.0
337343
var pingTimeoutSeconds = 1.0
338344
var pingSlowThresholdMilliseconds = 300.0
345+
346+
var fadeSeconds: FadeSecondsConfig? = FadeSecondsConfig()
339347
}
340348

341349
private var CONFIG_FS_WATCHER: FSEventStreamRef?

0 commit comments

Comments
 (0)