Skip to content

Commit 93801be

Browse files
committed
Move terminal settings into their own Settings tab
1 parent fe79cbc commit 93801be

1 file changed

Lines changed: 19 additions & 3 deletions

File tree

Notchy/SettingsWindow.swift

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@ import AppKit
44
enum SettingsTab: String, CaseIterable {
55
case about = "About"
66
case general = "General"
7+
case terminal = "Terminal"
78
case integrations = "Integrations"
89

910
var icon: String {
1011
switch self {
1112
case .general: return "gearshape"
13+
case .terminal: return "terminal"
1214
case .integrations: return "puzzlepiece"
1315
case .about: return "info.circle"
1416
}
@@ -34,6 +36,10 @@ struct SettingsContentView: View {
3436
.tabItem { Label(SettingsTab.general.rawValue, systemImage: SettingsTab.general.icon) }
3537
.tag(SettingsTab.general)
3638

39+
TerminalTab()
40+
.tabItem { Label(SettingsTab.terminal.rawValue, systemImage: SettingsTab.terminal.icon) }
41+
.tag(SettingsTab.terminal)
42+
3743
IntegrationsTab()
3844
.tabItem { Label(SettingsTab.integrations.rawValue, systemImage: SettingsTab.integrations.icon) }
3945
.tag(SettingsTab.integrations)
@@ -88,7 +94,20 @@ struct GeneralTab: View {
8894
}
8995
.disabled(!settings.soundsEnabled)
9096
}
97+
}
98+
.formStyle(.grouped)
99+
.scrollContentBackground(.hidden)
100+
.onReceive(NotificationCenter.default.publisher(for: NSApplication.didChangeScreenParametersNotification)) { _ in
101+
hasExternalDisplay = !NSScreen.externalScreens.isEmpty
102+
}
103+
}
104+
}
105+
106+
struct TerminalTab: View {
107+
@Bindable private var settings = SettingsManager.shared
91108

109+
var body: some View {
110+
Form {
92111
Section("Terminal") {
93112
FontPickerRow()
94113
FontWeightRow()
@@ -124,9 +143,6 @@ struct GeneralTab: View {
124143
}
125144
.formStyle(.grouped)
126145
.scrollContentBackground(.hidden)
127-
.onReceive(NotificationCenter.default.publisher(for: NSApplication.didChangeScreenParametersNotification)) { _ in
128-
hasExternalDisplay = !NSScreen.externalScreens.isEmpty
129-
}
130146
}
131147
}
132148

0 commit comments

Comments
 (0)