Skip to content

Commit 99c2e86

Browse files
committed
Add support for SIGWINCH
# Motivation `SIGWINCH` is sent to applications when the window resizes. This is useful to observe for terminal applications to reformat the logging one resize. # Modification This PR adds support for `SIGWINCH` in `UnixSignal`s.
1 parent 4d11d98 commit 99c2e86

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

Sources/UnixSignals/UnixSignal.swift

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public struct UnixSignal: Hashable, Sendable, CustomStringConvertible {
3131
case sigusr2
3232
case sigalrm
3333
case sigquit
34+
case sigwinch
3435
}
3536

3637
private let wrapped: Wrapped
@@ -57,6 +58,8 @@ public struct UnixSignal: Hashable, Sendable, CustomStringConvertible {
5758
public static let sigusr1 = Self(.sigusr1)
5859
public static let sigusr2 = Self(.sigusr2)
5960
public static let sigalrm = Self(.sigalrm)
61+
/// Signal when the window is resized.
62+
public static let sigwinch = Self(.sigwinch)
6063
}
6164

6265
extension UnixSignal.Wrapped: Hashable {}
@@ -79,6 +82,8 @@ extension UnixSignal.Wrapped: CustomStringConvertible {
7982
return "SIGUSR2"
8083
case .sigalrm:
8184
return "SIGALRM"
85+
case .sigwinch:
86+
return "SIGWINCH"
8287
}
8388
}
8489
}
@@ -100,6 +105,8 @@ extension UnixSignal.Wrapped {
100105
return SIGUSR2
101106
case .sigalrm:
102107
return SIGALRM
108+
case .sigwinch:
109+
return SIGWINCH
103110
}
104111
}
105112
}

Tests/UnixSignalsTests/UnixSignalTests.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ final class UnixSignalTests: XCTestCase {
133133
assert(.sigusr1, description: "SIGUSR1")
134134
assert(.sigusr2, description: "SIGUSR2")
135135
assert(.sigterm, description: "SIGTERM")
136+
assert(.sigwinch, description: "SIGWINCH")
136137
}
137138

138139
func testCancelledTask() async throws {

0 commit comments

Comments
 (0)