A lightweight macOS menu bar utility that prevents the annoying Finder "Downloads" window from auto-opening and stealing focus after receiving files via AirDrop.
Every time you receive a file via AirDrop, macOS forces Finder to open the Downloads folder and switches your active Space. This disrupts your workflow, especially if you are working in full-screen apps, coding, or gaming on multiple virtual desktops.
SilentAirDrop is a background Swift daemon packaged inside a lightweight .app bundle.
- Zero-latency: Uses
FSEventsto detect new files instantly. - Smart Detection: Verifies if the file actually came from AirDrop (via
sharingd). - User-Aware: Won't block you if you open Finder manually (uses a 0.4s idle check).
- Native UI: Simple Menu Bar icon to manage the app (toggle blocker, auto-launch, hide icon).
- Go to the Releases page and download
SilentAirDrop.dmg. - Open the
.dmgand drag SilentAirDrop.app into your Applications folder. - Launch the app.
Important
Since this app is compiled locally and not signed with a paid Apple Developer certificate, macOS Gatekeeper might block it.
To fix this, run this command in Terminal:
xattr -d com.apple.quarantine /Applications/SilentAirDrop.app- Follow the prompts to grant Accessibility permissions (required to manage Finder focus) and allow access to the Downloads folder (required to detect incoming files).
curl -sL https://raw.githubusercontent.com/gaptriko/SilentAirDrop/main/install.sh | bashgit clone https://github.com/gaptriko/SilentAirDrop.git
cd SilentAirDrop
chmod +x build.sh
./build.shSilentAirDrop runs as a lightweight menu bar app (.accessory activation policy).
- It registers an FSEvent Stream on the
~/Downloadsfolder to detect changes. - It listens to
NSWorkspace.didActivateApplicationNotification. - When Finder activates, it checks:
- Was there a file write in the last 5 seconds?
- Has the user been idle (no keyboard/mouse input) for at least 0.4 seconds?
- If both conditions are met, it identifies the event as an AirDrop trigger, returns the focus to your previously active application, and closes the newly opened "Downloads" window via Accessibility API (
AXUIElement).
MIT License. Feel free to contribute!