An almost non-blocking progress bar is displayed when loading multiple files.
Making loading files asynchronously was too difficult because shaders are being compiled while loading the file. The compiling had to be done on the main thread so it can't be done on an other thread. Trying to decouple loading from compiling would require a decent amount of refactoring which I wouldn't like to do and other hacks where too messy.
So I tried this implementation. It works fine when loading files that each don't require much time to load. With very big files the UI still blocks but only while loading these.
Rotating around objects behaves a little bit more like other 3D applications
The cursor changes when dragging files into the window and pressing ALT
Bugfix: the viewport was reseting it's transformation after resizing the window