Changes for fake windows. Moved them into a seperate C++ class and overload some methods to correct the behaviour