RustAudio / baseview

low-level window system interface for audio plugin UIs
Apache License 2.0
267 stars 57 forks source link

Windows: Add public defer method #144

Open helgoboss opened 1 year ago

helgoboss commented 1 year ago

This solves #143 in a better way than #130 did. It lets downstream crates defer tasks until the end of the current main loop cycle in order to prevent "already borrowed" errors because of multiple mutable borrows of the window state.

I added this method for Windows only because this is the only OS where baseview uses RefCells and the only OS for which the deferred_task queue has been implemented (in #136).