These days I further cleaned up code and moved all the terminal specific code into a folder called terminal. See the repo here for what I mean:
Theoretically, only the terminal folder should contain platform-dependent code. An approach would be to make an interface out of QTerminalWidget and implement platform-dependent solutions for each platform, so we keep things modular.
--