Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.3 — Touch support, clipboard write access, image viewer, tooltips, and more! #806

Merged
merged 2 commits into from
Mar 31, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 62 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,70 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.3.0] - 2021-03-31
### Added
- Support for the [`smol`] async runtime. [#699]
- Touch support. [#57] [#650] (thanks to @simlay and @discordance!)
- Clipboard write access for
- `TextInput` widget. [#770]
- `Application::update`. [#773]
- `image::Viewer` widget. It allows panning and scaling of an image. [#319] (thanks to @tarkah!)
- `Tooltip` widget. It annotates content with some text on mouse hover. [#465] (thanks to @yusdacra!)
- Support for the [`smol`] async runtime. [#699] (thanks to @JayceFayne!)
- Support for graceful exiting when using the `Application` trait. [#804]
- Image format features in [`iced_wgpu`] to reduce code bloat. [#392] (thanks to @unrelentingtech!)
- `Focused` and `Unfocused` variant to `window::Event`. [#701] (thanks to @cossonleo!)
- `WGPU_BACKEND` environment variable to configure the internal graphics backend of `iced_wgpu`. [#789] (thanks to @Cupnfish!)

### Changed
- The `TitleBar` of a `PaneGrid` now supports generic elements. [#657] (thanks to @clarkmoody!)
- The `Error` type now implements `Send` and `Sync`. [#719] (thanks to @taiki-e!)
- The `Style` types in `iced_style` now implement `Clone` and `Copy`. [#720] (thanks to @taiki-e!)
- The following dependencies have been updated:
- [`font-kit`] → `0.10` [#669]
- [`glutin`] → `0.26` [#658]
- [`resvg`] → `0.12` [#669]
- [`tokio`] → `1.0` [#672] (thanks to @yusdacra!)
- [`winit`] → `0.24` [#658]
- [`wgpu`] → `0.7` [#725] (thanks to @PolyMeilex)
- The following examples were improved:
- `download_progress` now showcases multiple file downloads at once. [#283] (thanks to @Folyd!)
- `solar_system` uses the new `rand` API. [#760] (thanks to @TriedAngle!)

### Fixed
- Button events not being propagated to contents. [#668]
- Incorrect overlay implementation for the `Button` widget. [#764]
- `Viewport::physical_width` returning the wrong value. [#700]
- Outdated documentation for the `Sandbox` trait. [#710]

[#57]: https://github.com/hecrj/iced/pull/57
[#283]: https://github.com/hecrj/iced/pull/283
[#319]: https://github.com/hecrj/iced/pull/319
[#392]: https://github.com/hecrj/iced/pull/392
[#465]: https://github.com/hecrj/iced/pull/465
[#650]: https://github.com/hecrj/iced/pull/650
[#657]: https://github.com/hecrj/iced/pull/657
[#658]: https://github.com/hecrj/iced/pull/658
[#668]: https://github.com/hecrj/iced/pull/668
[#669]: https://github.com/hecrj/iced/pull/669
[#672]: https://github.com/hecrj/iced/pull/672
[#699]: https://github.com/hecrj/iced/pull/699
[#700]: https://github.com/hecrj/iced/pull/700
[#701]: https://github.com/hecrj/iced/pull/701
[#710]: https://github.com/hecrj/iced/pull/710
[#719]: https://github.com/hecrj/iced/pull/719
[#720]: https://github.com/hecrj/iced/pull/720
[#725]: https://github.com/hecrj/iced/pull/725
[#760]: https://github.com/hecrj/iced/pull/760
[#764]: https://github.com/hecrj/iced/pull/764
[#770]: https://github.com/hecrj/iced/pull/770
[#773]: https://github.com/hecrj/iced/pull/773
[#789]: https://github.com/hecrj/iced/pull/789
[#804]: https://github.com/hecrj/iced/pull/804
[`smol`]: https://github.com/smol-rs/smol
[`winit`]: https://github.com/rust-windowing/winit
[`glutin`]: https://github.com/rust-windowing/glutin
[`font-kit`]: https://github.com/servo/font-kit

## [0.2.0] - 2020-11-26
### Added
Expand Down Expand Up @@ -160,7 +219,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- First release! :tada:

[Unreleased]: https://github.com/hecrj/iced/compare/0.2.0...HEAD
[Unreleased]: https://github.com/hecrj/iced/compare/0.3.0...HEAD
[0.3.0]: https://github.com/hecrj/iced/compare/0.2.0...0.3.0
[0.2.0]: https://github.com/hecrj/iced/compare/0.1.1...0.2.0
[0.1.1]: https://github.com/hecrj/iced/compare/0.1.0...0.1.1
[0.1.0]: https://github.com/hecrj/iced/compare/0.1.0-beta...0.1.0
Expand Down
16 changes: 8 additions & 8 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced"
version = "0.2.0"
version = "0.3.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A cross-platform GUI library inspired by Elm"
Expand Down Expand Up @@ -87,18 +87,18 @@ members = [
]

[dependencies]
iced_core = { version = "0.3", path = "core" }
iced_futures = { version = "0.2", path = "futures" }
iced_core = { version = "0.4", path = "core" }
iced_futures = { version = "0.3", path = "futures" }
thiserror = "1.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
iced_winit = { version = "0.2", path = "winit" }
iced_glutin = { version = "0.1", path = "glutin", optional = true }
iced_wgpu = { version = "0.3", path = "wgpu", optional = true }
iced_glow = { version = "0.1", path = "glow", optional = true}
iced_winit = { version = "0.3", path = "winit" }
iced_glutin = { version = "0.2", path = "glutin", optional = true }
iced_wgpu = { version = "0.4", path = "wgpu", optional = true }
iced_glow = { version = "0.2", path = "glow", optional = true}

[target.'cfg(target_arch = "wasm32")'.dependencies]
iced_web = { version = "0.3", path = "web" }
iced_web = { version = "0.4", path = "web" }

[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ __Iced is currently experimental software.__ [Take a look at the roadmap],
Add `iced` as a dependency in your `Cargo.toml`:

```toml
iced = "0.2"
iced = "0.3"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down
2 changes: 1 addition & 1 deletion core/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_core"
version = "0.3.0"
version = "0.4.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "The essential concepts of Iced"
Expand Down
2 changes: 1 addition & 1 deletion core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This crate is meant to be a starting point for an Iced runtime.
Add `iced_core` as a dependency in your `Cargo.toml`:

```toml
iced_core = "0.3"
iced_core = "0.4"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down
2 changes: 1 addition & 1 deletion futures/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_futures"
version = "0.2.0"
version = "0.3.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "Commands, subscriptions, and runtimes for Iced"
Expand Down
6 changes: 3 additions & 3 deletions glow/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_glow"
version = "0.1.0"
version = "0.2.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A glow renderer for iced"
Expand All @@ -24,11 +24,11 @@ bytemuck = "1.4"
log = "0.4"

[dependencies.iced_native]
version = "0.3"
version = "0.4"
path = "../native"

[dependencies.iced_graphics]
version = "0.1"
version = "0.2"
path = "../graphics"
features = ["font-fallback", "font-icons", "opengl"]

Expand Down
8 changes: 4 additions & 4 deletions glutin/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_glutin"
version = "0.1.0"
version = "0.2.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A glutin runtime for Iced"
Expand All @@ -17,14 +17,14 @@ debug = ["iced_winit/debug"]
glutin = "0.26"

[dependencies.iced_native]
version = "0.3"
version = "0.4"
path = "../native"

[dependencies.iced_winit]
version = "0.2"
version = "0.3"
path = "../winit"

[dependencies.iced_graphics]
version = "0.1"
version = "0.2"
path = "../graphics"
features = ["opengl"]
2 changes: 1 addition & 1 deletion glutin/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ It exposes a renderer-agnostic `Application` trait that can be implemented and t
Add `iced_glutin` as a dependency in your `Cargo.toml`:

```toml
iced_glutin = "0.1"
iced_glutin = "0.2"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down
6 changes: 3 additions & 3 deletions graphics/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_graphics"
version = "0.1.0"
version = "0.2.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A bunch of backend-agnostic types that can be leveraged to build a renderer for Iced"
Expand Down Expand Up @@ -28,11 +28,11 @@ version = "1.4"
features = ["derive"]

[dependencies.iced_native]
version = "0.3"
version = "0.4"
path = "../native"

[dependencies.iced_style]
version = "0.2"
version = "0.3"
path = "../style"

[dependencies.lyon]
Expand Down
6 changes: 3 additions & 3 deletions native/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_native"
version = "0.3.0"
version = "0.4.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A renderer-agnostic library for native GUIs"
Expand All @@ -16,10 +16,10 @@ unicode-segmentation = "1.6"
num-traits = "0.2"

[dependencies.iced_core]
version = "0.3"
version = "0.4"
path = "../core"

[dependencies.iced_futures]
version = "0.2"
version = "0.3"
path = "../futures"
features = ["thread-pool"]
2 changes: 1 addition & 1 deletion native/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ To achieve this, it introduces a bunch of reusable interfaces:
Add `iced_native` as a dependency in your `Cargo.toml`:

```toml
iced_native = "0.3"
iced_native = "0.4"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down
7 changes: 4 additions & 3 deletions style/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_style"
version = "0.2.0"
version = "0.3.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "The default set of styles of Iced"
Expand All @@ -10,5 +10,6 @@ documentation = "https://docs.rs/iced_style"
keywords = ["gui", "ui", "graphics", "interface", "widgets"]
categories = ["gui"]

[dependencies]
iced_core = { version = "0.3", path = "../core" }
[dependencies.iced_core]
version = "0.4"
path = "../core"
8 changes: 4 additions & 4 deletions web/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_web"
version = "0.3.0"
version = "0.4.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A web backend for Iced"
Expand All @@ -22,15 +22,15 @@ url = "2.0"
num-traits = "0.2"

[dependencies.iced_core]
version = "0.3"
version = "0.4"
path = "../core"

[dependencies.iced_futures]
version = "0.2"
version = "0.3"
path = "../futures"

[dependencies.iced_style]
version = "0.2"
version = "0.3"
path = "../style"

[dependencies.web-sys]
Expand Down
2 changes: 1 addition & 1 deletion web/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ The crate is currently a __very experimental__, simple abstraction layer over [`
Add `iced_web` as a dependency in your `Cargo.toml`:

```toml
iced_web = "0.3"
iced_web = "0.4"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down
6 changes: 3 additions & 3 deletions wgpu/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_wgpu"
version = "0.3.0"
version = "0.4.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A wgpu renderer for Iced"
Expand Down Expand Up @@ -39,11 +39,11 @@ version = "1.4"
features = ["derive"]

[dependencies.iced_native]
version = "0.3"
version = "0.4"
path = "../native"

[dependencies.iced_graphics]
version = "0.1"
version = "0.2"
path = "../graphics"
features = ["font-fallback", "font-icons"]

Expand Down
2 changes: 1 addition & 1 deletion wgpu/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Currently, `iced_wgpu` supports the following primitives:
Add `iced_wgpu` as a dependency in your `Cargo.toml`:

```toml
iced_wgpu = "0.3"
iced_wgpu = "0.4"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down
8 changes: 4 additions & 4 deletions winit/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "iced_winit"
version = "0.2.0"
version = "0.3.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2018"
description = "A winit runtime for Iced"
Expand All @@ -20,15 +20,15 @@ log = "0.4"
thiserror = "1.0"

[dependencies.iced_native]
version = "0.3"
version = "0.4"
path = "../native"

[dependencies.iced_graphics]
version = "0.1"
version = "0.2"
path = "../graphics"

[dependencies.iced_futures]
version = "0.2"
version = "0.3"
path = "../futures"

[target.'cfg(target_os = "windows")'.dependencies.winapi]
Expand Down
2 changes: 1 addition & 1 deletion winit/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ It exposes a renderer-agnostic `Application` trait that can be implemented and t
Add `iced_winit` as a dependency in your `Cargo.toml`:

```toml
iced_winit = "0.2"
iced_winit = "0.3"
```

__Iced moves fast and the `master` branch can contain breaking changes!__ If
Expand Down