eleven / messenger Public

mac: Updates pane — bare checkbox, no grouped box (#1055)

A grouped-form row around a single control is chrome with nothing to
group: the pane is now just the checkbox + clickable label (the #953
checkbox convention), top-leading with standard padding. The General
pane keeps .grouped for now, deliberately.
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Paul Campbell 274f242c9bf4b2e660af7d2328e03e74d9275463 parent 3386349
1 file changed, +16 −14
  • ios/LChatMac/UpdaterUI.swift +16 −14
diff --git a/ios/LChatMac/UpdaterUI.swift b/ios/LChatMac/UpdaterUI.swift
index f57de33..a9eaafd 100644
--- a/ios/LChatMac/UpdaterUI.swift
+++ b/ios/LChatMac/UpdaterUI.swift
@@ -43,19 +43,21 @@ struct UpdatesSettingsView: View {
}
var body: some View {
- Form {
- Toggle("Automatically download and install updates", isOn: $automaticUpdates)
- .toggleStyle(.checkbox) // Settings-window convention — see MacSettingsView
- .onChange(of: automaticUpdates) { _, enabled in
- // Downloading automatically requires checking automatically;
- // turning the switch off falls back to fully manual
- // (menu-triggered) checks only.
- updater.automaticallyChecksForUpdates = enabled
- updater.automaticallyDownloadsUpdates = enabled
- }
- }
- // Grouped like the General pane; the TabView in LChatMacApp owns the
- // Settings window's one fixed frame, so no size is pinned here.
- .formStyle(.grouped)
+ // A bare checkbox + clickable label, per Mac preference conventions —
+ // a grouped-form box around a single control is chrome with nothing
+ // to group. (The General pane keeps .grouped for now.) The TabView in
+ // LChatMacApp owns the Settings window's one fixed frame, so no size
+ // is pinned here.
+ Toggle("Automatically download and install updates", isOn: $automaticUpdates)
+ .toggleStyle(.checkbox) // Settings-window convention — see MacSettingsView
+ .onChange(of: automaticUpdates) { _, enabled in
+ // Downloading automatically requires checking automatically;
+ // turning the checkbox off falls back to fully manual
+ // (menu-triggered) checks only.
+ updater.automaticallyChecksForUpdates = enabled
+ updater.automaticallyDownloadsUpdates = enabled
+ }
+ .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .topLeading)
+ .padding(20)
}
}