not-fl3 / miniquad

Cross platform rendering in Rust
Apache License 2.0
1.54k stars 173 forks source link

Fixed forced modal pause of the application when resizing or moving on Windows #415

Closed Shelim closed 8 months ago

Shelim commented 8 months ago

The problem

Current implementation will force a pause on resizing or moving a window on Windows. This pause is modal: it will block all activity in main thread, including all polling inside update (which can result in as severe consequences as disconnection of multiplayer games!).

prev

The solution

The solution was long-and-length discussed in 8-years-spanning thread at SDL repo (!) and finally met final, safe solution in this SDL 2.30 PR at 2023, November.

This is a port of that solution into miniquad. It will only affect Windows platform.

fixed

not-fl3 commented 8 months ago

Great work, thanks!