Skip to content

[codex] Group menu sections - #25

Merged
ygsgdbd merged 1 commit into
mainfrom
codex/group-menu-sections
Jul 21, 2026
Merged

[codex] Group menu sections#25
ygsgdbd merged 1 commit into
mainfrom
codex/group-menu-sections

Conversation

@ygsgdbd

@ygsgdbd ygsgdbd commented Jul 21, 2026

Copy link
Copy Markdown
Owner

Summary

TypeSwitch currently wraps several single menu entries in separate SwiftUI Section containers. On macOS, each container renders its own separator, so the lower half of the menu appears fragmented even though the entries belong to a small number of related functional groups.

This change follows the grouping pattern already used by ListenBar: titled, dynamic application lists remain Sections, while ordinary actions are arranged continuously and explicit Dividers separate only distinct functional areas.

User impact

The application management entries now read as one cohesive block instead of a stack of one-item groups. Settings, update/repository actions, and quit remain clearly separated. Menu labels, ordering, submenus, input method behavior, persistence, and actions are unchanged.

Root cause

ConfiguredAppsView, UnavailableAppsView, IgnoredAppsView, SwitchStatisticsView, SettingsView, and AppInfoView each introduced container-level Sections. These sections were useful as code organization but unintentionally became visible separators in the native menu.

Changes

  • Remove unheaded wrapper sections from the application management, statistics, settings, and application information views.
  • Add explicit dividers in MenuBarView between the application list, management, settings, and information areas.
  • Keep the current, running unconfigured, and running configured application lists as titled sections.
  • Avoid rendering a leading divider when no current or running application section is visible.
  • Keep the ignored-app section inside its submenu, where the header remains meaningful.

Validation

  • just lint
  • just test — 97 tests passed with 0 failures after rebasing onto the latest main
  • git diff --check

The deterministic README screenshot generator was also attempted, but it correctly stopped because another TypeSwitch instance was running. No screenshot assets were modified.

@ygsgdbd ygsgdbd changed the title Group menu sections [codex] Group menu sections Jul 21, 2026
@ygsgdbd
ygsgdbd force-pushed the codex/group-menu-sections branch from 432303e to 229a96d Compare July 21, 2026 09:11
@ygsgdbd
ygsgdbd marked this pull request as ready for review July 21, 2026 09:21
@ygsgdbd
ygsgdbd merged commit ad5616f into main Jul 21, 2026
2 checks passed
@ygsgdbd
ygsgdbd deleted the codex/group-menu-sections branch July 21, 2026 09:22
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