diff --git a/Cargo.lock b/Cargo.lock index 832ce1d..f34e22f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -33,15 +33,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] -name = "async-trait" -version = "0.1.73" +name = "atomic-waker" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.37", -] +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "autocfg" @@ -66,9 +61,9 @@ dependencies = [ [[package]] name = "base64" -version = "0.21.4" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "bindgen" @@ -89,7 +84,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.37", + "syn", "which", ] @@ -140,23 +135,22 @@ checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" [[package]] name = "cairo-rs" -version = "0.18.2" +version = "0.19.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c0466dfa8c0ee78deef390c274ad756801e0a6dbb86c5ef0924a298c5761c4d" +checksum = "b2ac2a4d0e69036cf0062976f6efcba1aaee3e448594e6514bb2ddf87acce562" dependencies = [ "bitflags 2.4.0", "cairo-sys-rs", "glib", "libc", - "once_cell", "thiserror", ] [[package]] name = "cairo-sys-rs" -version = "0.18.2" +version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51" +checksum = "fd3bb3119664efbd78b5e6c93957447944f16bdbced84c17a9f41c7829b81e64" dependencies = [ "glib-sys", "libc", @@ -198,6 +192,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + [[package]] name = "clang-sys" version = "1.6.1" @@ -263,7 +263,7 @@ checksum = "f2b99bf03862d7f545ebc28ddd33a665b50865f4dfd84031a393823879bd4c54" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] @@ -303,7 +303,7 @@ dependencies = [ "serde_json", "tracker", "uuid", - "zoha-vte4", + "vte4", ] [[package]] @@ -320,7 +320,7 @@ checksum = "136526188508e25c6fef639d7927dfb3e0e3084488bf202267829cf7fc23dbdd" dependencies = [ "errno-dragonfly", "libc", - "windows-sys", + "windows-sys 0.48.0", ] [[package]] @@ -345,7 +345,7 @@ version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f" dependencies = [ - "memoffset 0.9.0", + "memoffset", "rustc_version", ] @@ -405,9 +405,9 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "futures" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" dependencies = [ "futures-channel", "futures-core", @@ -420,9 +420,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" dependencies = [ "futures-core", "futures-sink", @@ -430,15 +430,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" [[package]] name = "futures-executor" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" dependencies = [ "futures-core", "futures-task", @@ -447,38 +447,38 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" [[package]] name = "futures-macro" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] name = "futures-sink" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" [[package]] name = "futures-task" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-util" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" dependencies = [ "futures-channel", "futures-core", @@ -494,22 +494,21 @@ dependencies = [ [[package]] name = "gdk-pixbuf" -version = "0.18.0" +version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbc9c2ed73a81d556b65d08879ba4ee58808a6b1927ce915262185d6d547c6f3" +checksum = "f6a23f8a0b5090494fd04924662d463f8386cc678dd3915015a838c1a3679b92" dependencies = [ "gdk-pixbuf-sys", "gio", "glib", "libc", - "once_cell", ] [[package]] name = "gdk-pixbuf-sys" -version = "0.18.0" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7" +checksum = "1fdbf021f8b9d19e30fb9ea6d6e5f2b6a712fe4645417c69f86f6ff1e1444a8f" dependencies = [ "gio-sys", "glib-sys", @@ -520,9 +519,9 @@ dependencies = [ [[package]] name = "gdk4" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edb019ad581f8ecf8ea8e4baa6df7c483a95b5a59be3140be6a9c3b0c632af6" +checksum = "db265c9dd42d6a371e09e52deab3a84808427198b86ac792d75fd35c07990a07" dependencies = [ "cairo-rs", "gdk-pixbuf", @@ -535,9 +534,9 @@ dependencies = [ [[package]] name = "gdk4-sys" -version = "0.7.2" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbab43f332a3cf1df9974da690b5bb0e26720ed09a228178ce52175372dcfef0" +checksum = "c9418fb4e8a67074919fe7604429c45aa74eb9df82e7ca529767c6d4e9dc66dd" dependencies = [ "cairo-sys-rs", "gdk-pixbuf-sys", @@ -591,9 +590,9 @@ checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "gio" -version = "0.18.4" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73" +checksum = "be548be810e45dd31d3bbb89c6210980bb7af9bca3ea1292b5f16b75f8e394a7" dependencies = [ "futures-channel", "futures-core", @@ -602,7 +601,6 @@ dependencies = [ "gio-sys", "glib", "libc", - "once_cell", "pin-project-lite", "smallvec", "thiserror", @@ -610,15 +608,15 @@ dependencies = [ [[package]] name = "gio-sys" -version = "0.18.1" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2" +checksum = "d4bdbef451b0f0361e7f762987cc6bebd5facab1d535e85a3cf1115dfb08db40" dependencies = [ "glib-sys", "gobject-sys", "libc", "system-deps", - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -638,9 +636,9 @@ dependencies = [ [[package]] name = "glib" -version = "0.18.5" +version = "0.19.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5" +checksum = "e52355166df21c7ed16b6a01f615669c7911ed74e27ef60eba339c0d2da12490" dependencies = [ "bitflags 2.4.0", "futures-channel", @@ -654,30 +652,28 @@ dependencies = [ "gobject-sys", "libc", "memchr", - "once_cell", "smallvec", "thiserror", ] [[package]] name = "glib-macros" -version = "0.18.2" +version = "0.19.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8da903822b136d42360518653fcf154455defc437d3e7a81475bf9a95ff1e47" +checksum = "70025dbfa1275cf7d0531c3317ba6270dae15d87e63342229d638246ff45202e" dependencies = [ - "heck", + "heck 0.5.0", "proc-macro-crate", - "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] name = "glib-sys" -version = "0.18.1" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898" +checksum = "767d23ead9bbdfcbb1c2242c155c8128a7d13dde7bf69c176f809546135e2282" dependencies = [ "libc", "system-deps", @@ -691,9 +687,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "gobject-sys" -version = "0.18.0" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44" +checksum = "c3787b0bfacca12bb25f8f822b0dbee9f7e4a86e6469a29976d332d2c14c945b" dependencies = [ "glib-sys", "libc", @@ -702,9 +698,9 @@ dependencies = [ [[package]] name = "graphene-rs" -version = "0.18.1" +version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2228cda1505613a7a956cca69076892cfbda84fc2b7a62b94a41a272c0c401" +checksum = "99e4d388e96c5f29e2b2f67045d229ddf826d0a8d6d282f94ed3b34452222c91" dependencies = [ "glib", "graphene-sys", @@ -713,9 +709,9 @@ dependencies = [ [[package]] name = "graphene-sys" -version = "0.18.1" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc4144cee8fc8788f2a9b73dc5f1d4e1189d1f95305c4cb7bd9c1af1cfa31f59" +checksum = "2a60e7381afdd7be43bd10a89d3b6741d162aabbca3a8db73505afb6a3aea59d" dependencies = [ "glib-sys", "libc", @@ -725,9 +721,9 @@ dependencies = [ [[package]] name = "gsk4" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d958e351d2f210309b32d081c832d7de0aca0b077aa10d88336c6379bd01f7e" +checksum = "7563884bf6939f4468e5d94654945bdd9afcaf8c3ba4c5dd17b5342b747221be" dependencies = [ "cairo-rs", "gdk4", @@ -740,9 +736,9 @@ dependencies = [ [[package]] name = "gsk4-sys" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12bd9e3effea989f020e8f1ff3fa3b8c63ba93d43b899c11a118868853a56d55" +checksum = "23024bf2636c38bbd1f822f58acc9d1c25b28da896ff0f291a1a232d4272b3dc" dependencies = [ "cairo-sys-rs", "gdk4-sys", @@ -756,9 +752,9 @@ dependencies = [ [[package]] name = "gtk4" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeb51aa3e9728575a053e1f43543cd9992ac2477e1b186ad824fd4adfb70842" +checksum = "b04e11319b08af11358ab543105a9e49b0c491faca35e2b8e7e36bfba8b671ab" dependencies = [ "cairo-rs", "field-offset", @@ -777,23 +773,21 @@ dependencies = [ [[package]] name = "gtk4-macros" -version = "0.7.2" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d57ec49cf9b657f69a05bca8027cff0a8dfd0c49e812be026fc7311f2163832f" +checksum = "ec655a7ef88d8ce9592899deb8b2d0fa50bab1e6dd69182deb764e643c522408" dependencies = [ - "anyhow", "proc-macro-crate", - "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.109", + "syn", ] [[package]] name = "gtk4-sys" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54d8c4aa23638ce9faa2caf7e2a27d4a1295af2155c8e8d28c4d4eeca7a65eb8" +checksum = "8c8aa86b7f85ea71d66ea88c1d4bae1cfacf51ca4856274565133838d77e57b5" dependencies = [ "cairo-sys-rs", "gdk-pixbuf-sys", @@ -810,29 +804,23 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.21" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" +checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" dependencies = [ + "atomic-waker", "bytes", "fnv", "futures-core", "futures-sink", - "futures-util", "http", - "indexmap 1.9.3", + "indexmap", "slab", "tokio", "tokio-util", "tracing", ] -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - [[package]] name = "hashbrown" version = "0.14.0" @@ -845,6 +833,12 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + [[package]] name = "hermit-abi" version = "0.3.3" @@ -857,14 +851,14 @@ version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" dependencies = [ - "windows-sys", + "windows-sys 0.48.0", ] [[package]] name = "http" -version = "0.2.9" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" dependencies = [ "bytes", "fnv", @@ -873,12 +867,24 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.5" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" dependencies = [ "bytes", "http", +] + +[[package]] +name = "http-body-util" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" +dependencies = [ + "bytes", + "futures-core", + "http", + "http-body", "pin-project-lite", ] @@ -888,47 +894,60 @@ version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - [[package]] name = "hyper" -version = "0.14.27" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" +checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d" dependencies = [ "bytes", "futures-channel", - "futures-core", "futures-util", "h2", "http", "http-body", "httparse", - "httpdate", "itoa", "pin-project-lite", - "socket2 0.4.9", + "smallvec", "tokio", - "tower-service", - "tracing", "want", ] [[package]] name = "hyper-tls" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", + "http-body-util", "hyper", + "hyper-util", "native-tls", "tokio", "tokio-native-tls", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b875924a60b96e5d7b9ae7b066540b1dd1cbd90d1828f54c92e02a283351c56" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http", + "http-body", + "hyper", + "pin-project-lite", + "socket2", + "tokio", + "tower", + "tower-service", + "tracing", ] [[package]] @@ -941,16 +960,6 @@ dependencies = [ "unicode-normalization", ] -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", -] - [[package]] name = "indexmap" version = "2.0.0" @@ -958,19 +967,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" dependencies = [ "equivalent", - "hashbrown 0.14.0", + "hashbrown", ] [[package]] name = "io-lifetimes" -version = "1.0.11" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" -dependencies = [ - "hermit-abi", - "libc", - "windows-sys", -] +checksum = "5a611371471e98973dbcab4e0ec66c31a10bc356eeb4d54a0e05eac8158fe38c" [[package]] name = "ipnet" @@ -1016,9 +1020,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libadwaita" -version = "0.5.3" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fe7e70c06507ed10a16cda707f358fbe60fe0dc237498f78c686ade92fd979c" +checksum = "91b4990248b9e1ec5e72094a2ccaea70ec3809f88f6fd52192f2af306b87c5d9" dependencies = [ "gdk-pixbuf", "gdk4", @@ -1032,9 +1036,9 @@ dependencies = [ [[package]] name = "libadwaita-sys" -version = "0.5.3" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e10aaa38de1d53374f90deeb4535209adc40cc5dba37f9704724169bceec69a" +checksum = "23a748e4e92be1265cd9e93d569c0b5dfc7814107985aa6743d670ab281ea1a8" dependencies = [ "gdk4-sys", "gio-sys", @@ -1048,9 +1052,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.153" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "libgit2-sys" @@ -1182,18 +1186,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.6.3" +version = "2.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" - -[[package]] -name = "memoffset" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" -dependencies = [ - "autocfg", -] +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" [[package]] name = "memoffset" @@ -1227,13 +1222,13 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.8" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", "wasi", - "windows-sys", + "windows-sys 0.48.0", ] [[package]] @@ -1265,15 +1260,14 @@ dependencies = [ [[package]] name = "nix" -version = "0.26.4" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" +checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.0", "cfg-if", + "cfg_aliases", "libc", - "memoffset 0.7.1", - "pin-utils", ] [[package]] @@ -1336,9 +1330,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "openssl" @@ -1363,7 +1357,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] @@ -1386,22 +1380,21 @@ dependencies = [ [[package]] name = "pango" -version = "0.18.3" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4" +checksum = "504ce6e805439ea2c6791168fe7ef8e3da0c1b2ef82c44bc450dbc330592920d" dependencies = [ "gio", "glib", "libc", - "once_cell", "pango-sys", ] [[package]] name = "pango-sys" -version = "0.18.0" +version = "0.19.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5" +checksum = "e4829555bdbb83692ddeaf5a6927fb2d025c8131e5ecaa4f7619fff6985d3505" dependencies = [ "glib-sys", "gobject-sys", @@ -1450,7 +1443,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] @@ -1462,6 +1455,26 @@ dependencies = [ "siphasher", ] +[[package]] +name = "pin-project" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "pin-project-lite" version = "0.2.13" @@ -1476,9 +1489,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.27" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "ppv-lite86" @@ -1493,41 +1506,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.37", + "syn", ] [[package]] name = "proc-macro-crate" -version = "1.3.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" dependencies = [ - "once_cell", - "toml_edit", -] - -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn 1.0.109", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", + "toml_edit 0.21.1", ] [[package]] @@ -1618,11 +1606,10 @@ checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" [[package]] name = "relm4" -version = "0.7.0-beta.1" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f324ac78fb652034ff63c392b3aabad02b4a04cd802e73555e0bff07a21e08b" +checksum = "e6e0e187b58db367305e8486d3228158251da1c8ba1e18baa9de61894e822649" dependencies = [ - "async-trait", "flume", "fragile", "futures", @@ -1636,9 +1623,9 @@ dependencies = [ [[package]] name = "relm4-components" -version = "0.7.0-beta.1" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b28bfc632d7e26eea6481c52f4ef3f718155fe5bf962504c2a283620b38df0a" +checksum = "ffcb6431605810fca4430b3da5d496fcf67d39f32db6a2799bcaac27469154b9" dependencies = [ "once_cell", "relm4", @@ -1647,31 +1634,34 @@ dependencies = [ [[package]] name = "relm4-macros" -version = "0.7.0-beta.1" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cdf60cdb41e28131b6c0d830db742dc2b9ea311ef319f08cfac28567ec1d938" +checksum = "0774e846889823aa5766f5b62cface3189a5b36280e65b2faaa6df0319da1726" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] name = "reqwest" -version = "0.11.20" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" +checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10" dependencies = [ "base64", "bytes", "encoding_rs", + "futures-channel", "futures-core", "futures-util", "h2", "http", "http-body", + "http-body-util", "hyper", "hyper-tls", + "hyper-util", "ipnet", "js-sys", "log", @@ -1680,9 +1670,12 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", + "sync_wrapper", + "system-configuration", "tokio", "tokio-native-tls", "tower-service", @@ -1724,9 +1717,25 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys", + "windows-sys 0.48.0", ] +[[package]] +name = "rustls-pemfile" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" +dependencies = [ + "base64", + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" + [[package]] name = "ryu" version = "1.0.15" @@ -1739,7 +1748,7 @@ version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "windows-sys", + "windows-sys 0.48.0", ] [[package]] @@ -1794,7 +1803,7 @@ checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] @@ -1852,28 +1861,18 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.4.9" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" dependencies = [ "libc", - "winapi", -] - -[[package]] -name = "socket2" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" -dependencies = [ - "libc", - "windows-sys", + "windows-sys 0.52.0", ] [[package]] @@ -1885,17 +1884,6 @@ dependencies = [ "lock_api", ] -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - [[package]] name = "syn" version = "2.0.37" @@ -1907,6 +1895,33 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "system-deps" version = "6.1.1" @@ -1914,7 +1929,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "30c2de8a4d8f4b823d634affc9cd2a74ec98c53a756f317e529a48046cbf71f3" dependencies = [ "cfg-expr", - "heck", + "heck 0.4.1", "pkg-config", "toml", "version-compare", @@ -1942,7 +1957,7 @@ dependencies = [ "fastrand", "redox_syscall", "rustix", - "windows-sys", + "windows-sys 0.48.0", ] [[package]] @@ -1962,7 +1977,7 @@ checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] @@ -1982,9 +1997,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.32.0" +version = "1.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" +checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" dependencies = [ "backtrace", "bytes", @@ -1992,8 +2007,8 @@ dependencies = [ "mio", "num_cpus", "pin-project-lite", - "socket2 0.5.4", - "windows-sys", + "socket2", + "windows-sys 0.48.0", ] [[package]] @@ -2029,14 +2044,14 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit", + "toml_edit 0.19.15", ] [[package]] name = "toml_datetime" -version = "0.6.3" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" +checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" dependencies = [ "serde", ] @@ -2047,13 +2062,45 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.0.0", + "indexmap", "serde", "serde_spanned", "toml_datetime", "winnow", ] +[[package]] +name = "toml_edit" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +dependencies = [ + "indexmap", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "pin-project", + "pin-project-lite", + "tokio", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-layer" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" + [[package]] name = "tower-service" version = "0.3.2" @@ -2062,11 +2109,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.37" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "cfg-if", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -2074,20 +2120,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] name = "tracing-core" -version = "0.1.31" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", ] @@ -2109,7 +2155,7 @@ checksum = "ca029746fbe0efda3298205de77bf759d7fef23ac97902641e0b49a623b0455f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", ] [[package]] @@ -2179,10 +2225,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29" [[package]] -name = "version_check" -version = "0.9.4" +name = "vte4" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "666a15c7ac6316a3c1bf8c5bc30d687e7405a8cba120c50569a7adeeabbbd1c6" +dependencies = [ + "cairo-rs", + "gdk4", + "gio", + "glib", + "gtk4", + "io-lifetimes", + "libc", + "pango", + "vte4-sys", +] + +[[package]] +name = "vte4-sys" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d893a06a0907d5b843f34400ff0a7990332011e53faa7435635f0b12aacc3f88" +dependencies = [ + "cairo-sys-rs", + "gdk4-sys", + "gio-sys", + "glib-sys", + "gtk4-sys", + "libc", + "pango-sys", + "system-deps", +] [[package]] name = "want" @@ -2220,7 +2293,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.37", + "syn", "wasm-bindgen-shared", ] @@ -2254,7 +2327,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.37", + "syn", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -2315,7 +2388,16 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.5", ] [[package]] @@ -2324,13 +2406,29 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +dependencies = [ + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.5", + "windows_x86_64_gnu 0.52.5", + "windows_x86_64_gnullvm 0.52.5", + "windows_x86_64_msvc 0.52.5", ] [[package]] @@ -2339,42 +2437,90 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" + [[package]] name = "windows_aarch64_msvc" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" + [[package]] name = "windows_i686_gnu" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" +[[package]] +name = "windows_i686_gnu" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" + [[package]] name = "windows_i686_msvc" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" +[[package]] +name = "windows_i686_msvc" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" + [[package]] name = "windows_x86_64_gnu" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" + [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" + [[package]] name = "windows_x86_64_msvc" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" + [[package]] name = "winnow" version = "0.5.15" @@ -2386,42 +2532,10 @@ dependencies = [ [[package]] name = "winreg" -version = "0.50.0" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5" dependencies = [ "cfg-if", - "windows-sys", -] - -[[package]] -name = "zoha-vte4" -version = "0.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e09b58dbfab3b62c5544cafadc504db3b7d12f21ac6e55048489dbf90c979caf" -dependencies = [ - "bitflags 1.3.2", - "gdk4", - "gio", - "glib", - "gtk4", - "io-lifetimes", - "libc", - "pango", - "zoha-vte4-sys", -] - -[[package]] -name = "zoha-vte4-sys" -version = "0.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "749df284a2c2e68c2c359762b277854d533a4d50c7a216a3adf45cd5e5ee2993" -dependencies = [ - "gdk4-sys", - "gio-sys", - "glib", - "gtk4-sys", - "libc", - "pango-sys", - "system-deps", + "windows-sys 0.48.0", ] diff --git a/Cargo.toml b/Cargo.toml index 122a1b1..3cc9750 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,25 +11,26 @@ gettext-rs = { version = "0.7.0", features = [ "gettext-system" ] } git2 = "0.18.2" -gtk4 = { version = "0.7.2", features = [ +gtk4 = { version = "0.8.2", features = [ "v4_10", ] } lazy_static = "1.4.0" -libadwaita = { version = "0.5.3", features = [ +libadwaita = { version = "0.6.0", features = [ "v1_4" ] } libmonado-rs = { git = "https://github.com/technobaboo/libmonado-rs", version = "0.1.0" } libusb = "0.3.0" -nix = { version = "0.26.4", features = [ - "fs" +nix = { version = "0.29.0", features = [ + "fs", + "signal" ] } phf = "0.11.2" phf_macros = "0.11.2" -relm4 = { version = "0.7.0-beta.1", features = [ +relm4 = { version = "0.8.1", features = [ "libadwaita" ] } -relm4-components = "0.7.0-alpha.1" -reqwest = { version = "0.11.20", features = [ +relm4-components = "0.8.1" +reqwest = { version = "0.12.4", features = [ "blocking" ] } serde = { version = "1.0.188", features = [ @@ -38,4 +39,4 @@ serde = { version = "1.0.188", features = [ serde_json = "1.0.106" tracker = "0.2.1" uuid = { version = "1.4.1", features = ["v4", "fast-rng"] } -zoha-vte4 = { version = "0.0.2", features = ["v0_72"] } +vte4 = { version = "0.7.1", features = ["v0_72"] } diff --git a/src/cmd_runner.rs b/src/cmd_runner.rs index 2060deb..c6a16da 100644 --- a/src/cmd_runner.rs +++ b/src/cmd_runner.rs @@ -1,8 +1,3 @@ -use crate::{ - file_utils::get_writer, - profile::{Profile, XRServiceType}, - runner::{Runner, RunnerStatus}, -}; use nix::{ sys::signal::{ kill, @@ -10,6 +5,12 @@ use nix::{ }, unistd::Pid, }; + +use crate::{ + file_utils::get_writer, + profile::{Profile, XRServiceType}, + runner::{Runner, RunnerStatus}, +}; use std::{ collections::HashMap, io::{BufRead, BufReader, Write}, diff --git a/src/ui/about_dialog.rs b/src/ui/about_dialog.rs index 0445c93..5a200f7 100644 --- a/src/ui/about_dialog.rs +++ b/src/ui/about_dialog.rs @@ -1,5 +1,5 @@ use crate::constants::{get_developers, APP_ID, APP_NAME, REPO_URL, SINGLE_DEVELOPER, VERSION}; -use relm4::gtk::traits::GtkWindowExt; +use relm4::gtk::prelude::GtkWindowExt; use relm4::prelude::*; use relm4::{ComponentParts, SimpleComponent}; @@ -28,7 +28,7 @@ impl SimpleComponent for AboutDialog { fn init( _init: Self::Init, - root: &Self::Root, + root: Self::Root, _sender: relm4::ComponentSender, ) -> relm4::ComponentParts { let model = AboutDialog {}; diff --git a/src/ui/alert.rs b/src/ui/alert.rs index 108b864..b9930b0 100644 --- a/src/ui/alert.rs +++ b/src/ui/alert.rs @@ -1,5 +1,5 @@ -use gtk::traits::{GtkApplicationExt, GtkWindowExt}; -use relm4::{adw::traits::MessageDialogExt, prelude::*}; +use gtk::prelude::{GtkApplicationExt, GtkWindowExt}; +use relm4::{adw::prelude::MessageDialogExt, prelude::*}; fn alert_base(title: &str, msg: Option<&str>, parent: Option<>k::Window>) -> adw::MessageDialog { let d = adw::MessageDialog::builder() diff --git a/src/ui/app.rs b/src/ui/app.rs index c7e6f2b..6ec89e9 100644 --- a/src/ui/app.rs +++ b/src/ui/app.rs @@ -47,7 +47,7 @@ use crate::xr_devices::XRDevice; use gtk::glib::clone; use gtk::prelude::*; use relm4::actions::{AccelsPlus, ActionGroupName, RelmAction, RelmActionGroup}; -use relm4::adw::traits::MessageDialogExt; +use relm4::adw::prelude::MessageDialogExt; use relm4::adw::ResponseAppearance; use relm4::gtk::glib; use relm4::{new_action_group, new_stateful_action, new_stateless_action, prelude::*}; @@ -743,7 +743,7 @@ impl SimpleComponent for App { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let config = Config::get_config(); @@ -751,7 +751,7 @@ impl SimpleComponent for App { let profiles = config.profiles(); let setcap_confirm_dialog = adw::MessageDialog::builder() .modal(true) - .transient_for(root) + .transient_for(&root) .heading("Set Capabilities") .body(concat!( "We need to set certain capabilities (CAP_SYS_NICE=eip) on the ", @@ -801,17 +801,17 @@ impl SimpleComponent for App { }, ), about_dialog: AboutDialog::builder() - .transient_for(root) + .transient_for(&root) .launch(()) .detach(), build_window: BuildWindow::builder() - .transient_for(root) + .transient_for(&root) .launch(()) .forward(sender.input_sender(), |msg| match msg { BuildWindowOutMsg::CancelBuild => Msg::CancelBuild, }), libsurvive_setup_window: LibsurviveSetupWindow::builder() - .transient_for(root) + .transient_for(&root) .launch(()) .detach(), split_view: None, diff --git a/src/ui/build_window.rs b/src/ui/build_window.rs index 229719c..0499a8c 100644 --- a/src/ui/build_window.rs +++ b/src/ui/build_window.rs @@ -163,7 +163,7 @@ impl SimpleComponent for BuildWindow { fn init( _init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let mut model = Self { diff --git a/src/ui/cmdline_opts.rs b/src/ui/cmdline_opts.rs index 5208b8a..0833b76 100644 --- a/src/ui/cmdline_opts.rs +++ b/src/ui/cmdline_opts.rs @@ -4,7 +4,7 @@ use gtk4::{ prelude::{ApplicationCommandLineExt, ApplicationExt}, Application, ApplicationCommandLine, }, - glib::{self, IsA}, + glib::{self, prelude::IsA}, }; #[derive(Debug, Clone)] diff --git a/src/ui/debug_view.rs b/src/ui/debug_view.rs index 1b49c97..08f64d1 100644 --- a/src/ui/debug_view.rs +++ b/src/ui/debug_view.rs @@ -7,7 +7,7 @@ use gtk::glib::clone; use gtk::prelude::*; use relm4::prelude::*; use relm4::{ComponentSender, SimpleComponent}; -use zoha_vte4::TerminalExt; +use vte4::TerminalExt; #[derive(Debug)] pub enum SearchDirection { @@ -195,7 +195,7 @@ impl SimpleComponent for DebugView { fn init( _init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let log_level_dropdown = gtk::DropDown::from_strings( @@ -240,10 +240,10 @@ impl SimpleComponent for DebugView { sc.add_shortcut(gtk::Shortcut::new( gtk::ShortcutTrigger::parse_string("c"), Some(gtk::CallbackAction::new(move |_, _| { - if let Some(text) = term.text_selected(zoha_vte4::Format::Text) { + if let Some(text) = term.text_selected(vte4::Format::Text) { copy_text(text.as_str()); } - true + gtk::glib::Propagation::Proceed })), )); let term = model.term.term.clone(); @@ -251,7 +251,7 @@ impl SimpleComponent for DebugView { gtk::ShortcutTrigger::parse_string("a"), Some(gtk::CallbackAction::new(move |_, _| { term.select_all(); - true + gtk::glib::Propagation::Proceed })), )); model.term.term.add_controller(sc); diff --git a/src/ui/devices_box.rs b/src/ui/devices_box.rs index e279914..84cc6f9 100644 --- a/src/ui/devices_box.rs +++ b/src/ui/devices_box.rs @@ -182,8 +182,8 @@ impl SimpleComponent for DevicesBox { fn init( _init: Self::Init, - root: &Self::Root, - sender: ComponentSender, + root: Self::Root, + _sender: ComponentSender, ) -> ComponentParts { let devices_listbox = gtk::ListBox::builder() .css_classes(["boxed-list"]) @@ -193,7 +193,9 @@ impl SimpleComponent for DevicesBox { let model = Self { tracker: 0, devices: vec![], - device_rows: AsyncFactoryVecDeque::new(devices_listbox.clone(), sender.input_sender()), + device_rows: AsyncFactoryVecDeque::builder() + .launch(devices_listbox.clone()) + .detach(), }; let widgets = view_output!(); diff --git a/src/ui/factories/device_row_factory.rs b/src/ui/factories/device_row_factory.rs index 89dcb18..c1f89d3 100644 --- a/src/ui/factories/device_row_factory.rs +++ b/src/ui/factories/device_row_factory.rs @@ -82,7 +82,6 @@ impl AsyncFactoryComponent for DeviceRowModel { type Input = (); type Output = (); type CommandOutput = (); - type ParentInput = DevicesBoxMsg; type ParentWidget = gtk::ListBox; view! { @@ -115,7 +114,7 @@ impl AsyncFactoryComponent for DeviceRowModel { fn init_widgets( &mut self, _index: &DynamicIndex, - root: &Self::Root, + root: Self::Root, _returned_widget: &::ReturnedWidget, _sender: AsyncFactorySender, ) -> Self::Widgets { diff --git a/src/ui/factories/env_var_row_factory.rs b/src/ui/factories/env_var_row_factory.rs index b3fb4dd..546070b 100644 --- a/src/ui/factories/env_var_row_factory.rs +++ b/src/ui/factories/env_var_row_factory.rs @@ -1,24 +1,15 @@ -use crate::ui::profile_editor::ProfileEditorMsg; use adw::prelude::*; use relm4::{factory::AsyncFactoryComponent, prelude::*, AsyncFactorySender}; -#[derive(Debug, Clone, Copy)] -pub enum VarType { - EnvVar, - XrServiceCmakeFlags, -} - #[derive(Debug)] pub struct EnvVarModel { pub name: String, value: String, - var_type: VarType, } pub struct EnvVarModelInit { pub name: String, pub value: String, - pub var_type: VarType, } #[derive(Debug)] @@ -29,8 +20,8 @@ pub enum EnvVarModelMsg { #[derive(Debug)] pub enum EnvVarModelOutMsg { - Changed(VarType, String, String), - Delete(VarType, String), + Changed(String, String), + Delete(String), } #[relm4::factory(async pub)] @@ -39,7 +30,6 @@ impl AsyncFactoryComponent for EnvVarModel { type Input = EnvVarModelMsg; type Output = EnvVarModelOutMsg; type CommandOutput = (); - type ParentInput = ProfileEditorMsg; type ParentWidget = adw::PreferencesGroup; view! { @@ -66,33 +56,16 @@ impl AsyncFactoryComponent for EnvVarModel { match message { Self::Input::Changed(val) => { self.value = val.clone(); - sender.output_sender().emit(Self::Output::Changed( - self.var_type, - self.name.clone(), - val, - )); + sender + .output_sender() + .emit(Self::Output::Changed(self.name.clone(), val)); } Self::Input::Delete => { - sender.output(Self::Output::Delete(self.var_type, self.name.clone())); + sender.output(Self::Output::Delete(self.name.clone())); } } } - fn forward_to_parent(output: Self::Output) -> Option { - Some(match output { - Self::Output::Changed(var_type, name, value) => match var_type { - VarType::EnvVar => ProfileEditorMsg::EnvVarChanged(name, value), - VarType::XrServiceCmakeFlags => { - ProfileEditorMsg::XrServiceCmakeFlagsChanged(name, value) - } - }, - Self::Output::Delete(var_type, name) => match var_type { - VarType::EnvVar => ProfileEditorMsg::EnvVarDelete(name), - VarType::XrServiceCmakeFlags => ProfileEditorMsg::XrServiceCmakeFlagsDelete(name), - }, - }) - } - async fn init_model( init: Self::Init, _index: &DynamicIndex, @@ -101,7 +74,6 @@ impl AsyncFactoryComponent for EnvVarModel { Self { name: init.name, value: init.value, - var_type: init.var_type, } } } diff --git a/src/ui/factories/tracker_role_group_factory.rs b/src/ui/factories/tracker_role_group_factory.rs index 2edf607..9df2471 100644 --- a/src/ui/factories/tracker_role_group_factory.rs +++ b/src/ui/factories/tracker_role_group_factory.rs @@ -36,7 +36,6 @@ impl AsyncFactoryComponent for TrackerRoleModel { type Input = TrackerRoleModelMsg; type Output = TrackerRoleModelOutMsg; type CommandOutput = (); - type ParentInput = FbtConfigEditorMsg; type ParentWidget = adw::PreferencesPage; view! { @@ -82,22 +81,15 @@ impl AsyncFactoryComponent for TrackerRoleModel { } } - fn forward_to_parent(output: Self::Output) -> Option { - Some(match output { - Self::Output::Changed(index, tracker_role) => { - Self::ParentInput::TrackerRoleChanged(index, tracker_role.clone()) - } - Self::Output::Delete(index) => Self::ParentInput::TrackerRoleDeleted(index), - }) - } - async fn update(&mut self, message: Self::Input, sender: AsyncFactorySender) { match message { Self::Input::Changed(r) => { self.tracker_role = r; sender.output(Self::Output::Changed(self.index, self.tracker_role.clone())); } - Self::Input::Delete => sender.output(Self::Output::Delete(self.index)), + Self::Input::Delete => { + sender.output(Self::Output::Delete(self.index)); + } } } diff --git a/src/ui/factories/wivrn_encoder_group_factory.rs b/src/ui/factories/wivrn_encoder_group_factory.rs index d995ec9..3a4d527 100644 --- a/src/ui/factories/wivrn_encoder_group_factory.rs +++ b/src/ui/factories/wivrn_encoder_group_factory.rs @@ -1,15 +1,8 @@ use crate::{ file_builders::wivrn_config::{Codec, Encoder, WivrnConfEncoder}, - ui::{ - preference_rows::{combo_row, number_entry_row, spin_row}, - util::{bits_from_mbits, bits_to_mbits}, - wivrn_conf_editor::WivrnConfEditorMsg, - }, -}; -use relm4::{ - adw::prelude::*, factory::AsyncFactoryComponent, gtk::prelude::*, prelude::*, - AsyncFactorySender, + ui::preference_rows::{combo_row, spin_row}, }; +use relm4::{adw::prelude::*, factory::AsyncFactoryComponent, prelude::*, AsyncFactorySender}; use uuid::Uuid; #[derive(Debug)] @@ -46,7 +39,6 @@ impl AsyncFactoryComponent for WivrnEncoderModel { type Input = WivrnEncoderModelMsg; type Output = WivrnEncoderModelOutMsg; type CommandOutput = (); - type ParentInput = WivrnConfEditorMsg; type ParentWidget = adw::PreferencesPage; view! { @@ -190,16 +182,12 @@ impl AsyncFactoryComponent for WivrnEncoderModel { Self::Input::GroupChanged(val) => { self.encoder_conf.group = val; } - Self::Input::Delete => sender.output(Self::Output::Delete(self.uid.clone())), + Self::Input::Delete => { + sender.output(Self::Output::Delete(self.uid.clone())); + } } } - fn forward_to_parent(output: Self::Output) -> Option { - Some(match output { - Self::Output::Delete(id) => Self::ParentInput::DeleteEncoder(id), - }) - } - async fn init_model( init: Self::Init, _index: &DynamicIndex, diff --git a/src/ui/fbt_config_editor.rs b/src/ui/fbt_config_editor.rs index 70abbe8..1ea6ebd 100644 --- a/src/ui/fbt_config_editor.rs +++ b/src/ui/fbt_config_editor.rs @@ -1,4 +1,4 @@ -use super::factories::tracker_role_group_factory::TrackerRoleModel; +use super::factories::tracker_role_group_factory::{TrackerRoleModel, TrackerRoleModelOutMsg}; use crate::{ file_builders::monado_config_v0::{ dump_monado_config_v0, get_monado_config_v0, MonadoConfigV0, TrackerRole, @@ -101,7 +101,7 @@ impl SimpleComponent for FbtConfigEditor { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let page = adw::PreferencesPage::builder().build(); @@ -124,7 +124,15 @@ impl SimpleComponent for FbtConfigEditor { win: None, tracker: 0, monado_config_v0: get_monado_config_v0(), - tracker_role_groups: AsyncFactoryVecDeque::new(page, sender.input_sender()), + tracker_role_groups: AsyncFactoryVecDeque::builder().launch(page).forward( + sender.input_sender(), + |msg| match msg { + TrackerRoleModelOutMsg::Changed(index, tracker_role) => { + Self::Input::TrackerRoleChanged(index, tracker_role.clone()) + } + TrackerRoleModelOutMsg::Delete(index) => Self::Input::TrackerRoleDeleted(index), + }, + ), }; model.populate_tracker_roles(); @@ -141,7 +149,7 @@ impl SimpleComponent for FbtConfigEditor { gtk::ShortcutTrigger::parse_string("Escape"), Some(gtk::CallbackAction::new(move |_, _| { win.close(); - true + gtk::glib::Propagation::Proceed })), )); widgets.win.add_controller(sc); diff --git a/src/ui/install_wivrn_box.rs b/src/ui/install_wivrn_box.rs index 5fde31a..e88556e 100644 --- a/src/ui/install_wivrn_box.rs +++ b/src/ui/install_wivrn_box.rs @@ -196,7 +196,7 @@ impl SimpleComponent for InstallWivrnBox { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let model = Self { diff --git a/src/ui/libsurvive_setup_window.rs b/src/ui/libsurvive_setup_window.rs index c4ff1c8..bf4d282 100644 --- a/src/ui/libsurvive_setup_window.rs +++ b/src/ui/libsurvive_setup_window.rs @@ -480,7 +480,7 @@ impl SimpleComponent for LibsurviveSetupWindow { fn init( _init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: relm4::ComponentSender, ) -> relm4::ComponentParts { let json_filter = gtk::FileFilter::new(); diff --git a/src/ui/main_view.rs b/src/ui/main_view.rs index 20d2466..ae34ea8 100644 --- a/src/ui/main_view.rs +++ b/src/ui/main_view.rs @@ -22,8 +22,7 @@ use crate::ui::steamvr_calibration_box::SteamVrCalibrationBoxMsg; use crate::ui::util::{copy_text, limit_dropdown_width, warning_heading}; use crate::xr_devices::XRDevice; use gtk::prelude::*; -use relm4::adw::traits::MessageDialogExt; -use relm4::adw::ResponseAppearance; +use relm4::adw::{prelude::MessageDialogExt, ResponseAppearance}; use relm4::prelude::*; use relm4::{ComponentParts, ComponentSender, SimpleComponent}; @@ -622,7 +621,7 @@ impl SimpleComponent for MainView { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let profile_not_editable_dialog = adw::MessageDialog::builder() diff --git a/src/ui/profile_editor.rs b/src/ui/profile_editor.rs index d83cccf..6a5d888 100644 --- a/src/ui/profile_editor.rs +++ b/src/ui/profile_editor.rs @@ -1,11 +1,14 @@ use super::{ alert::alert, - factories::env_var_row_factory::{EnvVarModel, EnvVarModelInit, VarType}, + factories::env_var_row_factory::{EnvVarModel, EnvVarModelInit}, }; use crate::{ env_var_descriptions::env_var_descriptions_as_paragraph, profile::{LighthouseDriver, Profile, XRServiceType}, - ui::preference_rows::{combo_row, entry_row, path_row, switch_row}, + ui::{ + factories::env_var_row_factory::EnvVarModelOutMsg, + preference_rows::{combo_row, entry_row, path_row, switch_row}, + }, }; use adw::prelude::*; use gtk::glib::clone; @@ -415,11 +418,9 @@ impl SimpleComponent for ProfileEditor { (var, "".to_string()) }; prof.environment.insert(name.clone(), value.clone()); - self.env_rows.guard().push_back(EnvVarModelInit { - name, - value, - var_type: VarType::EnvVar, - }); + self.env_rows + .guard() + .push_back(EnvVarModelInit { name, value }); } } Self::Input::AddXrServiceCmakeFlag(name) => { @@ -432,7 +433,6 @@ impl SimpleComponent for ProfileEditor { .push_back(EnvVarModelInit { name, value: "".to_string(), - var_type: VarType::XrServiceCmakeFlags, }); } } @@ -441,7 +441,7 @@ impl SimpleComponent for ProfileEditor { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let (add_env_var_btn, add_cmake_flag_btn) = { @@ -499,21 +499,35 @@ impl SimpleComponent for ProfileEditor { let mut model = Self { profile, win: None, - env_rows: AsyncFactoryVecDeque::new( - adw::PreferencesGroup::builder() - .title("Environment Variables") - .description(env_var_descriptions_as_paragraph()) - .header_suffix(&add_env_var_btn) - .build(), - sender.input_sender(), - ), - xrservice_cmake_flags_rows: AsyncFactoryVecDeque::new( - adw::PreferencesGroup::builder() - .title("XR Service CMake Flags") - .header_suffix(&add_cmake_flag_btn) - .build(), - sender.input_sender(), - ), + env_rows: AsyncFactoryVecDeque::builder() + .launch( + adw::PreferencesGroup::builder() + .title("Environment Variables") + .description(env_var_descriptions_as_paragraph()) + .header_suffix(&add_env_var_btn) + .build(), + ) + .forward(sender.input_sender(), |msg| match msg { + EnvVarModelOutMsg::Changed(name, value) => { + ProfileEditorMsg::EnvVarChanged(name, value) + } + EnvVarModelOutMsg::Delete(name) => ProfileEditorMsg::EnvVarDelete(name), + }), + xrservice_cmake_flags_rows: AsyncFactoryVecDeque::builder() + .launch( + adw::PreferencesGroup::builder() + .title("XR Service CMake Flags") + .header_suffix(&add_cmake_flag_btn) + .build(), + ) + .forward(sender.input_sender(), |msg| match msg { + EnvVarModelOutMsg::Changed(name, value) => { + ProfileEditorMsg::XrServiceCmakeFlagsChanged(name, value) + } + EnvVarModelOutMsg::Delete(name) => { + ProfileEditorMsg::XrServiceCmakeFlagsDelete(name) + } + }), tracker: 0, }; { @@ -523,7 +537,6 @@ impl SimpleComponent for ProfileEditor { guard.push_back(EnvVarModelInit { name: k.clone(), value: v.clone(), - var_type: VarType::EnvVar, }); } } @@ -534,7 +547,6 @@ impl SimpleComponent for ProfileEditor { guard.push_back(EnvVarModelInit { name: k.clone(), value: v.clone(), - var_type: VarType::XrServiceCmakeFlags, }); } } diff --git a/src/ui/steam_launch_options_box.rs b/src/ui/steam_launch_options_box.rs index 848a733..b28044b 100644 --- a/src/ui/steam_launch_options_box.rs +++ b/src/ui/steam_launch_options_box.rs @@ -108,7 +108,7 @@ impl SimpleComponent for SteamLaunchOptionsBox { fn init( _init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let model = Self { diff --git a/src/ui/steamvr_calibration_box.rs b/src/ui/steamvr_calibration_box.rs index 90467a0..807af36 100644 --- a/src/ui/steamvr_calibration_box.rs +++ b/src/ui/steamvr_calibration_box.rs @@ -211,7 +211,7 @@ impl SimpleComponent for SteamVrCalibrationBox { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let model = Self { diff --git a/src/ui/term_widget.rs b/src/ui/term_widget.rs index adaf2a2..25791d4 100644 --- a/src/ui/term_widget.rs +++ b/src/ui/term_widget.rs @@ -1,6 +1,6 @@ use gtk4::gdk; use relm4::adw; -use zoha_vte4::{Terminal, TerminalExt}; +use vte4::{Terminal, TerminalExt}; const MAX_SCROLLBACK: u32 = 2000; @@ -51,7 +51,7 @@ impl TermWidget { pub fn set_search_term(&self, term: Option<&str>) { self.term.search_set_regex( - term.map(|txt| zoha_vte4::Regex::for_search(txt, 0).ok()) + term.map(|txt| vte4::Regex::for_search(txt, 0).ok()) .flatten() .as_ref(), 0, diff --git a/src/ui/wivrn_conf_editor.rs b/src/ui/wivrn_conf_editor.rs index cbb76b3..27229e0 100644 --- a/src/ui/wivrn_conf_editor.rs +++ b/src/ui/wivrn_conf_editor.rs @@ -1,5 +1,7 @@ use super::{ - factories::wivrn_encoder_group_factory::{WivrnEncoderModel, WivrnEncoderModelInit}, + factories::wivrn_encoder_group_factory::{ + WivrnEncoderModel, WivrnEncoderModelInit, WivrnEncoderModelOutMsg, + }, util::bits_from_mbits, }; use crate::{ @@ -121,10 +123,7 @@ impl SimpleComponent for WivrnConfEditor { }) .unwrap_or_default(), false, - { - let sender = sender.clone(); - move |_| {} - } + move |_| {} ) -> adw::EntryRow, }, add: encodersrgp = &adw::PreferencesGroup { @@ -207,7 +206,7 @@ impl SimpleComponent for WivrnConfEditor { fn init( init: Self::Init, - root: &Self::Root, + root: Self::Root, sender: ComponentSender, ) -> ComponentParts { let mut model = Self { @@ -227,7 +226,11 @@ impl SimpleComponent for WivrnConfEditor { model.bitrate_row = Some(widgets.bitrate_row.clone()); let mut encoder_models: AsyncFactoryVecDeque = - AsyncFactoryVecDeque::new(widgets.pref_page.clone(), sender.input_sender()); + AsyncFactoryVecDeque::builder() + .launch(widgets.pref_page.clone()) + .forward(sender.input_sender(), |msg| match msg { + WivrnEncoderModelOutMsg::Delete(id) => WivrnConfEditorMsg::DeleteEncoder(id), + }); for encoder_conf in model.conf.encoders.clone() { encoder_models.guard().push_back(WivrnEncoderModelInit { encoder_conf: Some(encoder_conf),