diff --git a/Cargo.lock b/Cargo.lock index d8a6572..5668e8e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -154,7 +154,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" dependencies = [ "android-properties", - "bitflags 2.9.3", + "bitflags 2.9.4", "cc", "cesu8", "jni", @@ -174,12 +174,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - [[package]] name = "android_system_properties" version = "0.1.5" @@ -241,9 +235,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "apply" @@ -295,41 +289,42 @@ dependencies = [ [[package]] name = "ashpd" -version = "0.8.1" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd884d7c72877a94102c3715f3b1cd09ff4fac28221add3e57cfbe25c236d093" +checksum = "6cbdf310d77fd3aaee6ea2093db7011dc2d35d2eb3481e5607f1f8d942ed99df" dependencies = [ - "async-fs", - "async-net", "enumflags2", "futures-channel", "futures-util", - "rand 0.8.5", + "rand 0.9.2", + "raw-window-handle", "serde", "serde_repr", + "tokio", "url", - "zbus 4.4.0", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "zbus 5.11.0", ] [[package]] name = "ashpd" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cbdf310d77fd3aaee6ea2093db7011dc2d35d2eb3481e5607f1f8d942ed99df" +checksum = "da0986d5b4f0802160191ad75f8d33ada000558757db3defb70299ca95d9fcbd" dependencies = [ + "async-fs", + "async-net", "enumflags2", "futures-channel", "futures-util", "rand 0.9.2", - "raw-window-handle", "serde", "serde_repr", "tokio", "url", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "zbus 5.10.0", + "zbus 5.11.0", ] [[package]] @@ -382,9 +377,9 @@ dependencies = [ [[package]] name = "async-fs" -version = "2.1.3" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f7e37c0ed80b2a977691c47dae8625cfb21e205827106c64f7c588766b2e50" +checksum = "8034a681df4aed8b8edbd7fbe472401ecf009251c8b40556b304567052e294c5" dependencies = [ "async-lock 3.4.1", "blocking", @@ -413,20 +408,20 @@ dependencies = [ [[package]] name = "async-io" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19634d6336019ef220f09fd31168ce5c184b295cbf80345437cc36094ef223ca" +checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc" dependencies = [ - "async-lock 3.4.1", + "autocfg", "cfg-if", "concurrent-queue", "futures-io", "futures-lite 2.6.1", "parking", - "polling 3.10.0", - "rustix 1.0.8", + "polling 3.11.0", + "rustix 1.1.2", "slab", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -455,7 +450,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7" dependencies = [ - "async-io 2.5.0", + "async-io 2.6.0", "blocking", "futures-lite 2.6.1", ] @@ -479,12 +474,12 @@ dependencies = [ [[package]] name = "async-process" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65daa13722ad51e6ab1a1b9c01299142bc75135b337923cfa10e79bbbd669f00" +checksum = "fc50921ec0055cdd8a16de48773bfeec5c972598674347252c0399676be7da75" dependencies = [ "async-channel", - "async-io 2.5.0", + "async-io 2.6.0", "async-lock 3.4.1", "async-signal", "async-task", @@ -492,7 +487,7 @@ dependencies = [ "cfg-if", "event-listener 5.4.1", "futures-lite 2.6.1", - "rustix 1.0.8", + "rustix 1.1.2", ] [[package]] @@ -508,20 +503,20 @@ dependencies = [ [[package]] name = "async-signal" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f567af260ef69e1d52c2b560ce0ea230763e6fbb9214a85d768760a920e3e3c1" +checksum = "43c070bbf59cd3570b6b2dd54cd772527c7c3620fce8be898406dd3ed6adc64c" dependencies = [ - "async-io 2.5.0", + "async-io 2.6.0", "async-lock 3.4.1", "atomic-waker", "cfg-if", "futures-core", "futures-io", - "rustix 1.0.8", + "rustix 1.1.2", "signal-hook-registry", "slab", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -682,9 +677,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.3" +version = "2.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34efbcccd345379ca2868b2b2c9d3782e9cc58ba87bc7d79d5b53d9c9ae6f25d" +checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" dependencies = [ "serde", ] @@ -791,32 +786,58 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "log", - "polling 3.10.0", + "polling 3.11.0", "rustix 0.38.44", "slab", "thiserror 1.0.69", ] +[[package]] +name = "calloop" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb9f6e1368bd4621d2c86baa7e37de77a938adf5221e5dd3d6133340101b309e" +dependencies = [ + "bitflags 2.9.4", + "polling 3.11.0", + "rustix 1.1.2", + "slab", + "tracing", +] + [[package]] name = "calloop-wayland-source" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20" dependencies = [ - "calloop", + "calloop 0.13.0", "rustix 0.38.44", "wayland-backend", "wayland-client", ] +[[package]] +name = "calloop-wayland-source" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138efcf0940a02ebf0cc8d1eff41a1682a46b431630f4c52450d6265876021fa" +dependencies = [ + "calloop 0.14.3", + "rustix 1.1.2", + "wayland-backend", + "wayland-client", +] + [[package]] name = "cc" -version = "1.2.34" +version = "1.2.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42bc4aea80032b7bf409b0bc7ccad88853858911b7713a8062fdc0623867bedc" +checksum = "80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9" dependencies = [ + "find-msvc-tools", "jobserver", "libc", "shlex", @@ -848,24 +869,23 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.41" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" dependencies = [ - "android-tzdata", "iana-time-zone", "js-sys", "num-traits", "serde", "wasm-bindgen", - "windows-link", + "windows-link 0.2.0", ] [[package]] name = "clap" -version = "4.5.46" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c5e4fcf9c21d2e544ca1ee9d8552de13019a42aa7dbf32747fa7aaf1df76e57" +checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" dependencies = [ "clap_builder", "clap_derive", @@ -873,21 +893,21 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.46" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fecb53a0e6fcfb055f686001bc2e2592fa527efaf38dbe81a6a9563562e57d41" +checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" dependencies = [ "anstream", "anstyle", "clap_lex", - "strsim 0.11.1", + "strsim", ] [[package]] name = "clap_derive" -version = "4.5.45" +version = "4.5.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cb31bb0a7d536caef2639baa7fad459e15c3144efefa6dbd1c84562c4739f6" +checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -1093,11 +1113,12 @@ dependencies = [ [[package]] name = "cosmic-client-toolkit" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-protocols?rev=178eb0b#178eb0b14a0e5c192f64f6dee6c40341a8e5ee51" +source = "git+https://github.com/pop-os/cosmic-protocols?rev=6254f50#6254f50abc6dbfccadc6939f80e20081ab5f9d51" dependencies = [ + "bitflags 2.9.4", "cosmic-protocols", "libc", - "smithay-client-toolkit", + "smithay-client-toolkit 0.20.0", "wayland-client", "wayland-protocols", ] @@ -1105,7 +1126,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1115,19 +1136,18 @@ dependencies = [ "iced_futures", "known-folders", "notify", - "once_cell", - "ron 0.9.0", + "ron 0.11.0", "serde", "tokio", "tracing", - "xdg", - "zbus 5.10.0", + "xdg 3.0.0", + "zbus 5.11.0", ] [[package]] name = "cosmic-config-derive" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "quote", "syn 2.0.106", @@ -1153,11 +1173,12 @@ dependencies = [ name = "cosmic-ext-tweaks" version = "0.1.3" dependencies = [ - "ashpd 0.8.1", + "ashpd 0.12.0", "chrono", "cosmic-ext-config-templates", "cosmic-panel-config", - "dirs 5.0.1", + "cosmic-settings-config", + "dirs 6.0.0", "env_logger 0.11.8", "i18n-embed", "i18n-embed-fl", @@ -1166,7 +1187,7 @@ dependencies = [ "open", "pretty_env_logger", "reqwest", - "ron 0.8.1", + "ron 0.11.0", "rust-embed", "serde", "thiserror 2.0.16", @@ -1181,22 +1202,21 @@ source = "git+https://github.com/pop-os/freedesktop-icons#8a05c322c482ff3c69cf34 dependencies = [ "dirs 5.0.1", "ini_core", - "memmap2 0.9.8", + "memmap2", "thiserror 2.0.16", "tracing", - "xdg", + "xdg 2.5.2", ] [[package]] name = "cosmic-panel-config" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-panel#efbc15c4c3c189d051c57f273162a5fc88a0e99a" +source = "git+https://github.com/pop-os/cosmic-panel#1afc1e85b9119baea9a9e8a47deadfdfb8b3677f" dependencies = [ "anyhow", "cosmic-config", - "ron 0.8.1", "serde", - "smithay-client-toolkit", + "smithay-client-toolkit 0.20.0", "tracing", "wayland-protocols-wlr", "xdg-shell-wrapper-config", @@ -1205,9 +1225,9 @@ dependencies = [ [[package]] name = "cosmic-protocols" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-protocols?rev=178eb0b#178eb0b14a0e5c192f64f6dee6c40341a8e5ee51" +source = "git+https://github.com/pop-os/cosmic-protocols?rev=6254f50#6254f50abc6dbfccadc6939f80e20081ab5f9d51" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "wayland-backend", "wayland-client", "wayland-protocols", @@ -1216,30 +1236,43 @@ dependencies = [ "wayland-server", ] +[[package]] +name = "cosmic-settings-config" +version = "0.1.0" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#99a6adccd97e44b3968db9d194028b27cdcff0cd" +dependencies = [ + "cosmic-config", + "ron 0.11.0", + "serde", + "serde_with", + "tracing", + "xkbcommon 0.9.0", +] + [[package]] name = "cosmic-settings-daemon" version = "0.1.0" source = "git+https://github.com/pop-os/dbus-settings-bindings#3b86984332be2c930a3536ab714b843c851fa8ca" dependencies = [ - "zbus 5.10.0", + "zbus 5.11.0", ] [[package]] name = "cosmic-text" version = "0.14.2" -source = "git+https://github.com/pop-os/cosmic-text.git#f7033bb0433f6a9ba109007027781ba46ea9ba27" +source = "git+https://github.com/pop-os/cosmic-text.git#355b7febb17ecb0522346fcc5aff6ea78e33e78a" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "fontdb 0.23.0", + "harfrust", "log", "rangemap", "rustc-hash 1.1.0", - "rustybuzz", - "self_cell 1.2.0", + "self_cell", + "skrifa 0.36.0", "smol_str", "swash", "sys-locale", - "ttf-parser 0.21.1", "unicode-bidi", "unicode-linebreak", "unicode-script", @@ -1249,15 +1282,14 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "almost", "cosmic-config", "csscolorparser", "dirs 6.0.0", - "lazy_static", "palette", - "ron 0.9.0", + "ron 0.11.0", "serde", "serde_json", "thiserror 2.0.16", @@ -1337,7 +1369,7 @@ version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bdbd1f579714e3c809ebd822c81ef148b1ceaeb3d535352afc73fd0c4c6a0017" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "libloading", "winapi", ] @@ -1348,8 +1380,18 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +dependencies = [ + "darling_core 0.21.3", + "darling_macro 0.21.3", ] [[package]] @@ -1362,7 +1404,21 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim 0.11.1", + "strsim", + "syn 2.0.106", +] + +[[package]] +name = "darling_core" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", "syn 2.0.106", ] @@ -1372,22 +1428,20 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", "quote", "syn 2.0.106", ] [[package]] -name = "dashmap" -version = "5.5.3" +name = "darling_macro" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core 0.9.11", + "darling_core 0.21.3", + "quote", + "syn 2.0.106", ] [[package]] @@ -1396,6 +1450,16 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be1e0bca6c3637f992fc1cc7cbc52a78c1ef6db076dbf1059c4323d6a2048376" +[[package]] +name = "deranged" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d630bccd429a5bb5a64b5e94f693bfc48c9f8566418fda4c494cc94f911f87cc" +dependencies = [ + "powerfmt", + "serde", +] + [[package]] name = "derivative" version = "2.2.0" @@ -1413,7 +1477,7 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae5c625eda104c228c06ecaf988d1c60e542176bd7a490e60eeda3493244c0c9" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", "syn 2.0.106", @@ -1479,7 +1543,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -1494,7 +1558,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.6.1", "libc", "objc2 0.6.2", @@ -1525,10 +1589,10 @@ name = "dnd" version = "0.1.0" source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "mime 0.1.0", "raw-window-handle", - "smithay-client-toolkit", + "smithay-client-toolkit 0.19.2", "smithay-clipboard", ] @@ -1550,7 +1614,7 @@ checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "dpi" version = "0.1.1" -source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13#1cc02bdab141072eaabad639d74b032fd0fcc62e" +source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13#dbe91fcc363c101f1d6ed5301d49911b01a26f61" [[package]] name = "drm" @@ -1558,7 +1622,7 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "bytemuck", "drm-ffi", "drm-fourcc", @@ -1591,6 +1655,12 @@ dependencies = [ "linux-raw-sys 0.6.5", ] +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + [[package]] name = "encoding_rs" version = "0.8.35" @@ -1671,12 +1741,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -1781,6 +1851,12 @@ dependencies = [ "toml", ] +[[package]] +name = "find-msvc-tools" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959" + [[package]] name = "flate2" version = "1.1.2" @@ -1805,9 +1881,9 @@ checksum = "8bf7cc16383c4b8d58b9905a8509f02926ce3058053c056376248d958c9df1e8" [[package]] name = "fluent" -version = "0.16.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb74634707bebd0ce645a981148e8fb8c7bccd4c33c652aeffd28bf2f96d555a" +checksum = "8137a6d5a2c50d6b0ebfcb9aaa91a28154e0a70605f112d30cb0cd4a78670477" dependencies = [ "fluent-bundle", "unic-langid", @@ -1815,16 +1891,16 @@ dependencies = [ [[package]] name = "fluent-bundle" -version = "0.15.3" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe0a21ee80050c678013f82edf4b705fe2f26f1f9877593d13198612503f493" +checksum = "01203cb8918f5711e73891b347816d932046f95f54207710bda99beaeb423bf4" dependencies = [ "fluent-langneg", "fluent-syntax", "intl-memoizer", "intl_pluralrules", - "rustc-hash 1.1.0", - "self_cell 0.10.3", + "rustc-hash 2.1.1", + "self_cell", "smallvec", "unic-langid", ] @@ -1840,11 +1916,12 @@ dependencies = [ [[package]] name = "fluent-syntax" -version = "0.11.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a530c4694a6a8d528794ee9bbd8ba0122e779629ac908d15ad5a7ae7763a33d" +checksum = "54f0d287c53ffd184d04d8677f590f4ac5379785529e5e08b1c8083acdd5c198" dependencies = [ - "thiserror 1.0.69", + "memchr", + "thiserror 2.0.16", ] [[package]] @@ -1885,7 +1962,7 @@ checksum = "e32eac81c1135c1df01d4e6d4233c47ba11f6a6d07f33e0bba09d18797077770" dependencies = [ "fontconfig-parser", "log", - "memmap2 0.9.8", + "memmap2", "slotmap", "tinyvec", "ttf-parser 0.21.1", @@ -1899,7 +1976,7 @@ checksum = "457e789b3d1202543297a350643cf459f836cade38934e7a4cf6a39e7cde2905" dependencies = [ "fontconfig-parser", "log", - "memmap2 0.9.8", + "memmap2", "slotmap", "tinyvec", "ttf-parser 0.25.1", @@ -2099,7 +2176,7 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc257fdb4038301ce4b9cd1b3b51704509692bb3ff716a410cbd07925d9dae55" dependencies = [ - "rustix 1.0.8", + "rustix 1.1.2", "windows-targets 0.52.6", ] @@ -2123,7 +2200,7 @@ dependencies = [ "cfg-if", "libc", "r-efi", - "wasi 0.14.3+wasi-0.2.4", + "wasi 0.14.7+wasi-0.2.4", ] [[package]] @@ -2186,7 +2263,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "gpu-alloc-types", ] @@ -2196,7 +2273,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", ] [[package]] @@ -2218,7 +2295,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b89c83349105e3732062a895becfc71a8f921bb71ecbbdd8ff99263e3b53a0ca" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "gpu-descriptor-types", "hashbrown 0.15.5", ] @@ -2229,7 +2306,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", ] [[package]] @@ -2260,7 +2337,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap", + "indexmap 2.11.4", "slab", "tokio", "tokio-util", @@ -2277,11 +2354,24 @@ dependencies = [ "crunchy", ] +[[package]] +name = "harfrust" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75a4c970f1a00edc1626f1e3cc039492b15b73df28b9fff70f95404a571b4fae" +dependencies = [ + "bitflags 2.9.4", + "bytemuck", + "core_maths", + "read-fonts 0.34.0", + "smallvec", +] + [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" @@ -2292,13 +2382,19 @@ dependencies = [ "foldhash", ] +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" + [[package]] name = "hassle-rs" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "com", "libc", "libloading", @@ -2385,9 +2481,9 @@ checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" [[package]] name = "humantime" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f" +checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "hyper" @@ -2445,9 +2541,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e" +checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8" dependencies = [ "base64 0.22.1", "bytes", @@ -2485,9 +2581,9 @@ dependencies = [ [[package]] name = "i18n-embed" -version = "0.14.1" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94205d95764f5bb9db9ea98fa77f89653365ca748e27161f5bbea2ffd50e459c" +checksum = "a217bbb075dcaefb292efa78897fc0678245ca67f265d12c351e42268fcb0305" dependencies = [ "arc-swap", "fluent", @@ -2495,11 +2591,10 @@ dependencies = [ "fluent-syntax", "i18n-embed-impl", "intl-memoizer", - "lazy_static", - "locale_config", "log", "parking_lot 0.12.4", "rust-embed", + "sys-locale", "thiserror 1.0.69", "unic-langid", "walkdir", @@ -2507,21 +2602,19 @@ dependencies = [ [[package]] name = "i18n-embed-fl" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8241a781f49e923415e106fcd1f89c3fab92cc9f699a521c56e95dee273903d3" +checksum = "e598ed73b67db92f61e04672e599eef2991a262a40e1666735b8a86d2e7e9f30" dependencies = [ - "dashmap", "find-crate", "fluent", "fluent-syntax", "i18n-config", "i18n-embed", - "lazy_static", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", - "strsim 0.10.0", + "strsim", "syn 2.0.106", "unic-langid", ] @@ -2541,9 +2634,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.63" +version = "0.1.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -2551,7 +2644,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.61.2", + "windows-core 0.62.0", ] [[package]] @@ -2566,7 +2659,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "dnd", "iced_accessibility", @@ -2584,7 +2677,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "accesskit", "accesskit_winit", @@ -2593,9 +2686,9 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "bytes", "dnd", "glam", @@ -2616,7 +2709,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "futures", "iced_core", @@ -2642,9 +2735,9 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "bytemuck", "cosmic-text", "half", @@ -2664,7 +2757,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -2676,7 +2769,7 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "bytes", "dnd", @@ -2690,7 +2783,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "bytemuck", "cosmic-text", @@ -2706,10 +2799,10 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "as-raw-xcb-connection", - "bitflags 2.9.3", + "bitflags 2.9.4", "bytemuck", "cosmic-client-toolkit", "futures", @@ -2737,7 +2830,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "dnd", "iced_renderer", @@ -2755,7 +2848,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "dnd", "iced_futures", @@ -2889,14 +2982,15 @@ dependencies = [ [[package]] name = "image" -version = "0.25.6" +version = "0.25.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db35664ce6b9810857a38a906215e75a9c879f0696556a39f59c62829710251a" +checksum = "529feb3e6769d234375c4cf1ee2ce713682b8e76538cb13f9fc23e1400a591e7" dependencies = [ "bytemuck", "byteorder-lite", + "moxcms", "num-traits", - "png", + "png 0.18.0", "zune-core", "zune-jpeg", ] @@ -2909,21 +3003,34 @@ checksum = "029d73f573d8e8d63e6d5020011d3255b28c3ba85d6cf870a07184ed23de9284" [[package]] name = "immutable-chunkmap" -version = "2.1.0" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2194c61e2a29841937e84ec2264a905985c397ccccfbd4783191d3285fa92ef" +checksum = "9a3e98b1520e49e252237edc238a39869da9f3241f2ec19dc788c1d24694d1e4" dependencies = [ "arrayvec", ] [[package]] name = "indexmap" -version = "2.11.0" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" +checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", + "serde", + "serde_core", ] [[package]] @@ -2941,7 +3048,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "inotify-sys", "libc", ] @@ -3000,7 +3107,7 @@ version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "cfg-if", "libc", ] @@ -3127,9 +3234,9 @@ checksum = "00810f1d8b74be64b13dbf3db89ac67740615d6c891f0e7b6179326533011a07" [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "852f13bec5eba4ba9afbeb93fd7c13fe56147f055939ae21c43a29a0ecb2702e" dependencies = [ "once_cell", "wasm-bindgen", @@ -3211,12 +3318,6 @@ dependencies = [ "smallvec", ] -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" - [[package]] name = "libc" version = "0.2.175" @@ -3226,10 +3327,10 @@ checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" [[package]] name = "libcosmic" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#364c0b938183af799739abd3e870be15601ca727" +source = "git+https://github.com/pop-os/libcosmic.git#31fa09a92a98ccbe47c81c83b41cd20a91107aae" dependencies = [ "apply", - "ashpd 0.11.0", + "ashpd 0.12.0", "auto_enums", "chrono", "cosmic-config", @@ -3239,6 +3340,8 @@ dependencies = [ "css-color", "derive_setters", "futures", + "i18n-embed", + "i18n-embed-fl", "iced", "iced_core", "iced_futures", @@ -3249,11 +3352,11 @@ dependencies = [ "iced_widget", "iced_winit", "image", - "lazy_static", "license", "palette", "raw-window-handle", "rfd", + "rust-embed", "serde", "slotmap", "taffy", @@ -3262,7 +3365,7 @@ dependencies = [ "tracing", "unicode-segmentation", "url", - "zbus 5.10.0", + "zbus 5.11.0", ] [[package]] @@ -3283,11 +3386,11 @@ checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "libredox" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "391290121bad3d37fbddad76d8f5d1c1c314cfc646d143d7e07a3086ddff0ce3" +checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "libc", "redox_syscall 0.5.17", ] @@ -3323,9 +3426,9 @@ checksum = "2a385b1be4e5c3e362ad2ffa73c392e53f031eaa5b7d648e64cd87f27f6063d7" [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" @@ -3339,19 +3442,6 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" -[[package]] -name = "locale_config" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934" -dependencies = [ - "lazy_static", - "objc", - "objc-foundation", - "regex", - "winapi", -] - [[package]] name = "lock_api" version = "0.4.13" @@ -3364,9 +3454,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "lru" @@ -3376,9 +3466,9 @@ checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" [[package]] name = "lyon" -version = "1.0.1" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e7f9cda98b5430809e63ca5197b06c7d191bf7e26dfc467d5a3f0290e2a74f" +checksum = "dbcb7d54d54c8937364c9d41902d066656817dce1e03a44e5533afebd1ef4352" dependencies = [ "lyon_algorithms", "lyon_tessellation", @@ -3386,9 +3476,9 @@ dependencies = [ [[package]] name = "lyon_algorithms" -version = "1.0.5" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f13c9be19d257c7d37e70608ed858e8eab4b2afcea2e3c9a622e892acbf43c08" +checksum = "f4c0829e28c4f336396f250d850c3987e16ce6db057ffe047ce0dd54aab6b647" dependencies = [ "lyon_path", "num-traits", @@ -3396,9 +3486,9 @@ dependencies = [ [[package]] name = "lyon_geom" -version = "1.0.6" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8af69edc087272df438b3ee436c4bb6d7c04aa8af665cfd398feae627dbd8570" +checksum = "4e16770d760c7848b0c1c2d209101e408207a65168109509f8483837a36cf2e7" dependencies = [ "arrayvec", "euclid", @@ -3407,9 +3497,9 @@ dependencies = [ [[package]] name = "lyon_path" -version = "1.0.7" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0047f508cd7a85ad6bad9518f68cce7b1bf6b943fb71f6da0ee3bc1e8cb75f25" +checksum = "1aeca86bcfd632a15984ba029b539ffb811e0a70bf55e814ef8b0f54f506fdeb" dependencies = [ "lyon_geom", "num-traits", @@ -3417,9 +3507,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.15" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579d42360a4b09846eff2feef28f538696c7d6c7439bfa65874ff3cbe0951b2c" +checksum = "f3f586142e1280335b1bc89539f7c97dd80f08fc43e9ab1b74ef0a42b04aa353" dependencies = [ "float_next_after", "lyon_path", @@ -3441,15 +3531,6 @@ version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" -[[package]] -name = "memmap2" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed" -dependencies = [ - "libc", -] - [[package]] name = "memmap2" version = "0.9.8" @@ -3483,7 +3564,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block", "core-graphics-types", "foreign-types 0.5.0", @@ -3528,6 +3609,16 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "moxcms" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd32fa8935aeadb8a8a6b6b351e40225570a37c43de67690383d87ef170cd08" +dependencies = [ + "num-traits", + "pxfm", +] + [[package]] name = "mutate_once" version = "0.1.2" @@ -3542,11 +3633,11 @@ checksum = "8bd5a652b6faf21496f2cfd88fc49989c8db0825d1f6746b1a71a6ede24a63ad" dependencies = [ "arrayvec", "bit-set", - "bitflags 2.9.3", + "bitflags 2.9.4", "cfg_aliases 0.1.1", "codespan-reporting", "hexf-parse", - "indexmap", + "indexmap 2.11.4", "log", "rustc-hash 1.1.0", "spirv", @@ -3578,7 +3669,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "jni-sys", "log", "ndk-sys 0.6.0+11769913", @@ -3623,26 +3714,13 @@ dependencies = [ "memoffset 0.7.1", ] -[[package]] -name = "nix" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" -dependencies = [ - "bitflags 2.9.3", - "cfg-if", - "cfg_aliases 0.2.1", - "libc", - "memoffset 0.9.1", -] - [[package]] name = "nix" version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "cfg-if", "cfg_aliases 0.2.1", "libc", @@ -3655,7 +3733,7 @@ version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d3d07927151ff8575b7087f245456e549fea62edf0ec4e565a5ee50c8402bc3" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "fsevent-sys", "inotify", "kqueue", @@ -3673,6 +3751,12 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e0826a989adedc2a244799e823aece04662b66609d96af8dff7ac6df9a8925d" +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + [[package]] name = "num-traits" version = "0.2.19" @@ -3709,7 +3793,7 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "syn 2.0.106", @@ -3766,7 +3850,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "libc", "objc2 0.5.2", @@ -3782,7 +3866,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6f29f568bec459b0ddff777cec4fe3fd8666d82d5a40ebd0ff7e66134f89bcc" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.6.1", "objc2 0.6.2", "objc2-foundation 0.3.1", @@ -3794,7 +3878,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "objc2 0.5.2", "objc2-core-location", @@ -3818,7 +3902,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "objc2 0.5.2", "objc2-foundation 0.2.2", @@ -3830,7 +3914,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "dispatch2", "objc2 0.6.2", ] @@ -3871,7 +3955,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "dispatch", "libc", @@ -3884,7 +3968,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "900831247d2fe1a09a683278e5384cfb8c80c79fe6b166f9d14bfdde0ea1b03c" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "objc2 0.6.2", "objc2-core-foundation", ] @@ -3907,7 +3991,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "objc2 0.5.2", "objc2-foundation 0.2.2", @@ -3919,7 +4003,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "objc2 0.5.2", "objc2-foundation 0.2.2", @@ -3942,7 +4026,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "objc2 0.5.2", "objc2-cloud-kit", @@ -3974,7 +4058,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "objc2 0.5.2", "objc2-core-location", @@ -4028,7 +4112,7 @@ version = "0.10.73" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "cfg-if", "foreign-types 0.3.2", "libc", @@ -4331,6 +4415,19 @@ dependencies = [ "miniz_oxide", ] +[[package]] +name = "png" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97baced388464909d42d89643fe4361939af9b7ce7a31ee32a168f832a70f2a0" +dependencies = [ + "bitflags 2.9.4", + "crc32fast", + "fdeflate", + "flate2", + "miniz_oxide", +] + [[package]] name = "polling" version = "2.8.0" @@ -4349,16 +4446,16 @@ dependencies = [ [[package]] name = "polling" -version = "3.10.0" +version = "3.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5bd19146350fe804f7cb2669c851c03d69da628803dab0d98018142aaa5d829" +checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" dependencies = [ "cfg-if", "concurrent-queue", "hermit-abi 0.5.2", "pin-project-lite", - "rustix 1.0.8", - "windows-sys 0.60.2", + "rustix 1.1.2", + "windows-sys 0.61.0", ] [[package]] @@ -4391,6 +4488,12 @@ dependencies = [ "zerovec", ] +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + [[package]] name = "ppv-lite86" version = "0.2.21" @@ -4428,35 +4531,33 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.22.27", + "toml_edit 0.23.6", ] [[package]] -name = "proc-macro-error" -version = "1.0.4" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", - "version_check", ] [[package]] -name = "proc-macro-error-attr" -version = "1.0.4" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ + "proc-macro-error-attr2", "proc-macro2", "quote", - "version_check", + "syn 2.0.106", ] [[package]] @@ -4487,6 +4588,15 @@ version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3eb8486b569e12e2c32ad3e204dbaba5e4b5b216e9367044f25f1dba42341773" +[[package]] +name = "pxfm" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83f9b339b02259ada5c0f4a389b7fb472f933aa17ce176fd2ad98f28bb401fde" +dependencies = [ + "num-traits", +] + [[package]] name = "quick-xml" version = "0.37.5" @@ -4599,19 +4709,21 @@ dependencies = [ ] [[package]] -name = "redox_syscall" -version = "0.2.16" +name = "read-fonts" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +checksum = "8941f8e9d5f8ad3aebea330d01ac68c0167600eb31a86ecd86e97be4d13b51f5" dependencies = [ - "bitflags 1.3.2", + "bytemuck", + "core_maths", + "font-types", ] [[package]] name = "redox_syscall" -version = "0.4.1" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" dependencies = [ "bitflags 1.3.2", ] @@ -4622,7 +4734,7 @@ version = "0.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", ] [[package]] @@ -4648,20 +4760,40 @@ dependencies = [ ] [[package]] -name = "regex" -version = "1.11.2" +name = "ref-cast" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" +checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", + "ref-cast-impl", ] [[package]] -name = "regex-automata" -version = "0.4.10" +name = "ref-cast-impl" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + +[[package]] +name = "regex" +version = "1.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" dependencies = [ @@ -4801,19 +4933,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" dependencies = [ "base64 0.21.7", - "bitflags 2.9.3", + "bitflags 2.9.4", "serde", "serde_derive", ] [[package]] name = "ron" -version = "0.9.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63f3aa105dea217ef30d89581b65a4d527a19afc95ef5750be3890e8d3c5b837" +checksum = "db09040cc89e461f1a265139777a2bde7f8d8c67c4936f700c63ce3e2904d468" dependencies = [ "base64 0.22.1", - "bitflags 2.9.3", + "bitflags 2.9.4", "serde", "serde_derive", "unicode-ident", @@ -4897,7 +5029,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "errno", "libc", "linux-raw-sys 0.4.15", @@ -4906,22 +5038,22 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.8" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" +checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "errno", "libc", - "linux-raw-sys 0.9.4", - "windows-sys 0.60.2", + "linux-raw-sys 0.11.0", + "windows-sys 0.61.0", ] [[package]] name = "rustls" -version = "0.23.31" +version = "0.23.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ebcbd2f03de0fc1122ad9bb24b127a5a6cd51d72604a3f3c50ac459762b6cc" +checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40" dependencies = [ "once_cell", "rustls-pki-types", @@ -4941,9 +5073,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.4" +version = "0.103.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc" +checksum = "8572f3c2cb9934231157b45499fc41e1f58c589fdfb81a844ba873265e80f8eb" dependencies = [ "ring", "rustls-pki-types", @@ -4962,9 +5094,8 @@ version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfb9cf8877777222e4a3bc7eb247e398b56baba500c38c1c46842431adc8b55c" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "bytemuck", - "libm", "smallvec", "ttf-parser 0.21.1", "unicode-bidi-mirroring", @@ -4990,11 +5121,35 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.0", +] + +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", ] [[package]] @@ -5017,8 +5172,8 @@ checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec" dependencies = [ "ab_glyph", "log", - "memmap2 0.9.8", - "smithay-client-toolkit", + "memmap2", + "smithay-client-toolkit 0.19.2", "tiny-skia", ] @@ -5028,7 +5183,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "core-foundation", "core-foundation-sys", "libc", @@ -5037,23 +5192,14 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.14.0" +version = "2.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" dependencies = [ "core-foundation-sys", "libc", ] -[[package]] -name = "self_cell" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14e4d63b804dc0c7ec4a1e52bcb63f02c7ac94476755aa579edac21e01f915d" -dependencies = [ - "self_cell 1.2.0", -] - [[package]] name = "self_cell" version = "1.2.0" @@ -5062,18 +5208,28 @@ checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749" [[package]] name = "serde" -version = "1.0.219" +version = "1.0.226" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dca6411025b24b60bfa7ec1fe1f8e710ac09782dca409ee8237ba74b51295fd" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.226" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "ba2ba63999edb9dac981fb34b3e5c0d111a69b0924e253ed29d83f7c99e966a4" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.226" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "8db53ae22f34573731bafa1db20f04027b2d25e02d8205921b569171699cdb33" dependencies = [ "proc-macro2", "quote", @@ -5082,15 +5238,16 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.143" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ - "indexmap", + "indexmap 2.11.4", "itoa", "memchr", "ryu", "serde", + "serde_core", ] [[package]] @@ -5116,6 +5273,38 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_with" +version = "3.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c522100790450cf78eeac1507263d0a350d4d5b30df0c8e1fe051a10c22b376e" +dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.11.4", + "schemars 0.9.0", + "schemars 1.0.4", + "serde", + "serde_derive", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "327ada00f7d64abaac1e55a6911e90cf665aa051b9a561c7006c157f4633135e" +dependencies = [ + "darling 0.21.3", + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "sha1" version = "0.10.6" @@ -5181,7 +5370,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dbeb4ca4399663735553a09dd17ce7e49a0a0203f03b706b39628c4d913a8607" dependencies = [ "bytemuck", - "read-fonts", + "read-fonts 0.29.3", +] + +[[package]] +name = "skrifa" +version = "0.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37004372610e83ee2a4c69c7d896b41f33da6a3dc1a4fe07dd9b2629a549b1dc" +dependencies = [ + "bytemuck", + "read-fonts 0.34.0", ] [[package]] @@ -5211,15 +5410,13 @@ version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" dependencies = [ - "bitflags 2.9.3", - "bytemuck", - "calloop", - "calloop-wayland-source", + "bitflags 2.9.4", + "calloop 0.13.0", + "calloop-wayland-source 0.3.0", "cursor-icon", "libc", "log", - "memmap2 0.9.8", - "pkg-config", + "memmap2", "rustix 0.38.44", "thiserror 1.0.69", "wayland-backend", @@ -5229,7 +5426,36 @@ dependencies = [ "wayland-protocols", "wayland-protocols-wlr", "wayland-scanner", - "xkbcommon", + "xkeysym", +] + +[[package]] +name = "smithay-client-toolkit" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0512da38f5e2b31201a93524adb8d3136276fa4fe4aafab4e1f727a82b534cc0" +dependencies = [ + "bitflags 2.9.4", + "bytemuck", + "calloop 0.14.3", + "calloop-wayland-source 0.4.1", + "cursor-icon", + "libc", + "log", + "memmap2", + "pkg-config", + "rustix 1.1.2", + "thiserror 2.0.16", + "wayland-backend", + "wayland-client", + "wayland-csd-frame", + "wayland-cursor", + "wayland-protocols", + "wayland-protocols-experimental", + "wayland-protocols-misc", + "wayland-protocols-wlr", + "wayland-scanner", + "xkbcommon 0.8.0", "xkeysym", ] @@ -5240,7 +5466,7 @@ source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-dnd-5#5a3007de dependencies = [ "libc", "raw-window-handle", - "smithay-client-toolkit", + "smithay-client-toolkit 0.19.2", "wayland-backend", ] @@ -5276,7 +5502,7 @@ dependencies = [ [[package]] name = "softbuffer" version = "0.4.1" -source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#6e75b1ad7e98397d37cb187886d05969bc480995" +source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#a3f77e251e7422803f693df6e3fc313c010c4dcb" dependencies = [ "as-raw-xcb-connection", "bytemuck", @@ -5288,10 +5514,10 @@ dependencies = [ "foreign-types 0.5.0", "js-sys", "log", - "memmap2 0.9.8", + "memmap2", "objc", "raw-window-handle", - "redox_syscall 0.4.1", + "redox_syscall 0.5.17", "rustix 0.38.44", "tiny-xlib", "wasm-bindgen", @@ -5309,7 +5535,7 @@ version = "0.3.0+sdk-1.3.268.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", ] [[package]] @@ -5333,12 +5559,6 @@ dependencies = [ "float-cmp", ] -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - [[package]] name = "strsim" version = "0.11.1" @@ -5373,7 +5593,7 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f745de914febc7c9ab4388dfaf94bbc87e69f57bb41133a9b0c84d4be49856f3" dependencies = [ - "skrifa", + "skrifa 0.31.3", "yazi", "zeno", ] @@ -5435,7 +5655,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "core-foundation", "system-configuration-sys", ] @@ -5463,15 +5683,15 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.21.0" +version = "3.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e" +checksum = "84fa4d11fadde498443cca10fd3ac23c951f0dc59e080e9f4b93d4df4e4eea53" dependencies = [ "fastrand 2.3.0", "getrandom 0.3.3", "once_cell", - "rustix 1.0.8", - "windows-sys 0.60.2", + "rustix 1.1.2", + "windows-sys 0.61.0", ] [[package]] @@ -5523,6 +5743,37 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "time" +version = "0.3.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" + +[[package]] +name = "time-macros" +version = "0.2.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" +dependencies = [ + "num-conv", + "time-core", +] + [[package]] name = "tiny-skia" version = "0.11.4" @@ -5534,7 +5785,7 @@ dependencies = [ "bytemuck", "cfg-if", "log", - "png", + "png 0.17.16", "tiny-skia-path", ] @@ -5630,9 +5881,9 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.2" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" +checksum = "05f63835928ca123f1bef57abbcd23bb2ba0ac9ae1235f1e65bda0d06e7786bd" dependencies = [ "rustls", "tokio", @@ -5677,25 +5928,44 @@ version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" +[[package]] +name = "toml_datetime" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1" +dependencies = [ + "serde_core", +] + [[package]] name = "toml_edit" version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap", - "toml_datetime", + "indexmap 2.11.4", + "toml_datetime 0.6.11", "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.27" +version = "0.23.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" +dependencies = [ + "indexmap 2.11.4", + "toml_datetime 0.7.2", + "toml_parser", + "winnow 0.7.13", +] + +[[package]] +name = "toml_parser" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" +checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627" dependencies = [ - "indexmap", - "toml_datetime", "winnow 0.7.13", ] @@ -5720,7 +5990,7 @@ version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "bytes", "futures-util", "http", @@ -5750,6 +6020,7 @@ version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -5861,9 +6132,9 @@ checksum = "1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "unicode-linebreak" @@ -5972,9 +6243,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.18.0" +version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f33196643e165781c20a5ead5582283a7dacbb87855d867fbc2df3f81eddc1be" +checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" dependencies = [ "getrandom 0.3.3", "js-sys", @@ -6027,30 +6298,40 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.3+wasi-0.2.4" +version = "0.14.7+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" +dependencies = [ + "wasip2", +] + +[[package]] +name = "wasip2" +version = "1.0.1+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a51ae83037bdd272a9e28ce236db8c07016dd0d50c27038b3f407533c030c95" +checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" dependencies = [ "wit-bindgen", ] [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "ab10a69fbd0a177f5f649ad4d8d3305499c42bab9aef2f7ff592d0ec8f833819" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "0bb702423545a6007bbc368fde243ba47ca275e549c8a28617f56f6ba53b1d1c" dependencies = [ "bumpalo", "log", @@ -6062,9 +6343,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "a0b221ff421256839509adbb55998214a70d829d3a28c69b4a6672e9d2a42f67" dependencies = [ "cfg-if", "js-sys", @@ -6075,9 +6356,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "fc65f4f411d91494355917b605e1480033152658d71f722a90647f56a70c88a0" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -6085,9 +6366,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "ffc003a991398a8ee604a401e194b6b3a39677b3173d6e74495eb51b82e99a32" dependencies = [ "proc-macro2", "quote", @@ -6098,9 +6379,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "293c37f4efa430ca14db3721dfbe48d8c33308096bd44d80ebaa775ab71ba1cf" dependencies = [ "unicode-ident", ] @@ -6128,7 +6409,7 @@ checksum = "673a33c33048a5ade91a6b139580fa174e19fb0d23f396dca9fa15f2e1e49b35" dependencies = [ "cc", "downcast-rs", - "rustix 1.0.8", + "rustix 1.1.2", "scoped-tls", "smallvec", "wayland-sys", @@ -6140,8 +6421,8 @@ version = "0.31.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c66a47e840dc20793f2264eb4b3e4ecb4b75d91c0dd4af04b456128e0bdd449d" dependencies = [ - "bitflags 2.9.3", - "rustix 1.0.8", + "bitflags 2.9.4", + "rustix 1.1.2", "wayland-backend", "wayland-scanner", ] @@ -6152,7 +6433,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "cursor-icon", "wayland-backend", ] @@ -6163,7 +6444,7 @@ version = "0.31.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "447ccc440a881271b19e9989f75726d60faa09b95b0200a9b7eb5cc47c3eeb29" dependencies = [ - "rustix 1.0.8", + "rustix 1.1.2", "wayland-client", "xcursor", ] @@ -6174,20 +6455,46 @@ version = "0.32.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "efa790ed75fbfd71283bd2521a1cfdc022aabcc28bdcff00851f9e4ae88d9901" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "wayland-backend", "wayland-client", "wayland-scanner", "wayland-server", ] +[[package]] +name = "wayland-protocols-experimental" +version = "20250721.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40a1f863128dcaaec790d7b4b396cc9b9a7a079e878e18c47e6c2d2c5a8dcbb1" +dependencies = [ + "bitflags 2.9.4", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-scanner", +] + +[[package]] +name = "wayland-protocols-misc" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dfe33d551eb8bffd03ff067a8b44bb963919157841a99957151299a6307d19c" +dependencies = [ + "bitflags 2.9.4", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-scanner", +] + [[package]] name = "wayland-protocols-plasma" version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a07a14257c077ab3279987c4f8bb987851bf57081b93710381daea94f2c2c032" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "wayland-backend", "wayland-client", "wayland-protocols", @@ -6200,7 +6507,7 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "efd94963ed43cf9938a090ca4f7da58eb55325ec8200c3848963e98dc25b78ec" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "wayland-backend", "wayland-client", "wayland-protocols", @@ -6225,9 +6532,9 @@ version = "0.31.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcbd4f3aba6c9fba70445ad2a484c0ef0356c1a9459b1e8e435bedc1971a6222" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "downcast-rs", - "rustix 1.0.8", + "rustix 1.1.2", "wayland-backend", "wayland-scanner", ] @@ -6246,9 +6553,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "fbe734895e869dc429d78c4b433f8d17d95f8d05317440b4fad5ab2d33e596dc" dependencies = [ "js-sys", "wasm-bindgen", @@ -6303,10 +6610,10 @@ checksum = "0348c840d1051b8e86c3bcd31206080c5e71e5933dabd79be1ce732b0b2f089a" dependencies = [ "arrayvec", "bit-vec", - "bitflags 2.9.3", + "bitflags 2.9.4", "cfg_aliases 0.1.1", "document-features", - "indexmap", + "indexmap 2.11.4", "log", "naga", "once_cell", @@ -6330,7 +6637,7 @@ dependencies = [ "arrayvec", "ash", "bit-set", - "bitflags 2.9.3", + "bitflags 2.9.4", "block", "cfg_aliases 0.1.1", "core-graphics-types", @@ -6371,7 +6678,7 @@ version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc9d91f0e2c4b51434dfa6db77846f2793149d8e73f800fa2e41f52b8eac3c5d" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "js-sys", "web-sys", ] @@ -6400,11 +6707,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -6471,15 +6778,15 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.61.2" +version = "0.62.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +checksum = "57fe7168f7de578d2d8a05b07fd61870d2e73b4020e9f49aa00da8471723497c" dependencies = [ "windows-implement 0.60.0", "windows-interface 0.59.1", - "windows-link", - "windows-result 0.3.4", - "windows-strings", + "windows-link 0.2.0", + "windows-result 0.4.0", + "windows-strings 0.5.0", ] [[package]] @@ -6532,15 +6839,21 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +[[package]] +name = "windows-link" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" + [[package]] name = "windows-registry" version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" dependencies = [ - "windows-link", + "windows-link 0.1.3", "windows-result 0.3.4", - "windows-strings", + "windows-strings 0.4.2", ] [[package]] @@ -6558,7 +6871,16 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" dependencies = [ - "windows-link", + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f" +dependencies = [ + "windows-link 0.2.0", ] [[package]] @@ -6567,7 +6889,16 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ - "windows-link", + "windows-link 0.1.3", +] + +[[package]] +name = "windows-strings" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda" +dependencies = [ + "windows-link 0.2.0", ] [[package]] @@ -6615,6 +6946,15 @@ dependencies = [ "windows-targets 0.53.3", ] +[[package]] +name = "windows-sys" +version = "0.61.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" +dependencies = [ + "windows-link 0.2.0", +] + [[package]] name = "windows-targets" version = "0.42.2" @@ -6667,7 +7007,7 @@ version = "0.53.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" dependencies = [ - "windows-link", + "windows-link 0.1.3", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -6861,15 +7201,15 @@ checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" [[package]] name = "winit" version = "0.30.5" -source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13#1cc02bdab141072eaabad639d74b032fd0fcc62e" +source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13#dbe91fcc363c101f1d6ed5301d49911b01a26f61" dependencies = [ "ahash", "android-activity", "atomic-waker", - "bitflags 2.9.3", + "bitflags 2.9.4", "block2 0.5.1", "bytemuck", - "calloop", + "calloop 0.13.0", "cfg_aliases 0.2.1", "concurrent-queue", "core-foundation", @@ -6878,7 +7218,7 @@ dependencies = [ "dpi", "js-sys", "libc", - "memmap2 0.9.8", + "memmap2", "ndk", "objc2 0.5.2", "objc2-app-kit 0.2.2", @@ -6888,10 +7228,10 @@ dependencies = [ "percent-encoding", "pin-project", "raw-window-handle", - "redox_syscall 0.4.1", + "redox_syscall 0.5.17", "rustix 0.38.44", "sctk-adwaita", - "smithay-client-toolkit", + "smithay-client-toolkit 0.19.2", "smol_str", "tracing", "unicode-segmentation", @@ -6929,9 +7269,9 @@ dependencies = [ [[package]] name = "wit-bindgen" -version = "0.45.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052283831dbae3d879dc7f51f3d92703a316ca49f91540417d38591826127814" +checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" [[package]] name = "writeable" @@ -6961,7 +7301,7 @@ dependencies = [ "libc", "libloading", "once_cell", - "rustix 1.0.8", + "rustix 1.1.2", "x11rb-protocol", "xcursor", ] @@ -6984,6 +7324,12 @@ version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546" +[[package]] +name = "xdg" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fb433233f2df9344722454bc7e96465c9d03bff9d77c248f9e7523fe79585b5" + [[package]] name = "xdg-home" version = "1.3.0" @@ -6997,7 +7343,7 @@ dependencies = [ [[package]] name = "xdg-shell-wrapper-config" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-panel#efbc15c4c3c189d051c57f273162a5fc88a0e99a" +source = "git+https://github.com/pop-os/cosmic-panel#1afc1e85b9119baea9a9e8a47deadfdfb8b3677f" dependencies = [ "serde", "wayland-protocols-wlr", @@ -7005,12 +7351,23 @@ dependencies = [ [[package]] name = "xkbcommon" -version = "0.7.0" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d66ca9352cbd4eecbbc40871d8a11b4ac8107cfc528a6e14d7c19c69d0e1ac9" +dependencies = [ + "libc", + "memmap2", + "xkeysym", +] + +[[package]] +name = "xkbcommon" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e" +checksum = "a7a974f48060a14e95705c01f24ad9c3345022f4d97441b8a36beb7ed5c4a02d" dependencies = [ "libc", - "memmap2 0.8.0", + "memmap2", "xkeysym", ] @@ -7020,7 +7377,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" dependencies = [ - "bitflags 2.9.3", + "bitflags 2.9.4", "dlib", "log", "once_cell", @@ -7122,53 +7479,15 @@ dependencies = [ [[package]] name = "zbus" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb97012beadd29e654708a0fdb4c84bc046f537aecfde2c3ee0a9e4b4d48c725" -dependencies = [ - "async-broadcast 0.7.2", - "async-executor", - "async-fs", - "async-io 2.5.0", - "async-lock 3.4.1", - "async-process 2.4.0", - "async-recursion", - "async-task", - "async-trait", - "blocking", - "enumflags2", - "event-listener 5.4.1", - "futures-core", - "futures-sink", - "futures-util", - "hex", - "nix 0.29.0", - "ordered-stream", - "rand 0.8.5", - "serde", - "serde_repr", - "sha1", - "static_assertions", - "tracing", - "uds_windows", - "windows-sys 0.52.0", - "xdg-home", - "zbus_macros 4.4.0", - "zbus_names 3.0.0", - "zvariant 4.2.0", -] - -[[package]] -name = "zbus" -version = "5.10.0" +version = "5.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a073be99ace1adc48af593701c8015cd9817df372e14a1a6b0ee8f8bf043be" +checksum = "2d07e46d035fb8e375b2ce63ba4e4ff90a7f73cf2ffb0138b29e1158d2eaadf7" dependencies = [ "async-broadcast 0.7.2", "async-executor", - "async-io 2.5.0", + "async-io 2.6.0", "async-lock 3.4.1", - "async-process 2.4.0", + "async-process 2.5.0", "async-recursion", "async-task", "async-trait", @@ -7187,7 +7506,7 @@ dependencies = [ "uds_windows", "windows-sys 0.60.2", "winnow 0.7.13", - "zbus_macros 5.10.0", + "zbus_macros 5.11.0", "zbus_names 4.2.0", "zvariant 5.7.0", ] @@ -7208,24 +7527,11 @@ dependencies = [ [[package]] name = "zbus_macros" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "267db9407081e90bbfa46d841d3cbc60f59c0351838c4bc65199ecd79ab1983e" -dependencies = [ - "proc-macro-crate 3.3.0", - "proc-macro2", - "quote", - "syn 2.0.106", - "zvariant_utils 2.1.0", -] - -[[package]] -name = "zbus_macros" -version = "5.10.0" +version = "5.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e80cd713a45a49859dcb648053f63265f4f2851b6420d47a958e5697c68b131" +checksum = "57e797a9c847ed3ccc5b6254e8bcce056494b375b511b3d6edcec0aeb4defaca" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "syn 2.0.106", @@ -7245,17 +7551,6 @@ dependencies = [ "zvariant 3.15.2", ] -[[package]] -name = "zbus_names" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c" -dependencies = [ - "serde", - "static_assertions", - "zvariant 4.2.0", -] - [[package]] name = "zbus_names" version = "4.2.0" @@ -7276,18 +7571,18 @@ checksum = "6df3dc4292935e51816d896edcd52aa30bc297907c26167fec31e2b0c6a32524" [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", @@ -7362,9 +7657,9 @@ checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a" [[package]] name = "zune-jpeg" -version = "0.4.20" +version = "0.4.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc1f7e205ce79eb2da3cd71c5f55f3589785cb7c79f6a03d1c8d1491bda5d089" +checksum = "29ce2c8a9384ad323cf564b67da86e21d3cfdff87908bc1223ed5c99bc792713" dependencies = [ "zune-core", ] @@ -7383,20 +7678,6 @@ dependencies = [ "zvariant_derive 3.15.2", ] -[[package]] -name = "zvariant" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2084290ab9a1c471c38fc524945837734fbf124487e105daec2bb57fd48c81fe" -dependencies = [ - "endi", - "enumflags2", - "serde", - "static_assertions", - "url", - "zvariant_derive 4.2.0", -] - [[package]] name = "zvariant" version = "5.7.0" @@ -7425,26 +7706,13 @@ dependencies = [ "zvariant_utils 1.0.1", ] -[[package]] -name = "zvariant_derive" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73e2ba546bda683a90652bac4a279bc146adad1386f25379cf73200d2002c449" -dependencies = [ - "proc-macro-crate 3.3.0", - "proc-macro2", - "quote", - "syn 2.0.106", - "zvariant_utils 2.1.0", -] - [[package]] name = "zvariant_derive" version = "5.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6643fd0b26a46d226bd90d3f07c1b5321fe9bb7f04673cb37ac6d6883885b68e" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "syn 2.0.106", @@ -7462,17 +7730,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "zvariant_utils" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c51bcff7cc3dbb5055396bcf774748c3dab426b4b8659046963523cee4808340" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - [[package]] name = "zvariant_utils" version = "3.2.1" diff --git a/Cargo.toml b/Cargo.toml index de47e47..43732db 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,24 +1,24 @@ [package] name = "cosmic-ext-tweaks" version = "0.1.3" -edition = "2021" +edition = "2024" [dependencies] -dirs = "5.0.1" -env_logger = "0.11.5" -i18n-embed-fl = "0.8" -log = "0.4.22" -open = "5.1.2" -pretty_env_logger = "0.5.0" +dirs = "6" +env_logger = "0.11" +i18n-embed-fl = "0.10" +log = "0.4" +open = "5" +pretty_env_logger = "0.5" reqwest = { version = "0.12", features = ["json"] } -ron = "0.8.1" -rust-embed = "8.3.0" -chrono = { version = "0.4.38", features = ["serde"] } -thiserror = "2.0.12" -uuid = { version = "1.17.0", features = ["serde", "v4"] } +ron = "0.11" +rust-embed = "8" +chrono = { version = "0.4", features = ["serde"] } +thiserror = "2" +uuid = { version = "1", features = ["serde", "v4"] } [dependencies.ashpd] -version = "0.8.1" +version = "0.12" default-features = false features = ["async-std"] @@ -31,18 +31,21 @@ features = ["tokio", "winit", "wgpu", "about"] git = "https://github.com/ryanabx/cosmic-ext-config-templates" [dependencies.i18n-embed] -version = "0.14" +version = "0.16" features = ["fluent-system", "desktop-requester"] [dependencies.cosmic-panel-config] git = "https://github.com/pop-os/cosmic-panel" +[dependencies.cosmic-settings-config] +git = "https://github.com/pop-os/cosmic-settings-daemon" + [dependencies.serde] -version = "1.0.196" +version = "1" features = ["derive"] [dependencies.tokio] -version = "1.35.1" +version = "1" features = ["macros", "fs", "rt"] [patch."https://github.com/smithay/client-toolkit.git"] diff --git a/i18n/en/cosmic_ext_tweaks.ftl b/i18n/en/cosmic_ext_tweaks.ftl index 5400681..e8b6796 100644 --- a/i18n/en/cosmic_ext_tweaks.ftl +++ b/i18n/en/cosmic_ext_tweaks.ftl @@ -119,5 +119,5 @@ view = View ## Shortcuts -warning = Warning: this will remove your existing custom shortcuts +warning = Warning: this will override some of your existing custom shortcuts windows-desc = Super+Arrows to move windows. Ctrl+Alt+Arrows to navigate workspaces. diff --git a/src/app.rs b/src/app.rs index 9d208da..5193dad 100644 --- a/src/app.rs +++ b/src/app.rs @@ -1,8 +1,9 @@ use action::TweaksAction; use context::ContextPage; use cosmic::{ - app::{self, context_drawer::ContextDrawer, Task}, - iced, widget, Application, Core, Element, + Application, Core, Element, + app::{self, Task, context_drawer::ContextDrawer}, + iced, widget, }; use std::collections::{HashMap, VecDeque}; @@ -37,7 +38,7 @@ pub struct App { panel: pages::Panel, layouts: pages::Layouts, snapshots: pages::Snapshots, - shortcuts: pages::Shortcuts, + shortcuts: pages::ShortcutsPage, } pub struct Cosmic { @@ -124,16 +125,18 @@ impl App { core::config::AppTheme::Light => 2, core::config::AppTheme::System => 0, }; - widget::settings::view_column(vec![widget::settings::section() - .title(crate::fl!("appearance")) - .add( - widget::settings::item::builder(crate::fl!("theme")).control(widget::dropdown( - &self.cosmic.app_themes, - Some(app_theme_selected), - Message::AppTheme, - )), - ) - .into()]) + widget::settings::view_column(vec![ + widget::settings::section() + .title(crate::fl!("appearance")) + .add( + widget::settings::item::builder(crate::fl!("theme")).control(widget::dropdown( + &self.cosmic.app_themes, + Some(app_theme_selected), + Message::AppTheme, + )), + ) + .into(), + ]) .into() } } diff --git a/src/app/action.rs b/src/app/action.rs index 90cbd0c..185739d 100644 --- a/src/app/action.rs +++ b/src/app/action.rs @@ -1,4 +1,4 @@ -use super::{context::ContextPage, Message}; +use super::{Message, context::ContextPage}; #[derive(Clone, Copy, Debug, Eq, PartialEq)] pub enum TweaksAction { diff --git a/src/app/context_drawer.rs b/src/app/context_drawer.rs index c142b5c..eb80751 100644 --- a/src/app/context_drawer.rs +++ b/src/app/context_drawer.rs @@ -1,11 +1,11 @@ use cosmic::{ - app::{self, context_drawer::ContextDrawer}, Application, + app::{self, context_drawer::ContextDrawer}, }; +use crate::app::App; use crate::app::context::ContextPage; use crate::app::message::Message; -use crate::app::App; use super::Cosmic; diff --git a/src/app/core/config.rs b/src/app/core/config.rs index 5138651..bf71da4 100644 --- a/src/app/core/config.rs +++ b/src/app/core/config.rs @@ -1,6 +1,7 @@ use cosmic::{ - cosmic_config::{self, cosmic_config_derive::CosmicConfigEntry, Config, CosmicConfigEntry}, - theme, Application, + Application, + cosmic_config::{self, Config, CosmicConfigEntry, cosmic_config_derive::CosmicConfigEntry}, + theme, }; use serde::{Deserialize, Serialize}; diff --git a/src/app/core/grid.rs b/src/app/core/grid.rs index 983345e..14e9aee 100644 --- a/src/app/core/grid.rs +++ b/src/app/core/grid.rs @@ -6,12 +6,11 @@ pub struct GridMetrics { impl GridMetrics { pub fn new(width: usize, min_width: usize, column_spacing: u16) -> Self { - let width_m1 = width.checked_sub(min_width).unwrap_or(0); + let width_m1 = width.saturating_sub(min_width); let cols_m1 = width_m1 / (min_width + column_spacing as usize); let cols = cols_m1 + 1; let item_width = width - .checked_sub(cols_m1 * column_spacing as usize) - .unwrap_or(0) + .saturating_sub(cols_m1 * column_spacing as usize) .checked_div(cols) .unwrap_or(0); Self { diff --git a/src/app/core/icons.rs b/src/app/core/icons.rs index a8f38b7..0788005 100644 --- a/src/app/core/icons.rs +++ b/src/app/core/icons.rs @@ -80,12 +80,10 @@ impl IconCache { } pub fn get_handle(&mut self, name: &'static str, size: u16) -> icon::Handle { - let handle = self - .cache + self.cache .entry(IconCacheKey { name, size }) .or_insert_with(|| icon::from_name(name).size(size).handle()) - .clone(); - handle + .clone() } } diff --git a/src/app/core/mod.rs b/src/app/core/mod.rs index 2aaa12c..03393fc 100644 --- a/src/app/core/mod.rs +++ b/src/app/core/mod.rs @@ -3,6 +3,5 @@ pub mod error; pub mod grid; pub mod icons; pub mod key_bindings; -pub mod localize; pub mod settings; pub mod style; diff --git a/src/app/core/settings.rs b/src/app/core/settings.rs index 96f13ce..2f25f1e 100644 --- a/src/app/core/settings.rs +++ b/src/app/core/settings.rs @@ -1,7 +1,6 @@ -use crate::app::flags::Flags; +use crate::{app::flags::Flags, localize}; -use super::icons::{IconCache, ICON_CACHE}; -use crate::app::core::localize; +use super::icons::{ICON_CACHE, IconCache}; use std::sync::Mutex; pub fn settings() -> cosmic::app::Settings { @@ -22,7 +21,13 @@ pub fn flags() -> Flags { pub fn init() -> Result<(), crate::Error> { ICON_CACHE.get_or_init(|| Mutex::new(IconCache::new())); localize::localize(); - std::env::set_var("RUST_LOG", "cosmic_ext_tweaks=info"); + + if std::env::var("RUST_LOG").is_err() { + unsafe { + std::env::set_var("RUST_LOG", "warn"); + } + } + pretty_env_logger::init(); crate::app::pages::layouts::Layouts::init() } diff --git a/src/app/dialog.rs b/src/app/dialog.rs index cef3b7e..1a1d308 100644 --- a/src/app/dialog.rs +++ b/src/app/dialog.rs @@ -1,8 +1,8 @@ -use cosmic::{widget, Element}; +use cosmic::{Element, widget}; +use crate::app::App; use crate::app::message::Message; use crate::app::pages::layouts::dialog::{CreateLayoutDialog, PanelType}; -use crate::app::App; use super::Cosmic; use crate::fl; @@ -17,10 +17,7 @@ pub enum DialogPage { impl Cosmic { pub fn dialog<'a>(app: &'a App) -> Option> { let spacing = cosmic::theme::spacing(); - let dialog_page = match app.cosmic.dialog_pages.front() { - Some(some) => some, - None => return None, - }; + let dialog_page = app.cosmic.dialog_pages.front()?; let dialog = match dialog_page { DialogPage::SaveCurrentColorScheme(name) => widget::dialog() @@ -70,16 +67,15 @@ impl Cosmic { } = dialog; let preview_view = preview.view::(&spacing, 130); - let name_input = widget::text_input(fl!("layout-name"), name) - .id(app.cosmic.dialog_text_input.clone()) - .on_input(move |name| { - Message::DialogUpdate(DialogPage::CreateLayout(CreateLayoutDialog::new( - name.clone(), - preview.clone(), - error.clone(), - ))) - }) - .on_submit(|_| Message::DialogComplete); + let name_input = + widget::text_input(fl!("layout-name"), name) + .id(app.cosmic.dialog_text_input.clone()) + .on_input(move |name| { + Message::DialogUpdate(DialogPage::CreateLayout( + CreateLayoutDialog::new(name.clone(), *preview, error.clone()), + )) + }) + .on_submit(|_| Message::DialogComplete); widget::dialog() .width(700) @@ -90,7 +86,7 @@ impl Cosmic { Message::DialogUpdate(DialogPage::CreateLayout( CreateLayoutDialog::new( name.clone(), - preview.clone(), + *preview, Some(fl!("layout-name-empty")), ), )) @@ -107,14 +103,10 @@ impl Cosmic { .push( widget::column() .push(name_input) - .push_maybe(if let Some(error) = error { - Some( - widget::text::caption(error.to_string()) - .class(cosmic::style::Text::Accent), - ) - } else { - None - }) + .push_maybe(error.as_ref().map(|error| { + widget::text::caption(error.to_string()) + .class(cosmic::style::Text::Accent) + })) .push( widget::scrollable( widget::column() diff --git a/src/app/footer.rs b/src/app/footer.rs index d6489ae..cd7c1d5 100644 --- a/src/app/footer.rs +++ b/src/app/footer.rs @@ -1,9 +1,9 @@ use cosmic::{ - widget::{self}, Apply, Element, + widget::{self}, }; -use crate::app::{dialog::DialogPage, App}; +use crate::app::{App, dialog::DialogPage}; use crate::app::{message::Message, pages::layouts::dialog::CreateLayoutDialog}; use crate::app::{page::Page, pages}; diff --git a/src/app/header.rs b/src/app/header.rs index 9262da8..a1610bc 100644 --- a/src/app/header.rs +++ b/src/app/header.rs @@ -1,10 +1,10 @@ -use cosmic::widget::menu::{self, ItemHeight, ItemWidth}; -use cosmic::widget::RcElementWrapper; use cosmic::Element; +use cosmic::widget::RcElementWrapper; +use cosmic::widget::menu::{self, ItemHeight, ItemWidth}; +use crate::app::App; use crate::app::action::TweaksAction; use crate::app::message::Message; -use crate::app::App; use super::Cosmic; use crate::app::core::icons; diff --git a/src/app/init.rs b/src/app/init.rs index cdbc48b..20d5d8b 100644 --- a/src/app/init.rs +++ b/src/app/init.rs @@ -1,16 +1,16 @@ use std::collections::VecDeque; use cosmic::{ + Application, ApplicationExt, Task, app::{self, Core}, iced::keyboard::Modifiers, widget::{self, about::About}, - Application, ApplicationExt, Task, }; +use crate::app::App; use crate::app::flags::Flags; use crate::app::message::Message; use crate::app::page::Page; -use crate::app::App; use crate::app::{context::ContextPage, pages::snapshots::config::SnapshotKind}; use super::Cosmic; @@ -21,7 +21,7 @@ use crate::app::pages::{ dock::Dock, layouts::Layouts, panel::Panel, - shortcuts::Shortcuts, + shortcuts::ShortcutsPage, snapshots::Snapshots, }; use crate::fl; @@ -78,7 +78,7 @@ impl Cosmic { dock: Dock::default(), panel: Panel::default(), snapshots: Snapshots::default(), - shortcuts: Shortcuts::new(), + shortcuts: ShortcutsPage::new(), }; let mut tasks = vec![ diff --git a/src/app/nav.rs b/src/app/nav.rs index da50998..34323e5 100644 --- a/src/app/nav.rs +++ b/src/app/nav.rs @@ -1,12 +1,12 @@ use cosmic::{ + ApplicationExt, Task, app::{self}, widget::{self}, - ApplicationExt, Task, }; +use crate::app::App; use crate::app::message::Message; use crate::app::page::Page; -use crate::app::App; use crate::fl; use super::Cosmic; diff --git a/src/app/pages/color_schemes/config.rs b/src/app/pages/color_schemes/config.rs index 86cc162..06e5d4f 100644 --- a/src/app/pages/color_schemes/config.rs +++ b/src/app/pages/color_schemes/config.rs @@ -4,8 +4,8 @@ use cosmic::{ cosmic_config::{self, Config}, cosmic_theme::{ThemeBuilder, ThemeMode}, }; -use cosmic_config::cosmic_config_derive::CosmicConfigEntry; use cosmic_config::CosmicConfigEntry; +use cosmic_config::cosmic_config_derive::CosmicConfigEntry; use serde::{Deserialize, Serialize}; use crate::Error; @@ -101,13 +101,12 @@ impl ColorScheme { .or_else(dirs::data_local_dir) .map(|dir| dir.join("themes/cosmic")); - if let Some(ref xdg_data_home) = xdg_data_home { - if !xdg_data_home.exists() { - if let Err(e) = std::fs::create_dir_all(xdg_data_home) { - log::error!("failed to create the themes directory: {e}") - }; - } - } + if let Some(ref xdg_data_home) = xdg_data_home + && !xdg_data_home.exists() + && let Err(e) = std::fs::create_dir_all(xdg_data_home) + { + log::error!("failed to create the themes directory: {e}") + }; let xdg_data_dirs = std::env::var("XDG_DATA_DIRS").ok(); diff --git a/src/app/pages/color_schemes/mod.rs b/src/app/pages/color_schemes/mod.rs index 302fa2c..a4f343c 100644 --- a/src/app/pages/color_schemes/mod.rs +++ b/src/app/pages/color_schemes/mod.rs @@ -5,6 +5,7 @@ use crate::app::core::grid::GridMetrics; use crate::fl; use ashpd::desktop::file_chooser::{FileFilter, SelectedFiles}; use cosmic::{ + Element, Task, cosmic_config::CosmicConfigEntry, cosmic_theme::{Theme, ThemeBuilder, ThemeMode}, iced::Length, @@ -12,7 +13,6 @@ use cosmic::{ self, segmented_button::{self, SingleSelect}, }, - Element, Task, }; use cosmic_theme::CosmicTheme; @@ -150,12 +150,13 @@ impl ColorSchemes { async move { (tokio::fs::read_to_string(path).await, file_path) }, move |(res, path)| { if let Some(b) = res.ok().and_then(|theme| { - if path.is_file() && !path.exists() { - if let Err(e) = std::fs::write(path, &theme) { - log::error!( - "failed to write the file to the themes directory: {e}" - ); - } + if path.is_file() + && !path.exists() + && let Err(e) = std::fs::write(path, &theme) + { + log::error!( + "failed to write the file to the themes directory: {e}" + ); } ron::de::from_str(&theme).ok() }) { @@ -219,11 +220,11 @@ impl ColorSchemes { } } Message::DeleteColorScheme(color_scheme) => { - if self.color_scheme.name == color_scheme.name { - if let Some(color_scheme) = self.installed.first() { - tasks.push(self.update(Message::SetColorScheme(color_scheme.clone()))); - tasks.push(self.update(Message::ReloadColorSchemes)); - } + if self.color_scheme.name == color_scheme.name + && let Some(color_scheme) = self.installed.first() + { + tasks.push(self.update(Message::SetColorScheme(color_scheme.clone()))); + tasks.push(self.update(Message::ReloadColorSchemes)); } let Some(path) = color_scheme.path else { return Task::none(); @@ -299,10 +300,10 @@ impl ColorSchemes { let Some(path) = color_scheme.path else { return Task::none(); }; - if let Some(path) = path.parent() { - if let Err(e) = open::that_detached(path) { - log::error!("There was an error opening that color scheme: {e}") - } + if let Some(path) = path.parent() + && let Err(e) = open::that_detached(path) + { + log::error!("There was an error opening that color scheme: {e}") } } Message::ReloadColorSchemes => { diff --git a/src/app/pages/color_schemes/preview.rs b/src/app/pages/color_schemes/preview.rs index f45fa9c..5c3bbd9 100644 --- a/src/app/pages/color_schemes/preview.rs +++ b/src/app/pages/color_schemes/preview.rs @@ -5,9 +5,9 @@ use crate::app::core::{ }; use crate::fl; use cosmic::{ + Apply, Element, iced::{Alignment, Length}, widget::{self, tooltip}, - Apply, Element, }; pub fn installed<'a>( @@ -94,7 +94,7 @@ pub fn available<'a>( color_scheme .author .as_ref() - .and_then(|author| Some(widget::text::caption(author.clone()))), + .map(|author| widget::text::caption(author.clone())), ) .width(Length::Fill) .align_x(Alignment::Center) diff --git a/src/app/pages/dock.rs b/src/app/pages/dock.rs index 5a559e8..5005c9f 100644 --- a/src/app/pages/dock.rs +++ b/src/app/pages/dock.rs @@ -1,6 +1,7 @@ use cosmic::{ + Element, Task, cosmic_config::{Config, CosmicConfigEntry}, - widget, Element, Task, + widget, }; use cosmic_panel_config::{AutoHide, CosmicPanelConfig}; @@ -36,7 +37,7 @@ impl Default for Dock { let autohide = dock_config .clone() .map(|config| config.autohide.unwrap_or(AutoHide::default())) - .unwrap(); + .unwrap_or_default(); Self { dock_helper, dock_config, diff --git a/src/app/pages/layouts/config.rs b/src/app/pages/layouts/config.rs index 2d349e1..cd2b34b 100644 --- a/src/app/pages/layouts/config.rs +++ b/src/app/pages/layouts/config.rs @@ -1,8 +1,8 @@ -use crate::{app::App, Error}; +use crate::{Error, app::App}; -use super::{preview::LayoutPreview, Message}; -use cosmic::{widget, Application, Element}; -use cosmic_ext_config_templates::{panel::PanelSchema, Schema}; +use super::{Message, preview::LayoutPreview}; +use cosmic::{Application, Element, widget}; +use cosmic_ext_config_templates::{Schema, panel::PanelSchema}; use serde::{Deserialize, Serialize}; use uuid::Uuid; @@ -33,7 +33,7 @@ impl Layout { preview_height: u16, selected_layout: &Option, ) -> Element<'a, Message> { - let mut button = widget::button::custom(self.preview.view(&spacing, preview_height)) + let mut button = widget::button::custom(self.preview.view(spacing, preview_height)) .on_press(Message::Select(self.clone())) .class(cosmic::style::Button::Image) .width(item_width as f32); diff --git a/src/app/pages/layouts/dialog.rs b/src/app/pages/layouts/dialog.rs index 760fdbf..b2b1029 100644 --- a/src/app/pages/layouts/dialog.rs +++ b/src/app/pages/layouts/dialog.rs @@ -1,4 +1,4 @@ -use cosmic::{iced::Alignment, widget, Element}; +use cosmic::{Element, iced::Alignment, widget}; use crate::app::dialog::DialogPage; use crate::app::message::Message; @@ -46,10 +46,10 @@ impl CreateLayoutDialog { let mut section = widget::settings::section() .title(title) - .add(self.create_show_toggle(panel_type, ¤t_props)) - .add(self.create_extend_toggle(panel_type, ¤t_props)) + .add(self.create_show_toggle(panel_type, current_props)) + .add(self.create_extend_toggle(panel_type, current_props)) .add(self.create_position_control(panel_type, model)) - .add(self.create_size_control(panel_type, ¤t_props)); + .add(self.create_size_control(panel_type, current_props)); if panel_type == PanelType::Dock { section = section.add(self.create_dock_icons_control()); @@ -67,10 +67,10 @@ impl CreateLayoutDialog { .icon(icons::get_icon("resize-mode-symbolic", 18)) .control( widget::toggler(!current_props.hidden).on_toggle(move |hidden| { - let mut new_preview = self.preview.clone(); + let mut new_preview = self.preview; let new_props = PanelProperties { hidden: !hidden, - ..current_props.clone() + ..*current_props }; match panel_type { @@ -100,10 +100,10 @@ impl CreateLayoutDialog { .icon(icons::get_icon("resize-mode-symbolic", 18)) .control( widget::toggler(current_props.extend).on_toggle(move |extend| { - let mut new_preview = self.preview.clone(); + let mut new_preview = self.preview; let new_props = PanelProperties { extend, - ..current_props.clone() + ..*current_props }; match panel_type { @@ -131,21 +131,19 @@ impl CreateLayoutDialog { ) -> impl Into> { let spacing = cosmic::theme::spacing(); let name = self.name.to_string().clone(); - let preview = self.preview.clone(); - let panel_type = panel_type.clone(); + let preview = self.preview; + let panel_type = panel_type; widget::settings::item::builder(fl!("position")) .icon(icons::get_icon("resize-mode-symbolic", 18)) .control( widget::segmented_button::horizontal(model) .on_activate(move |entity| match panel_type { - PanelType::Panel => Message::UpdatePanelLayoutPosition( - entity, - name.clone(), - preview.clone(), - ), + PanelType::Panel => { + Message::UpdatePanelLayoutPosition(entity, name.clone(), preview) + } PanelType::Dock => { - Message::UpdateDockLayoutPosition(entity, name.clone(), preview.clone()) + Message::UpdateDockLayoutPosition(entity, name.clone(), preview) } }) .button_alignment(Alignment::Center) @@ -159,9 +157,9 @@ impl CreateLayoutDialog { panel_props: &PanelProperties, ) -> impl Into> { let name = self.name.to_string(); - let preview = self.preview.clone(); + let preview = self.preview; let error = self.error.clone(); - let panel_props = panel_props.clone(); + let panel_props = *panel_props; let panel_type = panel_type; widget::settings::item::builder(fl!("size")) @@ -173,10 +171,10 @@ impl CreateLayoutDialog { 0.0, 50.0, move |size| { - let mut new_preview = preview.clone(); + let mut new_preview = preview; let new_props = PanelProperties { size: size as usize, - ..panel_props.clone() + ..panel_props }; match panel_type { @@ -199,7 +197,7 @@ impl CreateLayoutDialog { pub fn create_dock_icons_control<'a>(&'a self) -> impl Into> { let name = self.name.to_string(); - let preview = self.preview.clone(); + let preview = self.preview; let error = self.error.clone(); widget::settings::item::builder(fl!("dock-icons")) @@ -215,7 +213,7 @@ impl CreateLayoutDialog { name.clone(), LayoutPreview { dock_icons: size, - ..preview.clone() + ..preview }, error.clone(), ))) diff --git a/src/app/pages/layouts/mod.rs b/src/app/pages/layouts/mod.rs index e2cdcee..3338784 100644 --- a/src/app/pages/layouts/mod.rs +++ b/src/app/pages/layouts/mod.rs @@ -1,17 +1,17 @@ use config::Layout; use cosmic::{ - iced::{alignment::Horizontal, Length}, + Application, Element, Task, + iced::{Length, alignment::Horizontal}, widget::{ self, segmented_button::{self, SingleSelect}, }, - Application, Element, Task, }; use cosmic_ext_config_templates::load_template; use preview::{LayoutPreview, Position}; -use crate::app::{core::grid::GridMetrics, App}; -use crate::{fl, Error}; +use crate::app::{App, core::grid::GridMetrics}; +use crate::{Error, fl}; pub mod config; pub mod dialog; @@ -144,7 +144,7 @@ impl Layouts { .join(App::APP_ID) .join("layouts"); let file_path = layouts_dir - .join(&layout.id.to_string()) + .join(layout.id.to_string()) .with_extension("ron"); if file_path.exists() { match std::fs::remove_file(file_path) { @@ -173,7 +173,7 @@ impl Layouts { .join("layouts"); let file_path = layouts_dir - .join(&layout.id.to_string()) + .join(layout.id.to_string()) .with_extension("ron"); if file_path.exists() { return Task::none(); diff --git a/src/app/pages/layouts/preview.rs b/src/app/pages/layouts/preview.rs index 1e4a8c3..f94a2fc 100644 --- a/src/app/pages/layouts/preview.rs +++ b/src/app/pages/layouts/preview.rs @@ -1,10 +1,10 @@ use cosmic::{ + Apply, Element, Theme, iced::{ - alignment::{Horizontal, Vertical}, Length, + alignment::{Horizontal, Vertical}, }, widget::{self, horizontal_space, vertical_space}, - Apply, Element, Theme, }; use serde::{Deserialize, Serialize}; diff --git a/src/app/pages/mod.rs b/src/app/pages/mod.rs index 1947cd1..f84a17b 100644 --- a/src/app/pages/mod.rs +++ b/src/app/pages/mod.rs @@ -9,5 +9,5 @@ pub use color_schemes::ColorSchemes; pub use dock::Dock; pub use layouts::Layouts; pub use panel::Panel; -pub use shortcuts::Shortcuts; +pub use shortcuts::ShortcutsPage; pub use snapshots::Snapshots; diff --git a/src/app/pages/panel/config.rs b/src/app/pages/panel/config.rs index af9c4e8..98cde39 100644 --- a/src/app/pages/panel/config.rs +++ b/src/app/pages/panel/config.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use cosmic::cosmic_config; -use cosmic_config::{cosmic_config_derive::CosmicConfigEntry, CosmicConfigEntry}; +use cosmic_config::{CosmicConfigEntry, cosmic_config_derive::CosmicConfigEntry}; use serde::{Deserialize, Serialize}; #[derive(Debug, Deserialize, Serialize, PartialEq, Clone, CosmicConfigEntry)] diff --git a/src/app/pages/panel/mod.rs b/src/app/pages/panel/mod.rs index ceae5fa..8ba6ef8 100644 --- a/src/app/pages/panel/mod.rs +++ b/src/app/pages/panel/mod.rs @@ -1,6 +1,7 @@ use cosmic::{ + Element, Task, cosmic_config::{self, Config, CosmicConfigEntry}, - widget, Element, Task, + widget, }; use cosmic_panel_config::{AutoHide, CosmicPanelConfig}; use serde::{Deserialize, Serialize}; diff --git a/src/app/pages/shortcuts.rs b/src/app/pages/shortcuts.rs index e151c62..404de82 100644 --- a/src/app/pages/shortcuts.rs +++ b/src/app/pages/shortcuts.rs @@ -1,59 +1,79 @@ -use std::{env, fs, path::Path}; +use std::{collections::HashMap, io}; use cosmic::{ - iced::padding, - widget::{button, column, horizontal_space, row, text, vertical_space}, Element, Task, + cosmic_config::{self, ConfigGet, ConfigSet}, + iced::{alignment::Vertical, padding}, + widget::{button, column, horizontal_space, row, text, vertical_space}, }; +use cosmic_settings_config::{Shortcuts, shortcuts}; -use crate::fl; - -pub struct Shortcuts {} +pub struct ShortcutsPage { + pub config: cosmic_config::Config, +} #[derive(Debug, Clone)] -enum Shortcut { +enum ShortcutsGroup { Windows, } -impl Shortcut { +impl ShortcutsGroup { fn name(&self) -> &'static str { match self { - Shortcut::Windows => "Windows", + ShortcutsGroup::Windows => "Windows", } } fn desc(&self) -> String { match self { - Shortcut::Windows => fl!("windows-desc"), + ShortcutsGroup::Windows => fl!("windows-desc"), } } - fn schema(&self) -> &'static str { - match self { - Self::Windows => include_str!("../../../res/shortcuts/windows.ron"), - } + fn shortcuts(&self) -> HashMap { + let str = match self { + Self::Windows => { + include_str!("../../../res/shortcuts/windows.ron") + } + }; + + ron::de::from_str(str).unwrap() } } #[derive(Debug, Clone)] #[allow(private_interfaces)] pub enum Message { - ApplyShortcuts(Shortcut), + ApplyShortcuts(ShortcutsGroup), } -impl Shortcuts { +impl ShortcutsPage { pub fn new() -> Self { - Self {} + Self { + config: shortcuts::context().unwrap(), + } } pub fn update(&mut self, message: Message) -> Task { match message { - Message::ApplyShortcuts(shortcut) => { - let path = Path::new(&env::var("HOME").unwrap()) - .join(".config/cosmic/com.system76.CosmicSettings.Shortcuts/v1/custom"); + Message::ApplyShortcuts(shortcuts_group) => { + let mut shortcuts = match self.config.get::("custom") { + Ok(shortcuts) => shortcuts, + Err(cosmic_config::Error::GetKey(_, e)) + if e.kind() == io::ErrorKind::NotFound => + { + Shortcuts::default() + } + Err(e) => { + error!("unable to get the current shortcuts config: {e}"); + Shortcuts::default() + } + }; + + shortcuts.0.extend(shortcuts_group.shortcuts()); - if let Err(e) = fs::write(&path, shortcut.schema()) { - eprintln!("Failed to write shortcuts: {}", e); + if let Err(e) = self.config.set("custom", shortcuts) { + error!("failed to write shortcuts config: {e}"); } } } @@ -67,17 +87,19 @@ impl Shortcuts { .push( column().spacing(5).push( row() - .push(view_button(Shortcut::Windows)) - .push(view_button(Shortcut::Windows)), + .push(view_button(ShortcutsGroup::Windows)) + .push(view_button(ShortcutsGroup::Windows)), ), ) .into() } } -fn view_button<'a>(shortcuts: Shortcut) -> Element<'a, Message> { +fn view_button<'a>(shortcuts: ShortcutsGroup) -> Element<'a, Message> { button::custom( row() + .align_y(Vertical::Center) + .padding(5) .push(text(shortcuts.name())) .push(horizontal_space()) .push(text(shortcuts.desc())), diff --git a/src/app/pages/snapshots/config.rs b/src/app/pages/snapshots/config.rs index feabaa3..15480d0 100644 --- a/src/app/pages/snapshots/config.rs +++ b/src/app/pages/snapshots/config.rs @@ -1,12 +1,12 @@ use std::{fmt::Display, path::PathBuf}; use crate::{ - app::{pages::color_schemes::config::ColorScheme, App}, + app::{App, pages::color_schemes::config::ColorScheme}, fl, }; use chrono::{NaiveDateTime, Utc}; -use cosmic::{cosmic_config::CosmicConfigEntry, Application}; -use cosmic_ext_config_templates::{panel::PanelSchema, Schema}; +use cosmic::{Application, cosmic_config::CosmicConfigEntry}; +use cosmic_ext_config_templates::{Schema, panel::PanelSchema}; use serde::{Deserialize, Serialize}; use uuid::Uuid; @@ -46,9 +46,7 @@ impl Snapshot { name: name.to_string(), kind, created, - schema: PanelSchema::generate() - .ok() - .map(|panel_schema| Schema::Panel(panel_schema)), + schema: PanelSchema::generate().ok().map(Schema::Panel), color_scheme: match ColorScheme::get_entry(&ColorScheme::config()) { Ok(config) => config, Err((errors, default)) => { @@ -68,7 +66,7 @@ impl Snapshot { .expect("Failed to get data directory") .join(App::APP_ID) .join("snapshots") - .join(&self.id.to_string()) + .join(self.id.to_string()) .with_extension("ron") } } diff --git a/src/app/pages/snapshots/mod.rs b/src/app/pages/snapshots/mod.rs index e613136..9891bdb 100644 --- a/src/app/pages/snapshots/mod.rs +++ b/src/app/pages/snapshots/mod.rs @@ -1,5 +1,5 @@ use config::Snapshot; -use cosmic::{iced::Length, widget, Application, Element, Task}; +use cosmic::{Application, Element, Task, iced::Length, widget}; use cosmic_ext_config_templates::load_template; use dirs::data_local_dir; @@ -160,10 +160,10 @@ impl Snapshots { .unwrap() .join(App::APP_ID) .join("snapshots"); - if !path.exists() { - if let Err(e) = std::fs::create_dir_all(&path) { - log::error!("{e}"); - } + if !path.exists() + && let Err(e) = std::fs::create_dir_all(&path) + { + log::error!("{e}"); } let snapshot = Snapshot::new(name, kind); match ron::to_string(&snapshot) { @@ -181,7 +181,7 @@ impl Snapshots { } Message::DeleteSnapshot(snapshot) => { if snapshot.path().exists() { - if let Err(e) = std::fs::remove_file(&snapshot.path()) { + if let Err(e) = std::fs::remove_file(snapshot.path()) { log::error!("Failed to delete layout: {}", e); return Task::batch(tasks); } diff --git a/src/app/subscription.rs b/src/app/subscription.rs index d5a0491..75c593d 100644 --- a/src/app/subscription.rs +++ b/src/app/subscription.rs @@ -1,14 +1,14 @@ use std::any::TypeId; use cosmic::{ + Application, cosmic_config::{self, Update}, cosmic_theme::{self, ThemeMode}, - iced::{event, keyboard::Event as KeyEvent, Event, Subscription}, - Application, + iced::{Event, Subscription, event, keyboard::Event as KeyEvent}, }; -use crate::app::message::Message; use crate::app::App; +use crate::app::message::Message; use crate::app::core::config::CONFIG_VERSION; diff --git a/src/app/update.rs b/src/app/update.rs index 8bddd04..6f1f48b 100644 --- a/src/app/update.rs +++ b/src/app/update.rs @@ -1,10 +1,10 @@ use cosmic::{ + Application, Task, app::{self}, widget::{self, menu::Action}, - Application, Task, }; -use crate::app::{dialog::DialogPage, pages::snapshots::config::SnapshotKind, App}; +use crate::app::{App, dialog::DialogPage, pages::snapshots::config::SnapshotKind}; use crate::app::{message::Message, pages::layouts::dialog::CreateLayoutDialog}; use super::Cosmic; @@ -52,9 +52,9 @@ impl Cosmic { Message::Shortcuts(message) => { tasks.push(app.shortcuts.update(message).map(cosmic::action::app)) } - Message::Snapshots(message) => match message { - _ => tasks.push(app.snapshots.update(message).map(cosmic::action::app)), - }, + Message::Snapshots(message) => { + tasks.push(app.snapshots.update(message).map(cosmic::action::app)) + } Message::ColorSchemes(message) => match *message { pages::color_schemes::Message::SaveCurrentColorScheme(None) => { tasks.push(app.update(Message::ToggleDialogPage( @@ -72,7 +72,7 @@ impl Cosmic { Message::UpdatePanelLayoutPosition(entity, name, mut preview) => { app.layouts.panel_model.activate(entity); if let Some(position) = app.layouts.panel_model.data::(entity) { - preview.panel.position = position.clone(); + preview.panel.position = *position; tasks.push(app.update(Message::DialogUpdate(DialogPage::CreateLayout( CreateLayoutDialog::new(name, preview, None), )))) @@ -81,7 +81,7 @@ impl Cosmic { Message::UpdateDockLayoutPosition(entity, name, mut preview) => { app.layouts.dock_model.activate(entity); if let Some(position) = app.layouts.dock_model.data::(entity) { - preview.dock.position = position.clone(); + preview.dock.position = *position; tasks.push(app.update(Message::DialogUpdate(DialogPage::CreateLayout( CreateLayoutDialog::new(name, preview, None), )))) diff --git a/src/app/view.rs b/src/app/view.rs index 67ea738..f960585 100644 --- a/src/app/view.rs +++ b/src/app/view.rs @@ -1,9 +1,10 @@ use cosmic::{ + Element, iced::{Alignment, Length}, - widget, Element, + widget, }; -use crate::app::{message::Message, page::Page, App}; +use crate::app::{App, message::Message, page::Page}; use super::Cosmic; diff --git a/src/app/core/localize.rs b/src/localize.rs similarity index 82% rename from src/app/core/localize.rs rename to src/localize.rs index e53e0e2..d7976dd 100644 --- a/src/app/core/localize.rs +++ b/src/localize.rs @@ -3,8 +3,8 @@ use std::sync::LazyLock; use i18n_embed::{ - fluent::{fluent_language_loader, FluentLanguageLoader}, DefaultLocalizer, LanguageLoader, Localizer, + fluent::{FluentLanguageLoader, fluent_language_loader}, }; use rust_embed::RustEmbed; @@ -25,11 +25,11 @@ pub static LANGUAGE_LOADER: LazyLock = LazyLock::new(|| { #[macro_export] macro_rules! fl { ($message_id:literal) => {{ - i18n_embed_fl::fl!($crate::app::core::localize::LANGUAGE_LOADER, $message_id) + i18n_embed_fl::fl!($crate::localize::LANGUAGE_LOADER, $message_id) }}; ($message_id:literal, $($args:expr),*) => {{ - i18n_embed_fl::fl!($crate::app::core::localize::LANGUAGE_LOADER, $message_id, $($args), *) + i18n_embed_fl::fl!($crate::localize::LANGUAGE_LOADER, $message_id, $($args), *) }}; } diff --git a/src/main.rs b/src/main.rs index 9c5f122..91461fd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,8 +1,15 @@ -mod app; - pub use app::core::error::Error; use app::core::settings; +#[allow(unused_imports)] +#[macro_use] +extern crate log; + +#[macro_use] +pub mod localize; + +mod app; + fn main() -> Result<(), Error> { settings::init()?; cosmic::app::run::(settings::settings(), settings::flags())?;