Normally I'd have this background threading to keep the GUI thread from being blocked. But in this case, it blocks the window from opening/shifting and displaying a black empty screen in the meantime