New features
-
Stateless widgets (#1284)
A brand new widget API that removes the need to keep track of internal widget state. No morebutton::State
in your application! -
Component
trait (#1131)
A new trait to implement custom widgets with internal mutable state while using composition and The Elm Architecture. -
Responsive
widget (#1193)
A widget that is aware of its dimensions and can be used to easily build responsive user interfaces. -
Experimental WebGL support (#1096)
Applications can now be rendered into an HTMLcanvas
when targeting Wasm by leveraging the WebGL support inwgpu
. Thanks to @pacmancoder and @kaimast! -
Support for Raspberry Pis and older devices (#1160)
The compatibility of our OpenGL renderer has been improved and should run on any hardware that supports OpenGL 2.1+ or OpenGL ES 2.0+. Additionally, we started maintaining Docker images foraarch64
andarmv7
to easily cross-compileiced
applications and target Raspberry Pis. Thanks to @derezzedex! -
Simpler
Renderer
APIs (#1110)
The surface of theRenderer
APIs of the library has been considerably reduced. Instead of aRenderer
trait per widget, now there are only 3 traits that are reused by all the widgets.
Thank you! 🎉
- @0x192 implemented the
Default
trait forpure::State
(#1298). - @13r0ck added support for selecting a value of a
PickList
by scrolling (#872). - @Ace4896 added placeholder support for the
PickList
widget (#888). - @aentity fixed a bug causing high memory usage of the
Svg
widget (#952). - @akavel implemented proper handling of Exif orientation for raster images in
iced_wgpu
. - @akhilman fixed an issue with window transparency in
iced_glow
(#1021). - @Alch-Emi introduced
ContentFit
support for theImage
andSvg
widgets (#1219). - @AldoMX added a
select_all
method totext_input::State
(#776). - @AlisCode decoupled
image::Handle
fromiced_native
and lowered the trait bound oftext::Renderer::Font
(#1155). - @AndiHofi allowed
Application::run
to return on native platforms (#1112). - @ATiltedTree improved the compatibility of
iced_wgpu
by using the preferred texture format of the window surface (#978). - @BillyDM
- @blefevre added support for asymmetrical padding (#630).
- @casperstorm implemented a
pure
version of theTooltip
widget (#1315). - @Chiheisen
- @clarkmoody
- @cmot17 fixed an issue with text selection in the
TextInput
widget (#1098). - @cossonleo fixed the overlay position of the
Component
widget (#1205). - @Cupnfish
- @daladim added the iced logo to the documentation (#1147).
- @derezzedex added support for ARM devices and older hardware (#1160).
- @diegodox fixed a typo in the documentation of
canvas::Program
(#927). - @Dispersia upgraded
wgpu
to0.8
(#830). - @EkardNT added support for
Sandbox
applications to quit gracefully (#1175). - @feylinara fixed a memory leak in the
integration_opengl
example (#1181). - @gonsor added
text_color
to theStyle
of aCheckbox
(#1116). - @Imberflur
- @Kaiden42 implemented a
Toggler
widget (#535). - @LordRatte updated links in the documentation to point to the new
iced-rs
organization (#1168). - @Luni-4
- @marienz fixed
overlay
calls not being forwarded when usingElement::map
(#1294). - @mettz fixed an incorrect color being used with
Element::explain
(#1109). - @mtsr documented how to disable a
Button
(#646). - @nicksenger
- fixed the
Widget::height
implementation of theComponent
widget (#1149), - implemented
Widget::overlay
forComponent
(#1154), - fixed layout invalidation of nested components (#1169),
- fixed the overlay layout for the
Responsive
widget (#1262), - fixed the diffing strategy for nested pure components (#1301),
- fixed the diffing strategy for pure stateless components (#1309), and
- fixed a panic when using a pure
Component
in a pureResponsive
widget (#1319).
- fixed the
- @n8henrie fixed the path to
ferris.png
in thetour
example (#1157). - @oknozor fixed the visibility of the constants in the
blit
shader iniced_wgpu
(#1084). - @PolyMeilex
- @pacmancoder implemented experimental WebGL support in
iced_wgpu
(#1096). - @RamType0 removed unnecessary
String
allocation in some examples (#1106). - @RDambrosio016 fixed example links in the documentation to point to the latest release (#877).
- @sundy-li fixed the
README
of theintegration_opengl
example. - @taiki_e enabled the
qr_code
feature in docs.rs (#815). - @TannerRogalsky
- @tarkah
- added a new
Hidden
variant towindow::Mode
(#825), - introduced a new
Moved
variant towindow::Event
(#965), - fixed the overlays on a
PaneGrid
title bar not closing when dragging a pane (#971), - added a
Fill
variant forAlignment
(#1044), - removed redundant
Slider
messages (#1114), - added a line dash API for the
Canvas
widget (#1225), and - fixed the text wrapping of the selected option of a
PickList
(#1318).
- added a new
- @thenlevy
- @ThisIsRex fixed the position of the handle and rail of a
Slider
(#1286). - @traxys introduced a
window::Setting
to toggle drag and drop on Windows (#893). - @xy37v replaced Zulip mentions in the
README
with the new Discord server (#1151). - @yamadapc improved the support of
iced_glow
for multi-windowed applications (#980). - @yusdacra
- @ZakisM optimized the RGBA / BGRA conversion for vectorial images in
iced_wgpu
(#875). - @zdevwu added
text_color
andfont
methods toRadio
andCheckbox
(#831).