3.1 KiB
The format is based on Keep a Changelog.
The sections should follow the order Added, Changed, Deprecated,
Removed, and Fixed.
Platform specific changed should be added to the end of the section and grouped
by platform name. Common API additions should have , implemented at the end
for platforms where the API was initially implemented. See the following example
on how to add them:
### Added
- Add `Window::turbo()`, implemented on X11, Wayland, and Web.
- On X11, add `Window::some_rare_api`.
- On X11, add `Window::even_more_rare_api`.
- On Wayland, add `Window::common_api`.
- On Windows, add `Window::some_rare_api`.
When the change requires non-trivial amount of work for users to comply with it, the migration guide should be added below the entry, like:
- Deprecate `Window` creation outside of `EventLoop::run`
This was done to simply migration in the future. Consider the
following code:
// Code snippet.
To migrate it we should do X, Y, and then Z, for example:
// Code snippet.
The migration guide could reference other migration examples in the current changelog entry.
Unreleased
Added
- Add
ActiveEventLoop::create_proxy().
Changed
-
On Web, let events wake up event loop immediately when using
ControlFlow::Poll. -
Bump MSRV from
1.70to1.73. -
Changed
ApplicationHandler::user_eventtouser_wake_up, removing the generic user event.Winit will now only indicate that wake up happened, you will have to pair this with an external mechanism like
std::sync::mpsc::channelif you want to send specific data to be processed on the main thread. -
Changed
EventLoopProxy::send_eventtoEventLoopProxy::wake_up, it now only wakes up the loop. -
ApplicationHandler::create|destroy_surfaces()was split off fromApplicationHandler::resumed/suspended().ApplicationHandler::can_create_surfaces()should, for portability reasons to Android, be the only place to create render surfaces.ApplicationHandler::resumed/suspended()are now only emitted by iOS and Web and now signify actually resuming/suspending the application. -
Rename
platform::web::*ExtWebSysto*ExtWeb. -
Change signature of
EventLoop::run_app,EventLoopExtPumpEvents::pump_app_eventsandEventLoopExtRunOnDemand::run_app_on_demandto accept aimpl ApplicationHandlerdirectly, instead of requiring a&mutreference to it. -
DeviceId::dummy()andWindowId::dummy()are no longer markedunsafe.
Removed
-
Remove
EventLoop::run. -
Remove
EventLoopExtRunOnDemand::run_on_demand. -
Remove
EventLoopExtPumpEvents::pump_events. -
Remove
Event. -
On iOS, remove
platform::ios::EventLoopExtIOSand relatedplatform::ios::Idiomtype.This feature was incomplete, and the equivalent functionality can be trivially achieved outside of
winitusingobjc2-ui-kitand callingUIDevice::currentDevice().userInterfaceIdiom().
Fixed
- On Wayland, avoid crashing when compositor is misbehaving.
- Account for different browser engine implementations of pointer movement coordinate space.