Available nowhere.
Expand description
§0.27.5
- On Wayland, fix byte offset in
Ime::Preeditpointing to invalid bytes.
§0.27.4
- On Windows, emit
ReceivedCharacterevents on system keybindings. - On Windows, fixed focus event emission on minimize.
- On X11, fixed IME crashing during reload.
§0.27.3
- On Windows, added
WindowExtWindows::set_undecorated_shadowandWindowBuilderExtWindows::with_undecorated_shadowto draw the drop shadow behind a borderless window. - On Windows, fixed default window features (ie snap, animations, shake, etc.) when decorations are disabled.
- On Windows, fixed ALT+Space shortcut to open window menu.
- On Wayland, fixed
Ime::Preeditnot being sent on IME reset. - Fixed unbound version specified for
raw-window-handleleading to compilation failures. - Empty
Ime::Preeditevent will be sent beforeIme::Committo help clearing preedit. - On X11, fixed IME context picking by querying for supported styles beforehand.
§0.27.2
- On macOS, fixed touch phase reporting when scrolling.
- On X11, fix min, max and resize increment hints not persisting for resizable windows (e.g. on DPI change).
- On Windows, respect min/max inner sizes when creating the window.
- For backwards compatibility,
Windownow (additionally) implements the old version (0.4) of theHasRawWindowHandletrait - On Windows, added support for
EventLoopWindowTarget::set_device_event_filter. - On Wayland, fix user requested
WindowEvent::RedrawRequestedbeing delayed by a frame.
§0.27.1
- The minimum supported Rust version was lowered to
1.57.0and now explicitly tested. - On X11, fix crash on start due to inability to create an IME context without any preedit.
§0.27.0
- On Windows, fix hiding a maximized window.
- On Android,
ndk-glue’sNativeWindowlock is now held betweenEvent::ResumedandEvent::Suspended. - On Web, added
EventLoopExtWebSyswith aspawnmethod to start the event loop without throwing an exception. - Added
WindowEvent::Occluded(bool), currently implemented on macOS and X11. - On X11, fix events for caps lock key not being sent
- Build docs on
docs.rsfor iOS and Android as well. - Breaking: Removed the
WindowAttributesstruct, since all its functionality is accessible fromWindowBuilder. - Added
WindowBuilder::transparentgetter to check if the user settransparentattribute. - On macOS, Fix emitting
Event::LoopDestroyedon CMD+Q. - On macOS, fixed an issue where having multiple windows would prevent run_return from ever returning.
- On Wayland, fix bug where the cursor wouldn’t hide in GNOME.
- On macOS, Windows, and Wayland, add
set_cursor_hittestto let the window ignore mouse events. - On Windows, added
WindowExtWindows::set_skip_taskbarandWindowBuilderExtWindows::with_skip_taskbar. - On Windows, added
EventLoopBuilderExtWindows::with_msg_hook. - On Windows, remove internally unique DC per window.
- On macOS, remove the need to call
set_ime_positionafter moving the window. - Added
Window::is_visible. - Added
Window::is_resizable. - Added
Window::is_decorated. - On X11, fix for repeated event loop iteration when
ControlFlowwasWait - On X11, fix scale factor calculation when the only monitor is reconnected
- On Wayland, report unaccelerated mouse deltas in
DeviceEvent::MouseMotion. - On Web, a focused event is manually generated when a click occurs to emulate behaviour of other backends.
- Breaking: Bump
ndkversion to 0.6, ndk-sys tov0.3,ndk-glueto0.6. - Remove no longer needed
WINIT_LINK_COLORSYNCenvironment variable. - Breaking: Rename the
Exitvariant ofControlFlowtoExitWithCode, which holds a value to control the exit code after running. Add anExitconstant which aliases toExitWithCode(0)instead to avoid major breakage. This shouldn’t affect most existing programs. - Add
EventLoopBuilder, which allows you to create and tweak the settings of an event loop before creating it. - Deprecated
EventLoop::with_user_event; useEventLoopBuilder::with_user_eventinstead. - Breaking: Replaced
EventLoopExtMacOSwithEventLoopBuilderExtMacOS(which also has renamed methods). - Breaking: Replaced
EventLoopExtWindowswithEventLoopBuilderExtWindows(which also has renamed methods). - Breaking: Replaced
EventLoopExtUnixwithEventLoopBuilderExtUnix(which also has renamed methods). - Breaking: The platform specific extensions for Windows
winit::platform::windowshave changed. AllHANDLE-like types e.g.HWNDandHMENUwere converted from winapi types or*mut c_voidtoisize. This was done to be consistent with the type definitions in windows-sys and to not expose internal dependencies. - The internal bindings to the Windows API were changed from the unofficial winapi bindings to the official Microsoft windows-sys bindings.
- On Wayland, fix polling during consecutive
EventLoop::run_returninvocations. - On Windows, fix race issue creating fullscreen windows with
WindowBuilder::with_fullscreen - On Android,
virtual_keycodeforKeyboardInputevents is now filled in where a suitable match is found. - Added helper methods on
ControlFlowto set its value. - On Wayland, fix
TouchPhase::Endedalways reporting the location of the first touch down, unless the compositor sent a cancel or frame event. - On iOS, send
RedrawEventsClearedeven if there are no redraw events, consistent with other platforms. - Breaking: Replaced
Window::with_app_idandWindow::with_classwithWindow::with_nameonWindowBuilderExtUnix. - On Wayland, fallback CSD was replaced with proper one:
WindowBuilderExtUnix::with_wayland_csd_themeto set color theme in builder.WindowExtUnix::wayland_set_csd_themeto set color theme when creating a window.WINIT_WAYLAND_CSD_THEMEenv variable was added, it can be used to set “dark”/“light” theme in apps that don’t expose theme setting.wayland-csd-adwaitafeature that enables proper CSD with title rendering using FreeType system library.wayland-csd-adwaita-notitlefeature that enables CSD but without title rendering.
- On Wayland and X11, fix window not resizing with
Window::set_inner_sizeafter callingWindow:set_resizable(false). - On Windows, fix wrong fullscreen monitors being recognized when handling WM_WINDOWPOSCHANGING messages
- Breaking: Added new
WindowEvent::Imesupported on desktop platforms. - Added
Window::set_ime_allowedsupported on desktop platforms. - Breaking: IME input on desktop platforms won’t be received unless it’s explicitly allowed via
Window::set_ime_allowedand newWindowEvent::Imeevents are handled. - On macOS,
WindowEvent::Resizedis now emitted inframeDidChangeinstead ofwindowDidResize. - Breaking: On X11, device events are now ignored for unfocused windows by default, use
EventLoopWindowTarget::set_device_event_filterto set the filter level. - Implemented
DefaultonEventLoop<()>. - Implemented
EqforFullscreen,Theme, andUserAttentionType. - Breaking:
Window::set_cursor_grabnow acceptsCursorGrabModeto control grabbing behavior. - On Wayland, add support for
Window::set_cursor_position. - Fix on macOS
WindowBuilder::with_disallow_hidpi, setting true or false by the user no matter the SO default value. EventLoopBuilder::buildwill now panic when theEventLoopis being created more than once.- Added
From<u64>forWindowIdandFrom<WindowId>foru64. - Added
MonitorHandle::refresh_rate_millihertzto get monitor’s refresh rate. - Breaking, Replaced
VideoMode::refresh_ratewithVideoMode::refresh_rate_millihertzproviding better precision. - On Web, add
with_prevent_defaultandwith_focusabletoWindowBuilderExtWebSysto control whether events should be propagated. - On Windows, fix focus events being sent to inactive windows.
- Breaking, update
raw-window-handletov0.5and implementHasRawDisplayHandleforWindowandEventLoopWindowTarget. - On X11, add function
register_xlib_error_hookintowinit::platform::unixto subscribe for errors coming from Xlib. - On Android, upgrade
ndkandndk-gluedependencies to the recently released0.7.0. - All platforms can now be relied on to emit a
Resumedevent. Applications are recommended to lazily initialize graphics state and windows on first resume for portability. - Breaking:: Reverse horizontal scrolling sign in
MouseScrollDeltato match the direction of vertical scrolling. A positive X value now means moving the content to the right. The meaning of vertical scrolling stays the same: a positive Y value means moving the content down. - On MacOS, fix deadlock when calling
set_maximizedfrom event loop.