All articles

Apps stealing focus on your Mac? Find the culprit and stop it

You're mid-sentence and your keystrokes land somewhere else. A window you didn't ask for is in front, your cursor is gone, and half a password just went into a chat box. Apps stealing focus on Mac is one of those problems that feels unfixable because macOS has no single switch for it — but it is almost always one of a handful of specific causes, and each of them has a fix.

Modern macOS mostly doesn't let apps steal focus

This is worth knowing before you start hunting, because it narrows the search a lot.

Until macOS 13, any app could call activateIgnoringOtherApps: and yank the foreground away from whatever you were doing. macOS 14 deprecated that API and replaced it with cooperative activation: an app's request to come forward is now a suggestion, and the system decides. An app that wants to hand focus to another app is expected to call yieldActivation first, offering the foreground rather than grabbing it.

So on macOS 14 and later, a well-behaved modern app generally cannot steal your focus out of nowhere. When it still happens, the cause is usually one of these:

What you seeLikely cause
Focus jumps and your whole desktop changesSpaces switching to follow an app
Every window vanishes, desktop icons appear"Click wallpaper to reveal desktop"
It happens right after login or after a rebootA login item launching in the foreground
A dialog appears and takes the keyboardAn updater, an auth prompt, or a modal sheet
It's one specific old app or a helper processA legacy app still forcing activation

Find out which app is stealing focus

Before changing settings, get evidence. macOS ships lsappinfo, which reports the frontmost app and needs no permissions. Run this in Terminal and leave it going while you work:

while true; do
  printf '%s  %s\n' "$(date +%H:%M:%S)" \
    "$(lsappinfo info -only name "$(lsappinfo front)")"
  sleep 1
done | tee ~/focus-log.txt

Each line looks like 14:22:07 "LSDisplayName"="Safari". When focus gets stolen, note the time, press Control-C, and look at that timestamp in the log. The name that appears where yours should be is your culprit — and it is very often a helper, not the app you'd suspect: updaters, sync agents and keyboard/mouse vendor daemons register under their own names.

If the log shows your own app name the whole time and focus still moved, the problem isn't activation at all — it's one of the two window-level causes below.

Cause 1: Spaces are following the app

If focus changes and your entire desktop slides sideways, nothing stole focus. You switched Spaces.

Open System Settings → Desktop & Dock → Mission Control and turn off "When switching to an application, switch to a Space with open windows for the application." With it on, activating an app — by Cmd-Tab, by Dock click, by a notification — jumps you to whatever Space that app's window lives on. With it off, you stay put.

While you're there, "Automatically rearrange Spaces based on most recent use" is worth turning off too, so Control-number always lands on the same desktop. More on both in our Spaces and virtual desktops guide and, for multi-monitor setups, Displays have separate Spaces.

Cause 2: clicking the wallpaper

Since macOS 14, clicking any visible sliver of wallpaper sweeps every window off screen. If your windows disappear when you click near an edge, that's this, not a focus thief.

System Settings → Desktop & Dock → Desktop & Stage Manager → Click wallpaper to reveal desktop has two values. Change Always to Only in Stage Manager and the behaviour stops unless Stage Manager is on. It's one of the settings we'd change on any fresh install — see the Tahoe settings worth changing.

Cause 3: something launching in the foreground

Focus stealing that clusters around login, wake, or the first minute after a reboot is a startup item opening a window. Check System Settings → General → Login Items & Extensions — both the "Open at Login" list and the "Allow in the Background" list underneath it. Many apps offer their own "launch hidden" or "start minimized" preference, which is better than removing them entirely. Our guide to Mac startup apps and login items covers the other four places an app can register itself to launch.

If it's your own script doing the launching, open has flags for this: open -g launches without bringing the app forward, and open -j launches it hidden.

Cause 4: updaters, auth prompts and modal dialogs

A dialog is allowed to take the keyboard, and no setting turns that off. What you can do is stop the dialogs from appearing:

  • Turn on automatic updates in the offending app, or turn its update check off entirely and update on your own schedule.
  • Set Software Update to install automatically so macOS stops asking.
  • Check whether the app has a menu-bar-only or "check silently" mode.

Note that notifications are not focus stealers. Banners and alerts sit on top of your work but don't take the keyboard — if yours feel like they do, the fix is in notification settings, and switching noisy apps from Alerts to Banners is usually enough.

Cause 5: a legacy app that still forces activation

Some older apps, and plenty of cross-platform ones, still call the deprecated activation path or fight the system for the foreground. There's no user-side setting for this. Your options are to update the app, report it to the developer (this is a bug in 2026, and it's now one Apple's API design agrees is a bug), or replace it.

Getting back to your window quickly

Half the damage from a stolen focus isn't the interruption — it's the five seconds of hunting afterwards. Cmd-Tab only gets you back to the app; if you had three windows of it open, you still have to find the right one.

That's the gap Let's Switch fills. Hold Option-Tab and you get a live preview of every open window, most recent first — so the window you were just yanked out of is the first entry. Let go and you're back in it, cursor where you left it. That part is free permanently, along with Option-backtick to cycle windows within one app. Pro ($9.99, paid once, no account, no subscription, no telemetry) adds an Option-Space search palette for when you have too many windows to tab through at all.

It doesn't stop apps from stealing focus. Nothing outside the fixes above does. It just makes the recovery a keystroke instead of a hunt.

Frequently asked questions

Is there one setting to stop all apps stealing focus on Mac? No. macOS has never shipped a global toggle for it. Since macOS 14 the system itself withholds activation from apps that ask for it improperly, which is as close as it gets.

Why does my Mac switch desktops when I Cmd-Tab? That's the "switch to a Space with open windows" setting in Desktop & Dock → Mission Control, not focus stealing. Turn it off to stay on your current Space.

Can I tell which app took focus after the fact? Not from any built-in log that's easy to read. Run the lsappinfo loop above while you work — a timestamped log is the fastest way to name the culprit.

Does Safe Mode help diagnose this? Yes. Booting into Safe Mode stops third-party login items and background agents from loading. If the problem disappears there, it's one of them, and the login items list is where to look.