Windows 7では他のアプリにフォーカスを奪われるのを防ぐことはできない

絶望した。

何がむかつくって、たとえば

重たいソフトの起動→起動が遅いのでメールソフトに切り替えてメールを書き始める→書いてる最中で重たいソフトが起動し終わって、そちらにフォーカスが切り替わる→メール書くのが邪魔されてイラっとする

という事象を防ぐ手段がWindows 7では存在しないと言うこと。

Windows Vistaまではレジストリ値 HKEY_CURRENT_USER\Control Panel\Desktop\ForegroundLockTimeout を 200000 に設定*1することで、バックグラウンドで動作しているアプリケーションにフォーカスを奪われることを防ぐことができたが、Windows 7ではこのキーを参照しなくなったとのこと。

windows 7 - Preventing applications from stealing focus - Super User

ちなみにMacだと、非アクティブなアプリがアクティブウィンドウのフォーカスを無理矢理奪うようなことはありません。Dockでアイコンがぴょーんと飛び跳ねてアピールするだけ。すごい。すばらしい! もう一生ついて行く!

*1:レジストリを直接編集するほか、Tweak UIでも設定できる