When I open a forum thread through a sign, TPT freezes until I exit the browser, most likely due to Platform.cpp:94 running xdg-open synchronously.
Having no idea what else to say,
$ uname -a
Linux lbphacker-ubuntu1 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Oh wait. This is weird. I just set the default browser to chromium-browser.desktop and now xdg-open returns immediately (sort of, of course it waits some, as you've mentioned).
EDIT: Nevermind all that. xdg-open totally waits until the program it started finishes. chromium returned because it opened a tab in the existing browser session.
*break*
Set it back to firefox.desktop. This might be firefox's fault. Right now I have a thread open in firefox and it doesn't seem willing to return.
...
+powder---sh---xdg-open---firefox-+-{Cache I/O}
...
EDIT: The editor didn't like pstree's output.