Thanks for the quick reply!
I was missing the NSPanel bit!
I forgot to mention that I added the Application is agent (LSUIElement) key to the info.plist which seems to be equivalent to your first point.
Now everything seems to work as you've stated. I tested those scenarios as well and it always stays on top!
Topic:
UI Frameworks
SubTopic:
General
Tags: