To make os_is_paused() work like GM it will have to be a lot less pretty (we need additional variable to check if window was in focus last frame).
You're assuming that the 1 step is guaranteed.
At any rate I have fixed it and tested it for Win32 to have the expected behavior and committed, the following works fine. I still need to test and make sure Studio does actually behave this way, and if so then it can be merged. However, I don't agree at all with the way they handled this, honestly it was so stupid, they should have just made FocusGain and FocusLost events.
if (os_is_paused()) {
show_message_async("OS Paused");
}
Thanks Robert. I guess we both agree that YoYo has not done many things correctly.
One can write a book on that topic. But their shit sells and seems to do quite well. Maybe people don't know better

Probably most mobile developers won't give a shit either.

BTW I agree with the focus events. Maybe their reasoning is that it is not useful to them. Much the same reasoning behind them removing some windows functions that are standard in other products, so they basically, not giving a two shit about their customers, will only implement things if THEY find it useful.