mipstian/catch — pull request #38 by CWSpear (2014-10-05 22:22:23+00:00)
Title: [Improvement] Keep torrent app in BG when opening magnet links.

> **Disclosure:** I *am* a developer, but I have very limited experience with Objective-C.

The problem: when Catch opens magnet links, it is handled by whatever application is set to handle magnet links. In my case, this app is Transmission. Despite whatever settings I use in Transmission, when that magnet link is opened, Transmission is brought to the front. This is especially undesirable when--like me--people use the same computer to run Transmission & co. as their media center. This means as we're peacefully minding our own business, watching--let's say Plex--and Catch catches a magnet link and Transmission pops up over our show!

I thought it was Transmission's fault, but it seems to be the way OS X handles opening URLs like magnet links. By default, it brings the app to the foreground. I found learned about this thanks to the user diamondsw on this thread: https://forums.plex.tv/index.php/topic/48190-transmission-keeps-popping-into-foreground-over-plex/

So I figured I'd be a good OSS contributor and fix this myself on Catch. As I mentioned before, tho... I'm no Obj-C dev. After much searching, I found out how to implement diamondsw's fix (see: http://zachwaugh.me/posts/opening-links-in-background-with-cocoa/), and apply it in this PR.

I tested this on the 1.8 tag and on the master branch and it worked for both.

I believe this only applies to magnet links and not to downloading torrent files and having Transmission watch the Downloads directory.