- Initial release
- Fixed issue when deleting a texture while binding a new one
- Fixed build issue when using without windowing enabled
- Fixed negative overflow issue where monitor size is misdetected or less than window size
- No longer specifies core profile for GL 2.0 (fixes issue on Macs)
- Setting multisampling level to 16 by default
- Ensure event loop gets woken up when redrawing on Windows
- Fix error on some platforms due to GL shader program validation
WindowCreationOptions::with_resizable()WindowCreationOptions::with_always_on_top()WindowCreationOptions::with_maximized()WindowCreationOptions::with_decorations()Graphics2D::create_image_from_file_path()Graphics2D::create_image_from_file_bytes()GLRenderer::create_image_from_file_path()GLRenderer::create_image_from_file_bytes()GLRenderer::new_for_gl_context(), to create aGLRendererfrom a GL loader function
Graphics2D::draw_image()is now able to take a tuple as a position- When creating an image from raw bytes, the number of bytes is checked
- Fixed texture load issues where the horizontal byte stride was not a multiple of 4
- Now works correctly in Wayland
- Fixed error when primary monitor is not found
- Fixed issue with lines under text when a dark background and antialiasing are used
Thanks to Revertron:
Graphics2D::set_clip()ModifiersState::default()
- WebGL support introduced
WebCanvas, providing full rendering and event handling for an HTML canvasGLRenderer::new_for_web_canvas_by_id(), for rendering only (no event handling)- The
timemodule, for access to the system clock in a cross-platform way.
WindowHandler::on_mouse_grab_status_changed()WindowHandler::on_fullscreen_status_changed()
- Ensure that mouse position is scaled using device pixel ratio
- Line breaks (
\n) now handled when laying out text
WindowHandler::on_mouse_wheel_scroll()(thanks to GreatGodOfFire)TextLayout::empty_line_vertical_metrics()
- Ability to draw polygons (thanks to chilipepperhott)
Thanks to dnlmlr:
- Set the position before making the window visible
- Added option to create transparent windows
Thanks to UdHo
- Fixed Wayland regression
- Remove
Sizedrequirement fromTextLayoutfunctions (allowing them to be called on&dyn TextLayout)
- Added convenient type aliases for:
Vector2types:Vec2,IVec2, andUVec2Rectangletypes:Rect,IRect, andURect
- Allow adding tuples to vectors, for example
my_vec + (1.0, 2.0) - Added example code for managing GL context with glutin (thanks to btbaggin)
Vector2::new_x()Vector2::new_y()Rectangle::with_negative_offset()Rectangle::ZEROColor::from_gray()
Graphics2D::draw_text_cropped(), for efficiently drawing a block of text cropped to the specified areaGraphics2D::capture(), for capturing the current contents of the window- Added assignment operators (
+=,-=,*=,/=) toVector2(thanks to amarao)
- Text drawn at a non-pixel-aligned position was getting snapped to the nearest pixel -- this is now fixed.
Rectangle::as_f32()
- Fix for issue #55 (text appearing as solid rectangles due to texture not being unbound correctly)
- Fix for issue #74 (in some cases, dropping an
ImageHandleresulted in a panic)
- Fix for issue #34 (incorrect alpha compositing on a transparent background)
- Functions which previously took a
Rectanglenow accept anything which implementsAsRef<Rectangle>. This allows you to either pass in a reference to a Rectangle, or move the Rectangle as before.
WindowHelper.get_size_pixels()(thanks to dennisorlando)
- APIs which previously returned or accepted an
Rc<FormattedTextBlock>now use aFormattedTextBlockdirectly FormattedTextBlockcan now be cheaply cloned, and sent between threads.- Removed the deprecated function
new_for_current_context-- please switch tonew_for_gl_contextinstead. UserEventSendernow implementsCloneeven if the event type doesn't (thanks to Alex Kladov)
TextOptions::with_trim_each_line()(thanks to InfiniteCoder01)
Ability to draw rounded rectangles, thanks to dennisorlando:
RoundedRectanglestructRectangle.rounded(radius)Graphics2D.draw_rounded_rectangle()
Updated to a newer version of Glutin.
- Resolved issues when running under Wayland on Linux
MouseButton.BackandMouseButton.ForwardWindowCreationError.EventLoopCreationFailed
MouseButton,VirtualKeyCode, andWindowCreationErrorare marked asnon_exhaustive