System-wide
One menu-bar app protects the top edge across full-screen apps. There is nothing to configure per app.
Inspect the system-wide event tap on GitHub →Native macOS menu-bar utility
Menu Bar Gate stops the pointer 4 points below the top edge in full-screen apps. Hold Control—or another key you choose—to pass through and reveal the menu bar. It works system-wide.
No Hammerspoon setup or Lua scripts required.
Free to use · v1.0.1 release notes · macOS 13+ · M1 or newer
One tiny gate. Everywhere.
One menu-bar app protects the top edge across full-screen apps. There is nothing to configure per app.
Inspect the system-wide event tap on GitHub →Protection runs only in full screen by default. Pause it, quit it, or leave full screen and pointer movement is normal.
Inspect full-screen detection on GitHub →Change the gate key, edge clearance, full-screen-only behavior, and Launch at Login from the menu-bar icon.
Inspect the settings code on GitHub →How it works
The native Swift runtime is 480 lines across seven files, with no third-party packages. Browse all 480 lines on GitHub.
By default, the app checks whether the frontmost window is full screen and whether your gate key is held. It never reads screen pixels.
If the key is not held, entering the protected strip changes only the pointer's vertical position. Its horizontal position stays untouched.
Hold Control—or your chosen key—and pointer events pass through unchanged, letting macOS reveal the menu bar normally.
Menu Bar Gate vs. Hammerspoon
If you already use Hammerspoon, a script can be a perfectly valid option. Menu Bar Gate is for people who want this one behavior without maintaining that setup.
| Feature | Menu Bar Gate | Hammerspoon script |
|---|---|---|
| Setup | Drag in one app and grant Accessibility | Install Hammerspoon, grant Accessibility, and configure Lua |
| Settings | Built-in key, clearance, scope, and login controls | Edit and maintain a script |
| Best for | One dedicated behavior | Broader Mac automation |
Install
Download and open MenuBarGate.dmg.
Drag Menu Bar Gate into the Applications folder.
Open it and allow Menu Bar Gate in System Settings → Privacy & Security → Accessibility.
FAQ
Menu Bar Gate adds a small protected strip at the top edge. In a full-screen app, it keeps the pointer just below that strip so macOS does not reveal the menu bar accidentally. Hold your configured gate key whenever you want to pass through.
No. It preserves normal macOS behavior and only prevents an accidental pointer crossing. Hold the gate key, pause protection, leave full screen, or quit the app to reach the top normally.
No. Menu Bar Gate is a standalone native app. No Hammerspoon setup, Lua script, package manager, or third-party dependency is required.
macOS requires that permission for system-wide input event taps and frontmost-window accessibility attributes. The app uses those APIs only to detect the pointer, track the selected gate key, adjust the pointer's vertical coordinate, and identify full-screen windows.
Yes. It runs as one menu-bar utility across apps. By default, protection engages only when the frontmost app is full screen.
Yes. That is the default macOS setting Menu Bar Gate is designed for. Protection engages in a full-screen app and keeps the pointer below the activation edge until you hold your gate key.
Yes. Open the app's menu-bar icon to choose a different gate key and adjust the edge clearance.
The current prebuilt download is Apple-silicon-only. If you need an Intel or universal build, open an issue so demand can be tracked.
Not yet. Version 1.0.1 is ad-hoc signed rather than Developer ID signed and notarized. The source is available for inspection and local building, and signing/notarization is on the public roadmap.
Menu Bar Gate