There's a very simple explanation to that, it's because they are written by amateurs. But if professional people or better coders would bother to contribute we'd gladly accept the contributions.I've complained about this privately in the past. It makes our programs look amateurish.
I forgot the add this->hide() and this->show() to hide the GUI while the foreground app is running. I forgot that because at some point we were trying to use xdg-open and that is not blocking so those commands would be irrelevant because this->show() would run immediately after issuing xdg-open command.