diff options
| author | Ruben Beltran del Rio <ruben@unlimited.pizza> | 2023-07-28 13:48:53 +0200 |
|---|---|---|
| committer | Ruben Beltran del Rio <ruben@unlimited.pizza> | 2023-07-28 13:48:53 +0200 |
| commit | c9b9e1d654ea697afad9f6427d94623bfdf55cce (patch) | |
| tree | a0095a75f2ba625f92923e72a9831740da989de7 /Captura/Presentation/Settings | |
| parent | f5d16c1c8c259966338b23afd407d142f72784aa (diff) | |
Add clipboard
Diffstat (limited to 'Captura/Presentation/Settings')
| -rw-r--r-- | Captura/Presentation/Settings/AdvancedSettings.swift | 32 | ||||
| -rw-r--r-- | Captura/Presentation/Settings/OutputSettings.swift | 5 |
2 files changed, 29 insertions, 8 deletions
diff --git a/Captura/Presentation/Settings/AdvancedSettings.swift b/Captura/Presentation/Settings/AdvancedSettings.swift index 7ed78d9..e5b77ce 100644 --- a/Captura/Presentation/Settings/AdvancedSettings.swift +++ b/Captura/Presentation/Settings/AdvancedSettings.swift @@ -3,25 +3,45 @@ import SwiftUI struct AdvancedSettings: View { @AppStorage("backendUrl") var backendUrl: String = "" + @AppStorage("backendFormat") var outputFormats: OutputFormatSetting = .gifOnly @AppStorage("keepFiles") var keepFiles = true + var parsedBackendUrl: URL? { + URL(string: backendUrl) + } + var body: some View { Form { - VStack (alignment: .leading) { + VStack (alignment: .center) { LabeledContent("Backend URL") { - TextField("", text: $backendUrl) - }.font(.headline) - LabeledContent("Keep files after remote upload") { - Toggle("", isOn: $keepFiles) + TextField("", text: $backendUrl).font(.body) }.font(.headline) + Picker(selection: $outputFormats, label: Text("Backend Format").font(.headline)) { + Text("GIF") + .tag(OutputFormatSetting.gifOnly) + .padding(.horizontal, 4.0) + .padding(.vertical, 2.0) + Text("MP4") + .tag(OutputFormatSetting.mp4Only) + .padding(.horizontal, 4.0) + .padding(.vertical, 2.0) + } + .pickerStyle(.radioGroup) + .disabled(parsedBackendUrl == nil) + Toggle("Keep Local Files", isOn: $keepFiles) + .font(.headline) + .disabled(parsedBackendUrl == nil) + .padding(.vertical, 8.0) HStack { - Text("These settings can break things!") + Text("These settings can break things! Please make sure you understand how to use them before enabling.") + .lineLimit(3...10) Button { print("Not yet!") } label: { Image(systemName: "info.circle") }.buttonStyle(.borderless) } + Spacer() } } } diff --git a/Captura/Presentation/Settings/OutputSettings.swift b/Captura/Presentation/Settings/OutputSettings.swift index 3b8e01c..df12541 100644 --- a/Captura/Presentation/Settings/OutputSettings.swift +++ b/Captura/Presentation/Settings/OutputSettings.swift @@ -7,14 +7,14 @@ struct OutputSettings: View { var body: some View { Form { - VStack (alignment: .leading) { + VStack (alignment: .center) { LabeledContent("GIF Framerate") { Slider(value: $frameRate, in: 4...10, step: 1) { Text("\(Int(frameRate))").font(.body).frame(width: 24) } minimumValueLabel: { Text("4") } maximumValueLabel: { - Text("12") + Text("10") } }.font(.headline) Picker(selection: $outputFormats, label: Text("Output Formats").font(.headline)) { @@ -33,6 +33,7 @@ struct OutputSettings: View { .padding(.vertical, 2.0) }.pickerStyle(.radioGroup) } + Spacer() } } } |