Skip to content

Group Settings General into cards, surface Fast Mode + clarify context cost#370

Merged
FuJacob merged 1 commit into
mainfrom
fix/settings-general-tidy
May 28, 2026
Merged

Group Settings General into cards, surface Fast Mode + clarify context cost#370
FuJacob merged 1 commit into
mainfrom
fix/settings-general-tidy

Conversation

@FuJacob
Copy link
Copy Markdown
Owner

@FuJacob FuJacob commented May 28, 2026

Splits the General pane into four grouped Sections that render as separate cards under .formStyle(.grouped) (the macOS-native equivalent of dividers), moves Fast Mode to the top alongside Enable Globally with a (no screen context) suffix so the cost is visible, and keeps the picker label as "Suggestion Display".

Layout:

  1. Top card: Enable Globally, Fast Mode (no screen context)
  2. Behavior: Clipboard, Multi-line, Auto-accept punctuation
  3. Display: Suggestion Display picker, Show Indicator, Show Key Hint
  4. Appearance: Ghost text color, Ghost text opacity
  5. Onboarding: Open Welcome Guide

Build + lint clean.

Greptile Summary

This PR reorganises the General settings pane by splitting a single flat Section into five grouped Sections that render as native rounded cards under .formStyle(.grouped). Fast Mode is promoted to the top card alongside "Enable Globally" and gains a (no screen context) suffix to make its cost visible.

  • The top card now holds the two primary on/off levers; Behavior, Display, and Appearance sections follow, each containing the settings most logically related to that category.
  • All bindings, model calls, and business logic are untouched — this is a pure layout and labelling change.
  • The file-overview doc comment still says "four" sections, but the view body contains five; a one-word fix aligns them.

Confidence Score: 5/5

Safe to merge — purely a visual grouping change with no logic touched.

Every binding, model call, and behavioral path in the file is untouched. The only changes are how existing controls are wrapped in Section containers and the label text of the Fast Mode toggle. The sole noteworthy item is a doc comment that says four sections when there are five — harmless and easy to fix.

No files require special attention; the single changed file is a straightforward layout rearrangement.

Important Files Changed

Filename Overview
Cotabby/UI/Settings/Panes/GeneralPaneView.swift Pure UI restructure: splits one flat Section into five grouped Section cards, moves Fast Mode to the top with a clarifying label suffix, and reorders existing toggles/controls into logical groups. All bindings and logic are unchanged. One doc comment says "four" sections but the code has five.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[GeneralPaneView] --> B[SettingsPaneScaffold]
    B --> C["Section (unlabeled)\nEnable Globally\nFast Mode (no screen context)"]
    B --> D["Section: Behavior\nInclude Clipboard Context\nAllow Multi-line Suggestions\nAccept Punctuation With Word"]
    B --> E["Section: Display\nSuggestion Display picker\nShow Indicator\nShow Key Hint toggle"]
    B --> F["Section: Appearance\nGhost Text Color swatches\nGhost Text Opacity slider"]
    B --> G["Section (unlabeled)\nOnboarding → Open Welcome Guide"]
Loading

Fix All in Codex Fix All in Claude Code

Reviews (1): Last reviewed commit: "Group Settings General into cards, surfa..." | Re-trigger Greptile

Greptile also left 1 inline comment on this PR.

@FuJacob FuJacob merged commit 3194c75 into main May 28, 2026
4 checks passed
@FuJacob FuJacob deleted the fix/settings-general-tidy branch May 28, 2026 10:47
Comment on lines +4 to +8
/// "General" detail pane of the redesigned Settings window. Groups settings into four visually
/// separated `Section`s (`.formStyle(.grouped)` renders each as its own rounded card, which is
/// the macOS-native equivalent of a divider): top-level on/off toggles, behavior tuning, display
/// surface, and appearance. The `Display` picker label here matches the same name used by the
/// menu-bar quick control so users can connect the two.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Doc comment says "four" but five Sections are present

The file-overview comment says the view groups settings into "four visually separated Sections", but the body contains five: the unlabeled top card, Behavior, Display, Appearance, and the unlabeled Onboarding card at the bottom. The count mismatch could mislead a future reader counting sections when adding or reordering them.

Suggested change
/// "General" detail pane of the redesigned Settings window. Groups settings into four visually
/// separated `Section`s (`.formStyle(.grouped)` renders each as its own rounded card, which is
/// the macOS-native equivalent of a divider): top-level on/off toggles, behavior tuning, display
/// surface, and appearance. The `Display` picker label here matches the same name used by the
/// menu-bar quick control so users can connect the two.
/// separated `Section`s (`.formStyle(.grouped)` renders each as its own rounded card, which is
/// the macOS-native equivalent of a divider): top-level on/off toggles, behavior tuning, display
/// surface, appearance, and onboarding. The `Display` picker label here matches the same name used by the

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Fix in Codex Fix in Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant