Skip to content

Releases: fad1/Switcher

Switcher v1.1.11

Choose a tag to compare

@redLocomotive redLocomotive released this 02 Jul 19:15

What's New

⇧⌘Tab reverse switching. The native reverse gesture now works: press Cmd+Shift+Tab when the switcher is closed to open it on the last (least recently used) app, and press Shift+Tab while it's open to step backward. Previously Cmd+Shift+Tab did nothing at all. The existing "tap Shift to go back" gesture still works — it now fires when Shift is released, so the two gestures don't double-step.

Faster panel open with Dock badges. The notification-badge scan (Mail/Messages unread counts) is now cached for ~2 seconds instead of re-walking the Dock's accessibility tree on every Cmd+Tab press and every 300ms while the panel is open.

Fixes

  • The occasional "support development" prompt no longer delays Cmd+Tab takeover at launch.
  • Closed a shutdown race in the event-tap thread and a hover glitch when hiding several apps in quick succession (H pressed rapidly).

Requires Accessibility permission (System Settings → Privacy & Security → Accessibility).

Switcher v1.1.10

Choose a tag to compare

@redLocomotive redLocomotive released this 02 Jul 18:43

Fixes for grayscale rendering and panel input handling (includes v1.1.9 changes):

  • Grayscale icons render correctly: fixed icons/badges subtly resizing ("wobbling") as the pointer moved in and out of the panel, and a bluish cast on grayscale icons on wide-gamut Retina displays. Grayscale is now baked into each icon in sRGB instead of a live layer filter.
  • Hover selection works when Switcher itself is active: e.g. pressing Cmd+Tab right after using the Preferences window no longer leaves hover selection dead.
  • Clicking outside the panel no longer clicks the app behind it: click-away now just dismisses the switcher (like Escape). Clicking app icons in the panel works as before.

Switcher v1.1.8

Choose a tag to compare

@redLocomotive redLocomotive released this 02 Jul 16:19

What's new in 1.1.8 — the declutter tip is now a button

The "⌥⌘H · Hide others" tip at the bottom of a cluttered switcher is no longer just a reminder — hover over it and it reveals itself as a clickable pill button (with a pointing-hand cursor). Click it to hide every app except the one you're in, same as pressing ⌥⌘H.

It stays out of the way: at rest it still looks like a plain caption, and a click only registers while the button is visibly highlighted — so a stray click that misses the bottom row of icons can't hide everything by accident.


Install via Homebrew: brew install --cask fad1/tap/switcher

Switcher is ad-hoc signed (not notarized). It needs Accessibility permission: System Settings → Privacy & Security → Accessibility → enable Switcher.

Switcher v1.1.7

Choose a tag to compare

@redLocomotive redLocomotive released this 02 Jul 11:26

What's new in 1.1.7 — declutter your switcher

Hide Other Apps. Press ⌥⌘H while the switcher is open (or use the new "Hide Other Apps" menu bar item) to hide every app except the one you're in — a lighter alternative to quitting apps when you want to focus. Fewer icons in the switcher, instantly.

A gentle reminder. When the switcher gets cluttered (wraps to a second row), a subtle tip appears at the bottom showing the shortcut. Don't want it? Turn it off in Preferences → "Show declutter tip in switcher".

Live refresh. Apps you launch while the switcher is open now appear as their windows load — no more missing icons when you open something and immediately Cmd+Tab. New apps are added at the end without moving the icons already on screen.


Install via Homebrew: brew install --cask fad1/tap/switcher

Switcher is ad-hoc signed (not notarized). It needs Accessibility permission: System Settings → Privacy & Security → Accessibility → enable Switcher.

Switcher v1.1.6

Choose a tag to compare

@redLocomotive redLocomotive released this 24 Jun 09:00

Clicking an app in the switcher now activates the app under the cursor, regardless of whether the pointer moved first.

Previously, the dead-zone hover (which correctly suppresses auto-selection until the mouse moves 3px) meant that clicking an app before moving the pointer activated the keyboard-selected app (usually the second app) instead of the one you clicked. A click is deliberate, so it now always activates whatever it lands on.

Switcher v1.1.5

Choose a tag to compare

@redLocomotive redLocomotive released this 21 Jun 11:18

Fix: unsupported Cmd+key combos no longer leak to the app behind the switcher.

Previously, while the switcher panel was open, only the supported keys (Tab, H, Q, arrows, Return, Escape) were intercepted. Any other Cmd+<key> combo — Cmd+W, Cmd+S, Cmd+T, etc. — fell through to the app underneath (e.g. pressing Cmd+W closed a browser tab behind the panel).

Now every ordinary Cmd+<key> combo is swallowed while the panel is open and does nothing, so keystrokes can no longer leak to the background app. Supported shortcuts are unchanged. Still Accessibility-only — no Input Monitoring required.

Switcher v1.1.4

Choose a tag to compare

@redLocomotive redLocomotive released this 11 Jun 15:40

What's new

  • Quit Switcher button in the Preferences window — terminates the app and closes the window. Native Cmd+Tab is restored on the way out (via applicationWillTerminate), same clean exit as the menu bar Quit.

Install

Download Switcher.zip, unzip, and move Switcher.app to /Applications. Grant Accessibility permission when prompted.

Or via Homebrew:

brew install --cask fad1/tap/switcher

Switcher v1.1.3

Choose a tag to compare

@redLocomotive redLocomotive released this 11 Jun 09:30

Improvements

  • Lower memory footprint — the switcher now releases its on-screen item views (and their icon references) as soon as the panel closes, instead of keeping them resident between switches. No effect on how fast the panel opens.

Switcher needs Accessibility permission only (System Settings → Privacy & Security → Accessibility).

Switcher v1.1.2

Choose a tag to compare

@redLocomotive redLocomotive released this 11 Jun 09:18

Fixes

  • Sticky switcher panel — the panel could occasionally stay on screen after releasing Cmd. Added a watchdog that polls live modifier state while the panel is open and dismisses as soon as Cmd is released, independent of event delivery (backstop for dropped Cmd-up events).

Switcher needs Accessibility permission only (System Settings → Privacy & Security → Accessibility).

Switcher v1.1.1

Choose a tag to compare

@redLocomotive redLocomotive released this 09 Jun 19:21

Fixed

  • Revoking Accessibility no longer freezes input. Switcher now uses a passive event tap, so turning its permission off while it's running can no longer trigger the known macOS system-wide input freeze.

New

  • Start at login — a checkbox in Preferences to launch Switcher automatically when you log in (macOS 13+).

Notes

  • To turn Switcher off, use the menu bar ⌘ → Quit. Removing its Accessibility permission only takes effect after you relaunch it (macOS caches the permission for a running app).
  • Minor behavior change: clicking outside the open switcher to dismiss it now also passes that click through to whatever's behind it.

Install / upgrade via Homebrew:

brew upgrade --cask switcher

(new users: brew install --cask fad1/tap/switcher)