diff --git a/Cargo.lock b/Cargo.lock index a272e0e..c61fd41 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1429,7 +1429,6 @@ dependencies = [ "rayon", "rfd", "size", - "tokio", "zip", ] @@ -1746,7 +1745,6 @@ dependencies = [ "iced_core", "log", "rustc-hash 2.1.3", - "tokio", "wasm-bindgen-futures", "wasmtimer", ] @@ -4261,15 +4259,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" -[[package]] -name = "tokio" -version = "1.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed" -dependencies = [ - "pin-project-lite", -] - [[package]] name = "toml" version = "1.1.4+spec-1.1.0" diff --git a/Cargo.toml b/Cargo.toml index 0a8c2a4..8e4dfa2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,12 +10,11 @@ kra-image-integration = "0.1.0" rayon = "1.12.0" rfd = "0.17.2" size = "0.5.0" -tokio = "1.53.1" zip = "8.6.0" [dependencies.iced] version = "0.14.0" -features = [ "image", "tokio" ] +features = [ "image" ] [dependencies.image] version = "0.25.10" diff --git a/src/app/mod.rs b/src/app/mod.rs index b36c466..0b1f4cd 100644 --- a/src/app/mod.rs +++ b/src/app/mod.rs @@ -42,8 +42,6 @@ enum Message { struct State { images: BTreeMap, - filter: widget::image::FilterMethod, - columns: usize, key: usize, @@ -55,8 +53,10 @@ impl State { fn new() -> (Self, Task) { ( Self { + images: BTreeMap::new(), columns: 3, - ..Default::default() + key: 0, + error: None, }, Task::done(Message::OpenPath(Some( env::args() @@ -75,13 +75,9 @@ impl State { let size = 1000 / self.columns as u32; let (task, handle) = Task::perform( async move { - tokio::task::spawn_blocking(move || { - utils::load_thumbnail(&path, size) - .map(|img| (path, handle_from_image(img))) - .map_err(Arc::new) - }) - .await - .unwrap() + utils::load_thumbnail(&path, size) + .map(|img| (path, handle_from_image(img))) + .map_err(Arc::new) }, Message::ImageLoaded, ) @@ -178,13 +174,6 @@ impl State { self.columns = (self.columns - 1).clamp(1, 10) } - keyboard::Key::Character("f") => { - self.filter = match self.filter { - widget::image::FilterMethod::Linear => widget::image::FilterMethod::Nearest, - widget::image::FilterMethod::Nearest => widget::image::FilterMethod::Linear, - } - } - keyboard::Key::Character("q") => { return window::latest().and_then(window::close); } @@ -202,10 +191,10 @@ impl State { widget::container( widget::sensor(maybe_image.handle().map_or_else( || Element::from(widget::space()), - |handle| widget::image(handle).filter_method(self.filter).into(), + |handle| widget::image(handle).into(), )) .key(self.key) - .anticipate(500) + .anticipate(2000) .on_show(|_size| Message::LoadImage(path.clone())) .on_hide(Message::UnloadImage(path.clone())), )