Skip to content

Share the menu-bar icon with RetinaShot through MenuHub - #24

Merged
mstallone merged 3 commits into
mainfrom
menuhub
Sep 26, 2026
Merged

mstallone merged 3 commits into
mainfrom
menuhub

Conversation

@mstallone

Copy link
Copy Markdown
Owner

MXSwipe now describes its menu to MenuHub instead of owning a status item. On its own the menu is unchanged. With RetinaShot also running, the two share one icon, and its menu has a section per app.

  • main.swift builds a MenuSection (the mouse header plus items) in place of the NSStatusItem, NSMenu, icon, and header code, which moved into MenuHub.
  • "Check for Updates…" is disabled while Sparkle can't check, as it was when the item targeted the updater directly.
  • MenuHub is pinned at exactly 0.1.0: apps sharing a menu must speak the same MenuHub protocol.
  • Tools/make-readme-assets.swift now lays out the README images with MenuHub's own code, and CI type-checks it. The images are re-rendered: the header now starts at the checkmark column.
  • README: mentions the shared menu, plus wording fixes.

Tested locally with RetinaShot: the icon handoff when either app quits or relaunches, clicks routed to the app that described the item, and light and dark renders. 71 tests pass.

@mstallone
mstallone merged commit 142b8c3 into main Sep 26, 2026
1 check passed
@mstallone
mstallone deleted the menuhub branch September 26, 2026 23: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