diff --git a/Cargo.lock b/Cargo.lock index bd609cf..2375d61 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -120,6 +120,21 @@ dependencies = [ "rustc_version", ] +[[package]] +name = "futures" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + [[package]] name = "futures-channel" version = "0.3.31" @@ -127,6 +142,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" dependencies = [ "futures-core", + "futures-sink", ] [[package]] @@ -163,6 +179,12 @@ dependencies = [ "syn", ] +[[package]] +name = "futures-sink" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" + [[package]] name = "futures-task" version = "0.3.31" @@ -175,9 +197,13 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ + "futures-channel", "futures-core", + "futures-io", "futures-macro", + "futures-sink", "futures-task", + "memchr", "pin-project-lite", "pin-utils", "slab", @@ -877,6 +903,7 @@ version = "1.0.0" dependencies = [ "async-sqlite", "fallible-iterator", + "futures", "gtk4", "libadwaita", ] diff --git a/Cargo.toml b/Cargo.toml index e5b5c55..7dff9da 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,5 +12,6 @@ lto = true [ dependencies ] async-sqlite = { version = "0.4.0" , default-features = false } fallible-iterator = "0.3.0" # Must match version used by async-sqlite +futures = "0.3.31" gtk4 = { version = "0.9.5" , features = [ "v4_16" ] } libadwaita = { version = "0.7.1" , features = [ "v1_6" ] } diff --git a/src/ui/mod.rs b/src/ui/mod.rs index df77430..e49a1fe 100644 --- a/src/ui/mod.rs +++ b/src/ui/mod.rs @@ -2,6 +2,7 @@ mod collatable_container ; mod component ; mod utility ; +use futures :: * ; use gtk4 :: Orientation :: * ; use gtk4 :: prelude :: * ; use libadwaita :: * ; @@ -49,8 +50,9 @@ impl UI { pub fn close_window ( & self ) { self . window . close () } pub async fn render_collection_overview ( & self , collection : CollectionOverview ) { - // TODO: Find a way to await these futures concurrently - self . films_component . set_media ( collection . films ) . await ; - self . series_component . set_media ( collection . series ) . await ; + join ! ( + self . films_component . set_media ( collection . films ) , + self . series_component . set_media ( collection . series ) , + ) ; } }