Skip to content

#31 feat: add system appearance sync#48

Open
ikorich wants to merge 1 commit intodevelopfrom
feature/31-system-appearance
Open

#31 feat: add system appearance sync#48
ikorich wants to merge 1 commit intodevelopfrom
feature/31-system-appearance

Conversation

@ikorich
Copy link
Member

@ikorich ikorich commented Jan 31, 2026

Motivation

Users want the theme to automatically switch between dark and light based on their macOS system appearance settings.

Changes

  • Add system case to ThemeMode enum that follows macOS appearance
  • Add effectiveMode computed property that resolves system mode to dark/light based on NSApp.effectiveAppearance
  • Update theme mode toggle in toolbar with system option (half-circle icon)
  • Update CodeEditorView, ExportPanelView, and ContentView to use effectiveThemeMode for colors
  • Pass effective mode to export view to ensure exported images use current appearance

Notes

  • System mode reads NSApp.effectiveAppearance to determine current macOS appearance
  • Manual dark/light override still works as before
  • Export uses the theme currently displayed at export time

- Add system case to ThemeMode enum that follows macOS appearance
- Add effectiveMode property to resolve system mode to dark/light
- Update theme mode toggle with system option (half-circle icon)
- Update CodeEditorView, ExportPanelView to use effectiveThemeMode
- Pass effective mode to export view for correct panel styling
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