Available on nowhere.
Expand description
§0.16.2
- On Windows, non-resizable windows now have the maximization button disabled. This is consistent with behavior on macOS and popular X11 WMs.
- Corrected incorrect
unreachable!
usage when guessing the DPI factor with no detected monitors.
§0.16.1
- Added logging through
log
. Logging will become more extensive over time. - On X11 and Windows, the window’s DPI factor is guessed before creating the window. This greatly cuts back on unsightly auto-resizing that would occur immediately after window creation.
- Fixed X11 backend compilation for environments where
c_char
is unsigned.
§0.16.0
- Windows additionally has
WindowBuilderExt::with_no_redirection_bitmap
. - Breaking: Removed
VirtualKeyCode::LMenu
andVirtualKeyCode::RMenu
; Windows now generatesVirtualKeyCode::LAlt
andVirtualKeyCode::RAlt
instead. - On X11, exiting fullscreen no longer leaves the window in the monitor’s top left corner.
- Breaking:
Window::hidpi_factor
has been renamed toWindow::get_hidpi_factor
for better consistency.WindowEvent::HiDPIFactorChanged
has been renamed toWindowEvent::HiDpiFactorChanged
. DPI factors are always represented asf64
instead off32
now. - The Windows backend is now DPI aware.
WindowEvent::HiDpiFactorChanged
is implemented, andMonitorId::get_hidpi_factor
andWindow::hidpi_factor
return accurate values. - Implemented
WindowEvent::HiDpiFactorChanged
on X11. - On macOS,
Window::set_cursor_position
is now relative to the client area. - On macOS, setting the maximum and minimum dimensions now applies to the client area dimensions rather than to the window dimensions.
- On iOS,
MonitorId::get_dimensions
has been implemented and bothMonitorId::get_hidpi_factor
andWindow::get_hidpi_factor
return accurate values. - On Emscripten,
MonitorId::get_hidpi_factor
now returns the same value asWindow::get_hidpi_factor
(it previously would always return 1.0). - Breaking: The entire API for sizes, positions, etc. has changed. In the majority of cases, winit produces and consumes positions and sizes as
LogicalPosition
andLogicalSize
, respectively. The notable exception isMonitorId
methods, which deal inPhysicalPosition
andPhysicalSize
. See the documentation for specifics and explanations of the types. Additionally, winit automatically conserves logical size when the DPI factor changes. - Breaking: All deprecated methods have been removed. For
Window::platform_display
andWindow::platform_window
, switch to the appropriate platform-specificWindowExt
methods. ForWindow::get_inner_size_points
andWindow::get_inner_size_pixels
, use theLogicalSize
returned byWindow::get_inner_size
and convert as needed. - HiDPI support for Wayland.
EventsLoop::get_available_monitors
andEventsLoop::get_primary_monitor
now have identical counterparts onWindow
, so this information can be acquired without anEventsLoop
borrow.AvailableMonitorsIter
now implementsDebug
.- Fixed quirk on macOS where certain keys would generate characters at twice the normal rate when held down.
- On X11, all event loops now share the same
XConnection
. - Breaking:
Window::set_cursor_state
andCursorState
enum removed in favor of the more composableWindow::grab_cursor
andWindow::hide_cursor
. As a result, grabbing the cursor no longer automatically hides it; you must call both methods to retain the old behavior on Windows and macOS.Cursor::NoneCursor
has been removed, as it’s no longer useful. - Breaking:
Window::set_cursor_position
now returnsResult<(), String>
, thus allowing forBox<Error>
conversion via?
.