From f62abcea4efbcd824297b269279826699c47d335 Mon Sep 17 00:00:00 2001 From: Ashley Wulber <48420062+wash2@users.noreply.github.com> Date: Wed, 18 Mar 2026 12:21:57 -0400 Subject: [PATCH 01/28] feat: rebase libcosmic onto iced 0.14 --- Cargo.lock | 2613 +++++++++++++++++++-------------------- Cargo.toml | 10 +- src/main.rs | 40 +- src/menu.rs | 10 +- src/password_manager.rs | 2 +- src/terminal_box.rs | 175 ++- 6 files changed, 1432 insertions(+), 1418 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 255a7db..cd78954 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -20,75 +20,78 @@ checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618" [[package]] name = "accesskit" -version = "0.16.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.22.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" +dependencies = [ + "uuid", +] [[package]] name = "accesskit_atspi_common" -version = "0.9.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.15.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" dependencies = [ "accesskit", "accesskit_consumer", "atspi-common", "serde", - "thiserror 1.0.69", - "zvariant 3.15.2", + "zvariant", ] [[package]] name = "accesskit_consumer" -version = "0.24.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.32.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" dependencies = [ "accesskit", - "immutable-chunkmap", + "hashbrown 0.16.1", ] [[package]] name = "accesskit_macos" -version = "0.17.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.23.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" dependencies = [ "accesskit", "accesskit_consumer", + "hashbrown 0.16.1", "objc2 0.5.2", "objc2-app-kit 0.2.2", "objc2-foundation 0.2.2", - "once_cell", ] [[package]] name = "accesskit_unix" -version = "0.12.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.18.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" dependencies = [ "accesskit", "accesskit_atspi_common", "atspi", - "futures-lite 1.13.0", + "futures-lite", "serde", "tokio", "tokio-stream", - "zbus 3.15.2", + "zbus", ] [[package]] name = "accesskit_windows" -version = "0.22.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.30.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" dependencies = [ "accesskit", "accesskit_consumer", - "paste", + "hashbrown 0.16.1", "static_assertions", - "windows 0.54.0", + "windows 0.61.3", + "windows-core 0.61.2", ] [[package]] name = "accesskit_winit" -version = "0.22.0" -source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13-rc#c46afc041b1968a5af0186fa6aba3ea9cf24c8c3" +version = "0.30.0" +source = "git+https://github.com/wash2/accesskit?tag=cosmic-0.14#f0599eed5f18111228266fe3f28991cc48b5964f" dependencies = [ "accesskit", "accesskit_macos", @@ -149,15 +152,15 @@ dependencies = [ "libc", "log", "miow", - "parking_lot 0.12.5", + "parking_lot", "piper", - "polling 3.11.0", + "polling", "regex-automata", "rustix 1.1.4", "rustix-openpty", "serde", "signal-hook", - "unicode-width 0.2.2", + "unicode-width", "vte", "windows-sys 0.59.0", ] @@ -223,7 +226,7 @@ dependencies = [ "log", "ndk", "ndk-context", - "ndk-sys 0.6.0+11769913", + "ndk-sys", "num_enum", "thiserror 1.0.69", ] @@ -260,9 +263,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" @@ -337,7 +340,7 @@ checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -391,7 +394,7 @@ dependencies = [ "serde_repr", "tokio", "url", - "zbus 5.13.2", + "zbus", ] [[package]] @@ -411,17 +414,7 @@ dependencies = [ "wayland-backend", "wayland-client", "wayland-protocols", - "zbus 5.13.2", -] - -[[package]] -name = "async-broadcast" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" -dependencies = [ - "event-listener 2.5.3", - "futures-core", + "zbus", ] [[package]] @@ -430,7 +423,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" dependencies = [ - "event-listener 5.4.1", + "event-listener", "event-listener-strategy", "futures-core", "pin-project-lite", @@ -456,32 +449,12 @@ checksum = "c96bf972d85afc50bf5ab8fe2d54d1586b4e0b46c97c50a0c9e71e2f7bcd812a" dependencies = [ "async-task", "concurrent-queue", - "fastrand 2.3.0", - "futures-lite 2.6.1", + "fastrand", + "futures-lite", "pin-project-lite", "slab", ] -[[package]] -name = "async-io" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" -dependencies = [ - "async-lock 2.8.0", - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-lite 1.13.0", - "log", - "parking", - "polling 2.8.0", - "rustix 0.37.28", - "slab", - "socket2 0.4.10", - "waker-fn", -] - [[package]] name = "async-io" version = "2.6.0" @@ -492,51 +465,25 @@ dependencies = [ "cfg-if", "concurrent-queue", "futures-io", - "futures-lite 2.6.1", + "futures-lite", "parking", - "polling 3.11.0", + "polling", "rustix 1.1.4", "slab", "windows-sys 0.61.2", ] -[[package]] -name = "async-lock" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" -dependencies = [ - "event-listener 2.5.3", -] - [[package]] name = "async-lock" version = "3.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" dependencies = [ - "event-listener 5.4.1", + "event-listener", "event-listener-strategy", "pin-project-lite", ] -[[package]] -name = "async-process" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88" -dependencies = [ - "async-io 1.13.0", - "async-lock 2.8.0", - "async-signal", - "blocking", - "cfg-if", - "event-listener 3.1.0", - "futures-lite 1.13.0", - "rustix 0.38.44", - "windows-sys 0.48.0", -] - [[package]] name = "async-process" version = "2.5.0" @@ -544,14 +491,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc50921ec0055cdd8a16de48773bfeec5c972598674347252c0399676be7da75" dependencies = [ "async-channel", - "async-io 2.6.0", - "async-lock 3.4.2", + "async-io", + "async-lock", "async-signal", "async-task", "blocking", "cfg-if", - "event-listener 5.4.1", - "futures-lite 2.6.1", + "event-listener", + "futures-lite", "rustix 1.1.4", ] @@ -563,7 +510,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -572,8 +519,8 @@ version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43c070bbf59cd3570b6b2dd54cd772527c7c3620fce8be898406dd3ed6adc64c" dependencies = [ - "async-io 2.6.0", - "async-lock 3.4.2", + "async-io", + "async-lock", "atomic-waker", "cfg-if", "futures-core", @@ -598,7 +545,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -619,62 +566,51 @@ dependencies = [ [[package]] name = "atspi" -version = "0.19.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6059f350ab6f593ea00727b334265c4dfc7fd442ee32d264794bd9bdc68e87ca" +checksum = "c77886257be21c9cd89a4ae7e64860c6f0eefca799bb79127913052bd0eefb3d" dependencies = [ "atspi-common", - "atspi-connection", "atspi-proxies", ] [[package]] name = "atspi-common" -version = "0.3.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92af95f966d2431f962bc632c2e68eda7777330158bf640c4af4249349b2cdf5" +checksum = "20c5617155740c98003016429ad13fe43ce7a77b007479350a9f8bf95a29f63d" dependencies = [ "enumflags2", "serde", "static_assertions", - "zbus 3.15.2", - "zbus_names 2.6.1", - "zvariant 3.15.2", -] - -[[package]] -name = "atspi-connection" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c65e7d70f86d4c0e3b2d585d9bf3f979f0b19d635a336725a88d279f76b939" -dependencies = [ - "atspi-common", - "atspi-proxies", - "futures-lite 1.13.0", - "zbus 3.15.2", + "zbus", + "zbus-lockstep", + "zbus-lockstep-macros", + "zbus_names", + "zvariant", ] [[package]] name = "atspi-proxies" -version = "0.3.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6495661273703e7a229356dcbe8c8f38223d697aacfaf0e13590a9ac9977bb52" +checksum = "2230e48787ed3eb4088996eab66a32ca20c0b67bbd4fd6cdfe79f04f1f04c9fc" dependencies = [ "atspi-common", "serde", - "zbus 3.15.2", + "zbus", ] [[package]] name = "auto_enums" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c170965892137a3a9aeb000b4524aa3cc022a310e709d848b6e1cdce4ab4781" +checksum = "65398a2893f41bce5c9259f6e1a4f03fbae40637c1bdc755b4f387f48c613b03" dependencies = [ "derive_utils", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -743,18 +679,18 @@ dependencies = [ [[package]] name = "bit-set" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0481a0e032742109b1133a095184ee93d88f3dc9e0d28a5d033dc77a073f44f" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2c54ff287cfc0a34f38a6b832ea1bd8e448a330b3e40a50859e6488bee07f22" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] name = "bit_field" @@ -825,7 +761,7 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" dependencies = [ - "objc2 0.6.3", + "objc2 0.6.4", ] [[package]] @@ -837,10 +773,20 @@ dependencies = [ "async-channel", "async-task", "futures-io", - "futures-lite 2.6.1", + "futures-lite", "piper", ] +[[package]] +name = "borsh" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" +dependencies = [ + "bytes", + "cfg_aliases", +] + [[package]] name = "brotli-decompressor" version = "5.0.0" @@ -906,7 +852,7 @@ checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -946,20 +892,6 @@ dependencies = [ "displaydoc", ] -[[package]] -name = "calloop" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" -dependencies = [ - "bitflags 2.11.0", - "log", - "polling 3.11.0", - "rustix 0.38.44", - "slab", - "thiserror 1.0.69", -] - [[package]] name = "calloop" version = "0.14.4" @@ -967,31 +899,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4dbf9978365bac10f54d1d4b04f7ce4427e51f71d61f2fe15e3fed5166474df7" dependencies = [ "bitflags 2.11.0", - "polling 3.11.0", + "polling", "rustix 1.1.4", "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 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.4", + "calloop", "rustix 1.1.4", "wayland-backend", "wayland-client", @@ -1008,9 +928,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.56" +version = "1.2.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" +checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" dependencies = [ "find-msvc-tools", "jobserver", @@ -1041,12 +961,6 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" -[[package]] -name = "cfg_aliases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" - [[package]] name = "cfg_aliases" version = "0.2.1" @@ -1065,7 +979,7 @@ dependencies = [ "pure-rust-locales", "serde", "wasm-bindgen", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -1096,7 +1010,7 @@ dependencies = [ [[package]] name = "clipboard_macos" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ "objc", "objc-foundation", @@ -1106,7 +1020,7 @@ dependencies = [ [[package]] name = "clipboard_wayland" version = "0.2.2" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ "dnd", "mime 0.1.0", @@ -1116,7 +1030,7 @@ dependencies = [ [[package]] name = "clipboard_x11" version = "0.4.2" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ "thiserror 1.0.69", "x11rb", @@ -1131,7 +1045,7 @@ dependencies = [ "bitflags 1.3.2", "block", "cocoa-foundation", - "core-foundation", + "core-foundation 0.9.4", "core-graphics", "foreign-types", "libc", @@ -1146,20 +1060,21 @@ checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" dependencies = [ "bitflags 1.3.2", "block", - "core-foundation", - "core-graphics-types", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", "libc", "objc", ] [[package]] name = "codespan-reporting" -version = "0.11.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81" dependencies = [ + "serde", "termcolor", - "unicode-width 0.1.14", + "unicode-width", ] [[package]] @@ -1170,40 +1085,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "colorchoice" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" - -[[package]] -name = "com" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6" -dependencies = [ - "com_macros", -] - -[[package]] -name = "com_macros" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d375883580a668c7481ea6631fc1a8863e33cc335bf56bfad8d7e6d4b04b13a5" -dependencies = [ - "com_macros_support", - "proc-macro2", - "syn 1.0.109", -] - -[[package]] -name = "com_macros_support" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad899a1087a9296d5644792d7cb72b8e34c1bec8e7d4fbc002230169a6e8710c" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "combine" @@ -1243,12 +1127,12 @@ dependencies = [ [[package]] name = "compio-driver" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f5f90a253c667513b9db8138d7db2a034437094fde76e4f57542661a7f9cfda" +checksum = "ec8557d3804525f0e97594681f675929931782c9f8783a51c9f86da86b819150" dependencies = [ "cfg-if", - "cfg_aliases 0.2.1", + "cfg_aliases", "compio-buf", "compio-log", "crossbeam-queue", @@ -1258,9 +1142,9 @@ dependencies = [ "once_cell", "paste", "pin-project-lite", - "polling 3.11.0", + "polling", "smallvec", - "socket2 0.6.2", + "socket2", "synchrony", "thin-cell", "windows-sys 0.61.2", @@ -1273,7 +1157,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65ee36e1acf2cec4835efe9a986c012b2462c5ef53580e4ee84ae6d5a3d8e3b3" dependencies = [ "cfg-if", - "cfg_aliases 0.2.1", + "cfg_aliases", "compio-buf", "compio-driver", "compio-io", @@ -1312,10 +1196,10 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f05ed201484967dc70de77a8f7a02b29aaa8e6c81cbea2e75492ee0c8d97766b" dependencies = [ - "proc-macro-crate 3.4.0", + "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -1336,7 +1220,7 @@ dependencies = [ "pin-project-lite", "scoped-tls", "slab", - "socket2 0.6.2", + "socket2", "windows-sys 0.61.2", ] @@ -1371,6 +1255,16 @@ dependencies = [ "libc", ] +[[package]] +name = "core-foundation" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation-sys" version = "0.8.7" @@ -1384,8 +1278,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" dependencies = [ "bitflags 1.3.2", - "core-foundation", - "core-graphics-types", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", "foreign-types", "libc", ] @@ -1397,7 +1291,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" +dependencies = [ + "bitflags 2.11.0", + "core-foundation 0.10.1", "libc", ] @@ -1436,9 +1341,22 @@ version = "0.1.0" source = "git+https://github.com/pop-os/cosmic-protocols?rev=d0e95be#d0e95be25e423cfe523b11111a3666ed7aaf0dc4" dependencies = [ "bitflags 2.11.0", - "cosmic-protocols", + "cosmic-protocols 0.1.0", "libc", - "smithay-client-toolkit 0.20.0", + "smithay-client-toolkit", + "wayland-client", + "wayland-protocols", +] + +[[package]] +name = "cosmic-client-toolkit" +version = "0.2.0" +source = "git+https://github.com/pop-os/cosmic-protocols?rev=160b086#160b086abe03cd34a8a375d7fbe47b24308d1f38" +dependencies = [ + "bitflags 2.11.0", + "cosmic-protocols 0.2.0", + "libc", + "smithay-client-toolkit", "wayland-client", "wayland-protocols", ] @@ -1446,7 +1364,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1461,29 +1379,30 @@ dependencies = [ "tokio", "tracing", "xdg", - "zbus 5.13.2", + "zbus", ] [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "quote", - "syn 2.0.117", + "syn", ] [[package]] name = "cosmic-files" -version = "1.0.7" -source = "git+https://github.com/pop-os/cosmic-files.git#ee719d578cc18860dc4e707a212a53a87ecba259" +version = "1.0.8" +source = "git+https://github.com/pop-os/cosmic-files.git#49d353d369f7cb242ab55ae94ab402873a66a473" dependencies = [ "anyhow", "chrono", "compio", - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.1.0", "dirs 6.0.0", "env_logger", + "filetime", "flate2", "fork 0.6.0", "glob", @@ -1553,10 +1472,24 @@ dependencies = [ "wayland-server", ] +[[package]] +name = "cosmic-protocols" +version = "0.2.0" +source = "git+https://github.com/pop-os/cosmic-protocols?rev=160b086#160b086abe03cd34a8a375d7fbe47b24308d1f38" +dependencies = [ + "bitflags 2.11.0", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-protocols-wlr", + "wayland-scanner", + "wayland-server", +] + [[package]] name = "cosmic-settings-config" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-settings-daemon#defa9f790432c70054ca1f39737d879ada5d0252" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#e37160f14d1e7ee428f973cd2848b4e95f83dfe1" dependencies = [ "cosmic-config", "ron 0.11.0", @@ -1569,9 +1502,9 @@ dependencies = [ [[package]] name = "cosmic-settings-daemon" version = "0.1.0" -source = "git+https://github.com/pop-os/dbus-settings-bindings#0fa672f8dadb884001ef9a251b149ed432879629" +source = "git+https://github.com/pop-os/dbus-settings-bindings#507e342c21d3ce6ae41b1d4f3fa2f0ad5ee23e75" dependencies = [ - "zbus 5.13.2", + "zbus", ] [[package]] @@ -1608,10 +1541,10 @@ dependencies = [ [[package]] name = "cosmic-text" version = "0.18.2" -source = "git+https://github.com/pop-os/cosmic-text.git#f31b9d86959676d97fde54ff5907a58ab4308897" +source = "git+https://github.com/pop-os/cosmic-text.git#d5a972a2b63649fad11ea3a7e80f7dc4c592f01a" dependencies = [ "bitflags 2.11.0", - "fontdb 0.23.0", + "fontdb", "harfrust", "linebender_resource_handle", "log", @@ -1619,7 +1552,7 @@ dependencies = [ "rustc-hash 2.1.1", "self_cell", "skrifa 0.40.0", - "smol_str 0.3.2", + "smol_str", "swash", "sys-locale", "unicode-bidi", @@ -1631,7 +1564,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "almost", "configparser", @@ -1718,6 +1651,18 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" +[[package]] +name = "cryoglyph" +version = "0.1.0" +source = "git+https://github.com/pop-os/glyphon.git?tag=cosmic-0.14#c49de15bce4d8254ac136d1be9911960cc85ce12" +dependencies = [ + "cosmic-text", + "etagere", + "lru", + "rustc-hash 2.1.1", + "wgpu", +] + [[package]] name = "crypto-common" version = "0.1.7" @@ -1736,9 +1681,9 @@ checksum = "42aaeae719fd78ce501d77c6cdf01f7e96f26bcd5617a4903a1c2b97e388543a" [[package]] name = "csscolorparser" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a878cfd6075649977f548ed439564cfdbe1f190a6656a00b48af7740f2f148" +checksum = "199f851bd3cb5004c09474252c7f74e7c047441ed0979bf3688a7106a13da952" dependencies = [ "num-traits", "phf 0.13.1", @@ -1758,25 +1703,24 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f27ae1dd37df86211c42e150270f82743308803d90a6f6e6651cd730d5e1732f" -[[package]] -name = "d3d12" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdbd1f579714e3c809ebd822c81ef148b1ceaeb3d535352afc73fd0c4c6a0017" -dependencies = [ - "bitflags 2.11.0", - "libloading", - "winapi", -] - [[package]] name = "darling" version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.21.3", + "darling_macro 0.21.3", +] + +[[package]] +name = "darling" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" +dependencies = [ + "darling_core 0.23.0", + "darling_macro 0.23.0", ] [[package]] @@ -1790,7 +1734,20 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.117", + "syn", +] + +[[package]] +name = "darling_core" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn", ] [[package]] @@ -1799,9 +1756,20 @@ version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ - "darling_core", + "darling_core 0.21.3", "quote", - "syn 2.0.117", + "syn", +] + +[[package]] +name = "darling_macro" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" +dependencies = [ + "darling_core 0.23.0", + "quote", + "syn", ] [[package]] @@ -1812,9 +1780,9 @@ checksum = "be1e0bca6c3637f992fc1cc7cbc52a78c1ef6db076dbf1059c4323d6a2048376" [[package]] name = "deflate64" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26bf8fc351c5ed29b5c2f0cbbac1b209b74f60ecd62e675a998df72c49af5204" +checksum = "807800ff3288b621186fe0a8f3392c4652068257302709c24efd918c3dffcdc2" [[package]] name = "deranged" @@ -1826,38 +1794,27 @@ dependencies = [ "serde_core", ] -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "derive_setters" version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b7e6f6fa1f03c14ae082120b84b3c7fbd7b8588d924cf2d7c3daf9afd49df8b9" dependencies = [ - "darling", + "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] name = "derive_utils" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccfae181bab5ab6c5478b2ccb69e4c68a02f8c3ec72f6616bfec9dbc599d2ee0" +checksum = "362f47930db19fe7735f527e6595e4900316b893ebf6d48ad3d31be928d57dd6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -1934,22 +1891,16 @@ dependencies = [ "winapi", ] -[[package]] -name = "dispatch" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" - [[package]] name = "dispatch2" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" +checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" dependencies = [ "bitflags 2.11.0", "block2 0.6.2", "libc", - "objc2 0.6.3", + "objc2 0.6.4", ] [[package]] @@ -1960,14 +1911,14 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] name = "dlib" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" +checksum = "ab8ecd87370524b461f8557c119c405552c396ed91fc0a8eec68679eab26f94a" dependencies = [ "libloading", ] @@ -1975,12 +1926,12 @@ dependencies = [ [[package]] name = "dnd" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ "bitflags 2.11.0", "mime 0.1.0", "raw-window-handle", - "smithay-client-toolkit 0.19.2", + "smithay-client-toolkit", "smithay-clipboard", ] @@ -2001,8 +1952,8 @@ checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "dpi" -version = "0.1.1" -source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13-rc#dd46a1499bcc38f2134ab869e8860a32e091c55b" +version = "0.1.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" [[package]] name = "drm" @@ -2079,7 +2030,7 @@ checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -2122,7 +2073,7 @@ checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -2166,23 +2117,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - -[[package]] -name = "event-listener" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2" -dependencies = [ - "concurrent-queue", - "parking", - "pin-project-lite", -] - [[package]] name = "event-listener" version = "5.4.1" @@ -2200,7 +2134,7 @@ version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" dependencies = [ - "event-listener 5.4.1", + "event-listener", "pin-project-lite", ] @@ -2225,15 +2159,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd2e7510819d6fbf51a5545c8f922716ecfb14df168a3242f7d33e0239efe6a1" -[[package]] -name = "fastrand" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] - [[package]] name = "fastrand" version = "2.3.0" @@ -2257,7 +2182,7 @@ checksum = "a0aca10fb742cb43f9e7bb8467c91aa9bcb8e3ffbc6a6f7389bb93ffc920577d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -2332,6 +2257,15 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" +[[package]] +name = "float-cmp" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b09cf3155332e944990140d967ff5eceb70df778b34f77d8075db46e4704e6d8" +dependencies = [ + "num-traits", +] + [[package]] name = "float_next_after" version = "1.0.0" @@ -2404,6 +2338,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "font-types" version = "0.10.1" @@ -2431,20 +2371,6 @@ dependencies = [ "roxmltree", ] -[[package]] -name = "fontdb" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e32eac81c1135c1df01d4e6d4233c47ba11f6a6d07f33e0bba09d18797077770" -dependencies = [ - "fontconfig-parser", - "log", - "memmap2 0.9.10", - "slotmap", - "tinyvec", - "ttf-parser 0.21.1", -] - [[package]] name = "fontdb" version = "0.23.0" @@ -2456,7 +2382,7 @@ dependencies = [ "memmap2 0.9.10", "slotmap", "tinyvec", - "ttf-parser 0.25.1", + "ttf-parser", ] [[package]] @@ -2477,7 +2403,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -2595,28 +2521,13 @@ version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" -[[package]] -name = "futures-lite" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" -dependencies = [ - "fastrand 1.9.0", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - [[package]] name = "futures-lite" version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" dependencies = [ - "fastrand 2.3.0", + "fastrand", "futures-core", "futures-io", "parking", @@ -2631,7 +2542,7 @@ checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -2663,6 +2574,21 @@ dependencies = [ "slab", ] +[[package]] +name = "generator" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52f04ae4152da20c76fe800fa48659201d5cf627c5149ca0b707b69d7eef6cf9" +dependencies = [ + "cc", + "cfg-if", + "libc", + "log", + "rustversion", + "windows-link 0.2.1", + "windows-result 0.4.1", +] + [[package]] name = "generic-array" version = "0.14.7" @@ -2680,7 +2606,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8" dependencies = [ "rustix 1.1.4", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -2703,20 +2629,20 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "r-efi", + "r-efi 5.3.0", "wasip2", "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139ef39800118c7683f2fd3c98c1b23c09ae076556b435f8e9064ae108aaeeec" +checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" dependencies = [ "cfg-if", "libc", - "r-efi", + "r-efi 6.0.0", "wasip2", "wasip3", ] @@ -2799,9 +2725,9 @@ dependencies = [ [[package]] name = "glow" -version = "0.13.1" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1" +checksum = "c5e5ea60d70410161c8bf5da3fdfeaa1c72ed2c15f8bbb9d19fe3a4fad085f08" dependencies = [ "js-sys", "slotmap", @@ -2839,15 +2765,14 @@ dependencies = [ [[package]] name = "gpu-allocator" -version = "0.26.0" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd4240fc91d3433d5e5b0fc5b67672d771850dc19bbee03c1381e19322803d7" +checksum = "c151a2a5ef800297b4e79efa4f4bec035c5f51d5ae587287c9b952bdf734cacd" dependencies = [ "log", "presser", "thiserror 1.0.69", - "winapi", - "windows 0.52.0", + "windows 0.58.0", ] [[package]] @@ -2894,14 +2819,15 @@ checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" dependencies = [ "cfg-if", "crunchy", + "num-traits", "zerocopy", ] [[package]] name = "harfrust" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f9f40651a03bc0f7316bd75267ff5767e93017ef3cfffe76c6aa7252cc5a31c" +checksum = "9da2e5ae821f6e96664977bf974d6d6a2d6682f9ccee23e62ec1d134246845f9" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -2922,7 +2848,7 @@ version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" dependencies = [ - "foldhash", + "foldhash 0.1.5", ] [[package]] @@ -2930,20 +2856,8 @@ name = "hashbrown" version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" - -[[package]] -name = "hassle-rs" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890" dependencies = [ - "bitflags 2.11.0", - "com", - "libc", - "libloading", - "thiserror 1.0.69", - "widestring", - "winapi", + "foldhash 0.2.0", ] [[package]] @@ -2958,12 +2872,6 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - [[package]] name = "hermit-abi" version = "0.5.2" @@ -3013,11 +2921,11 @@ dependencies = [ [[package]] name = "home" -version = "0.5.11" +version = "0.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +checksum = "cc627f471c528ff0c4a49e1d5e60450c8f6461dd6d10ba9dcd3a61d3dff7728d" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -3047,7 +2955,7 @@ dependencies = [ "i18n-embed-impl", "intl-memoizer", "log", - "parking_lot 0.12.5", + "parking_lot", "rust-embed", "sys-locale", "thiserror 1.0.69", @@ -3070,7 +2978,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.117", + "syn", "unic-langid", ] @@ -3084,7 +2992,7 @@ dependencies = [ "i18n-config", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -3113,26 +3021,29 @@ dependencies = [ [[package]] name = "iced" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "dnd", "iced_accessibility", "iced_core", + "iced_debug", "iced_futures", + "iced_program", "iced_renderer", + "iced_runtime", "iced_widget", "iced_winit", "image", "mime 0.1.0", - "thiserror 1.0.69", + "thiserror 2.0.18", "window_clipboard", ] [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "accesskit", "accesskit_winit", @@ -3140,32 +3051,42 @@ dependencies = [ [[package]] name = "iced_core" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "bitflags 2.11.0", "bytes", - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.2.0", "dnd", "glam", + "lilt", "log", "mime 0.1.0", "num-traits", - "once_cell", "palette", "raw-window-handle", "rustc-hash 2.1.1", "serde", - "smol_str 0.2.2", - "thiserror 1.0.69", + "smol_str", + "thiserror 2.0.18", "web-time", "window_clipboard", ] +[[package]] +name = "iced_debug" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +dependencies = [ + "iced_core", + "iced_futures", + "log", +] + [[package]] name = "iced_futures" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "futures", "iced_core", @@ -3173,25 +3094,13 @@ dependencies = [ "rustc-hash 2.1.1", "tokio", "wasm-bindgen-futures", - "wasm-timer", -] - -[[package]] -name = "iced_glyphon" -version = "0.6.0" -source = "git+https://github.com/pop-os/glyphon.git?tag=iced-0.14-dev#6ef9d12a20cfd0f7bdf38136a26ded9f7459ec8b" -dependencies = [ - "cosmic-text", - "etagere", - "lru", - "rustc-hash 2.1.1", - "wgpu", + "wasmtimer", ] [[package]] name = "iced_graphics" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -3203,47 +3112,56 @@ dependencies = [ "kamadak-exif", "log", "lyon_path", - "once_cell", "raw-window-handle", "rustc-hash 2.1.1", - "thiserror 1.0.69", + "thiserror 2.0.18", "unicode-segmentation", ] +[[package]] +name = "iced_program" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +dependencies = [ + "iced_graphics", + "iced_runtime", +] + [[package]] name = "iced_renderer" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "iced_graphics", "iced_tiny_skia", "iced_wgpu", "log", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] name = "iced_runtime" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "bytes", - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.2.0", "dnd", "iced_core", "iced_futures", "raw-window-handle", - "thiserror 1.0.69", + "thiserror 2.0.18", "window_clipboard", ] [[package]] name = "iced_tiny_skia" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "bytemuck", "cosmic-text", + "iced_debug", "iced_graphics", "kurbo 0.10.4", "log", @@ -3255,26 +3173,26 @@ dependencies = [ [[package]] name = "iced_wgpu" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "as-raw-xcb-connection", "bitflags 2.11.0", "bytemuck", - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.2.0", + "cryoglyph", "futures", "glam", "guillotiere", - "iced_glyphon", + "iced_debug", "iced_graphics", "log", "lyon", - "once_cell", "raw-window-handle", "resvg", "rustc-hash 2.1.1", "rustix 0.38.44", - "thiserror 1.0.69", + "thiserror 2.0.18", "tiny-xlib", "wayland-backend", "wayland-client", @@ -3286,39 +3204,40 @@ dependencies = [ [[package]] name = "iced_widget" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.2" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.2.0", "dnd", "iced_renderer", "iced_runtime", "log", "num-traits", - "once_cell", "ouroboros", "rustc-hash 2.1.1", - "thiserror 1.0.69", + "thiserror 2.0.18", "unicode-segmentation", "window_clipboard", ] [[package]] name = "iced_winit" -version = "0.14.0-dev" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +version = "0.14.0" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.2.0", + "cursor-icon", "dnd", + "iced_debug", "iced_futures", "iced_graphics", + "iced_program", "iced_runtime", "log", "raw-window-handle", "rustc-hash 2.1.1", "rustix 0.38.44", - "thiserror 1.0.69", - "tracing", + "thiserror 2.0.18", "wasm-bindgen-futures", "wayland-backend", "wayland-client", @@ -3327,6 +3246,7 @@ dependencies = [ "winapi", "window_clipboard", "winit", + "winit-core", "xkbcommon 0.7.0", "xkbcommon-dl", "xkeysym", @@ -3778,9 +3698,9 @@ dependencies = [ [[package]] name = "image" -version = "0.25.9" +version = "0.25.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6506c6c10786659413faa717ceebcb8f70731c0a60cbae39795fdf114519c1a" +checksum = "85ab80394333c02fe689eaf900ab500fbd0c2213da414687ebf995a65d5a6104" dependencies = [ "bytemuck", "byteorder-lite", @@ -3797,7 +3717,7 @@ dependencies = [ "rgb", "tiff", "zune-core 0.5.1", - "zune-jpeg 0.5.12", + "zune-jpeg 0.5.13", ] [[package]] @@ -3812,9 +3732,9 @@ dependencies = [ [[package]] name = "imagesize" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "029d73f573d8e8d63e6d5020011d3255b28c3ba85d6cf870a07184ed23de9284" +checksum = "edcd27d72f2f071c64249075f42e205ff93c9a4c5f6c6da53e79ed9f9832c285" [[package]] name = "imgref" @@ -3822,15 +3742,6 @@ version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7c5cedc30da3a610cac6b4ba17597bdf7152cf974e8aab3afb3d54455e371c8" -[[package]] -name = "immutable-chunkmap" -version = "2.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3e98b1520e49e252237edc238a39869da9f3241f2ec19dc788c1d24694d1e4" -dependencies = [ - "arrayvec", -] - [[package]] name = "indexmap" version = "1.9.3" @@ -3865,9 +3776,9 @@ dependencies = [ [[package]] name = "inotify" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" +checksum = "bd5b3eaf1a28b758ac0faa5a4254e8ab2705605496f1b1f3fbbc3988ad73d199" dependencies = [ "bitflags 2.11.0", "inotify-sys", @@ -3893,15 +3804,6 @@ dependencies = [ "generic-array", ] -[[package]] -name = "instant" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" -dependencies = [ - "cfg-if", -] - [[package]] name = "interpolate_name" version = "0.2.4" @@ -3910,7 +3812,7 @@ checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -3932,17 +3834,6 @@ dependencies = [ "unic-langid", ] -[[package]] -name = "io-lifetimes" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" -dependencies = [ - "hermit-abi 0.3.9", - "libc", - "windows-sys 0.48.0", -] - [[package]] name = "is-docker" version = "0.2.0" @@ -3991,9 +3882,9 @@ checksum = "84de9d95a6d2547d9b77ee3f25fa0ee32e3c3a6484d47a55adebc0439c077992" [[package]] name = "jiff" -version = "0.2.21" +version = "0.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3e3d65f018c6ae946ab16e80944b97096ed73c35b221d1c478a6c81d8f57940" +checksum = "1a3546dc96b6d42c5f24902af9e2538e82e39ad350b0c766eb3fbf2d8f3d8359" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -4006,20 +3897,20 @@ dependencies = [ [[package]] name = "jiff-static" -version = "0.2.21" +version = "0.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a17c2b211d863c7fde02cbea8a3c1a439b98e109286554f2860bdded7ff83818" +checksum = "2a8c8b344124222efd714b73bb41f8b5120b27a7cc1c75593a6ff768d9d05aa4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] name = "jiff-tzdb" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68971ebff725b9e2ca27a601c5eb38a4c5d64422c4cbab0c535f248087eda5c2" +checksum = "c900ef84826f1338a557697dc8fc601df9ca9af4ac137c7fb61d4c6f2dfd3076" [[package]] name = "jiff-tzdb-platform" @@ -4062,17 +3953,11 @@ dependencies = [ "libc", ] -[[package]] -name = "jpeg-decoder" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00810f1d8b74be64b13dbf3db89ac67740615d6c891f0e7b6179326533011a07" - [[package]] name = "js-sys" -version = "0.3.88" +version = "0.3.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7e709f3e3d22866f9c25b3aff01af289b18422cc8b4262fb19103ee80fe513d" +checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c" dependencies = [ "once_cell", "wasm-bindgen", @@ -4260,13 +4145,23 @@ dependencies = [ [[package]] name = "kamadak-exif" -version = "0.5.5" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef4fc70d0ab7e5b6bafa30216a6b48705ea964cdfc29c050f2412295eba58077" +checksum = "1130d80c7374efad55a117d715a3af9368f0fa7a2c54573afc15a188cd984837" dependencies = [ "mutate_once", ] +[[package]] +name = "keyboard-types" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fbe853b403ae61a04233030ae8a79d94975281ed9770a1f9e246732b534b28d" +dependencies = [ + "bitflags 2.11.0", + "serde", +] + [[package]] name = "khronos-egl" version = "6.0.0" @@ -4286,9 +4181,9 @@ checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" [[package]] name = "known-folders" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "770919970f7d2f74fea948900d35e2ef64f44129e8ae4015f59de1f0aca7c2a5" +checksum = "7a1886916523694cd6ea3d175f03a1e5010699a2a4cc13696d83d7bea1d80638" dependencies = [ "windows-sys 0.61.2", ] @@ -4360,19 +4255,19 @@ checksum = "2c4a545a15244c7d945065b5d392b2d2d7f21526fba56ce51467b06ed445e8f7" [[package]] name = "libc" -version = "0.2.182" +version = "0.2.183" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" +checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#384e8f6e219bb458720eafa5bb971b832c057f23" +source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" dependencies = [ "apply", "ashpd 0.12.3", "auto_enums", - "cosmic-client-toolkit", + "cosmic-client-toolkit 0.2.0", "cosmic-config", "cosmic-freedesktop-icons", "cosmic-settings-config", @@ -4380,6 +4275,7 @@ dependencies = [ "cosmic-theme", "css-color", "derive_setters", + "float-cmp 0.10.0", "freedesktop-desktop-entry", "futures", "i18n-embed", @@ -4400,7 +4296,6 @@ dependencies = [ "mime 0.3.17", "palette", "phf 0.13.1", - "raw-window-handle", "rfd", "rust-embed", "rustix 1.1.4", @@ -4413,7 +4308,7 @@ dependencies = [ "tracing", "unicode-segmentation", "url", - "zbus 5.13.2", + "zbus", ] [[package]] @@ -4433,7 +4328,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -4444,13 +4339,23 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.12" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0b95e02c851351f877147b7deea7b1afb1df71b63aa5f8270716e0c5720616" +checksum = "1744e39d1d6a9948f4f388969627434e31128196de472883b39f148769bfe30a" dependencies = [ "bitflags 2.11.0", "libc", - "redox_syscall 0.7.1", + "plain", + "redox_syscall 0.7.3", +] + +[[package]] +name = "lilt" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f67562e5eff6b20553fa9be1c503356768420994e28f67e3eafe6f41910e57ad" +dependencies = [ + "web-time", ] [[package]] @@ -4459,12 +4364,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4a5ff6bcca6c4867b1c4fd4ef63e4db7436ef363e0ad7531d1558856bae64f4" -[[package]] -name = "linux-raw-sys" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" - [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -4523,6 +4422,20 @@ version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" +[[package]] +name = "loom" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" +dependencies = [ + "cfg-if", + "generator", + "pin-utils", + "scoped-tls", + "tracing", + "tracing-subscriber", +] + [[package]] name = "loop9" version = "0.1.5" @@ -4534,15 +4447,15 @@ dependencies = [ [[package]] name = "lru" -version = "0.12.5" +version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" [[package]] name = "lyon" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbcb7d54d54c8937364c9d41902d066656817dce1e03a44e5533afebd1ef4352" +checksum = "bd0578bdecb7d6d88987b8b2b1e3a4e2f81df9d0ece1078623324a567904e7b7" dependencies = [ "lyon_algorithms", "lyon_tessellation", @@ -4550,9 +4463,9 @@ dependencies = [ [[package]] name = "lyon_algorithms" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c0829e28c4f336396f250d850c3987e16ce6db057ffe047ce0dd54aab6b647" +checksum = "9815fac08e6fd96733a11dce4f9d15a3f338e96a2e2311ee21e1b738efc2bc0f" dependencies = [ "lyon_path", "num-traits", @@ -4560,9 +4473,9 @@ dependencies = [ [[package]] name = "lyon_geom" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e260b6de923e6e47adfedf6243013a7a874684165a6a277594ee3906021b2343" +checksum = "4336502e29e32af93cf2dad2214ed6003c17ceb5bd499df77b1de663b9042b92" dependencies = [ "arrayvec", "euclid", @@ -4571,9 +4484,9 @@ dependencies = [ [[package]] name = "lyon_path" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aeca86bcfd632a15984ba029b539ffb811e0a70bf55e814ef8b0f54f506fdeb" +checksum = "5c463f9c428b7fc5ec885dcd39ce4aa61e29111d0e33483f6f98c74e89d8621e" dependencies = [ "lyon_geom", "num-traits", @@ -4581,9 +4494,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3f586142e1280335b1bc89539f7c97dd80f08fc43e9ab1b74ef0a42b04aa353" +checksum = "05a35a7dd71b845ff317ce1834c4185506b79790294bde397df8d5c23031e357" dependencies = [ "float_next_after", "lyon_path", @@ -4609,6 +4522,15 @@ dependencies = [ "libc", ] +[[package]] +name = "matchers" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" +dependencies = [ + "regex-automata", +] + [[package]] name = "maybe-rayon" version = "0.1.1" @@ -4653,15 +4575,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.9.1" @@ -4673,13 +4586,13 @@ dependencies = [ [[package]] name = "metal" -version = "0.29.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21" +checksum = "00c15a6f673ff72ddcc22394663290f870fb224c1bfce55734a75c414150e605" dependencies = [ "bitflags 2.11.0", "block", - "core-graphics-types", + "core-graphics-types 0.2.0", "foreign-types", "log", "objc", @@ -4689,7 +4602,7 @@ dependencies = [ [[package]] name = "mime" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ "smithay-clipboard", ] @@ -4749,9 +4662,9 @@ dependencies = [ [[package]] name = "moxcms" -version = "0.7.11" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac9557c559cd6fc9867e122e20d2cbefc9ca29d80d027a8e39310920ed2f0a97" +checksum = "bb85c154ba489f01b25c0d36ae69a87e4a1c73a72631fc6c0eb6dde34a73e44b" dependencies = [ "num-traits", "pxfm", @@ -4765,23 +4678,28 @@ checksum = "13d2233c9842d08cfe13f9eac96e207ca6a2ea10b80259ebe8ad0268be27d2af" [[package]] name = "naga" -version = "22.1.0" +version = "27.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bd5a652b6faf21496f2cfd88fc49989c8db0825d1f6746b1a71a6ede24a63ad" +checksum = "066cf25f0e8b11ee0df221219010f213ad429855f57c494f995590c861a9a7d8" dependencies = [ "arrayvec", "bit-set", "bitflags 2.11.0", - "cfg_aliases 0.1.1", + "cfg-if", + "cfg_aliases", "codespan-reporting", + "half", + "hashbrown 0.16.1", "hexf-parse", "indexmap 2.13.0", + "libm", "log", + "num-traits", + "once_cell", "rustc-hash 1.1.0", "spirv", - "termcolor", - "thiserror 1.0.69", - "unicode-xid", + "thiserror 2.0.18", + "unicode-ident", ] [[package]] @@ -4793,7 +4711,7 @@ dependencies = [ "bitflags 2.11.0", "jni-sys", "log", - "ndk-sys 0.6.0+11769913", + "ndk-sys", "num_enum", "raw-window-handle", "thiserror 1.0.69", @@ -4805,15 +4723,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" -[[package]] -name = "ndk-sys" -version = "0.5.0+25.2.9519653" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691" -dependencies = [ - "jni-sys", -] - [[package]] name = "ndk-sys" version = "0.6.0+11769913" @@ -4829,18 +4738,6 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" -[[package]] -name = "nix" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", - "memoffset 0.7.1", -] - [[package]] name = "nom" version = "7.1.3" @@ -4906,6 +4803,15 @@ dependencies = [ "bitflags 2.11.0", ] +[[package]] +name = "nu-ansi-term" +version = "0.50.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" +dependencies = [ + "windows-sys 0.61.2", +] + [[package]] name = "num" version = "0.4.3" @@ -4941,9 +4847,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" [[package]] name = "num-derive" @@ -4953,7 +4859,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5003,15 +4909,15 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" dependencies = [ - "hermit-abi 0.5.2", + "hermit-abi", "libc", ] [[package]] name = "num_enum" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" +checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" dependencies = [ "num_enum_derive", "rustversion", @@ -5019,14 +4925,14 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" +checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" dependencies = [ - "proc-macro-crate 3.4.0", + "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5067,9 +4973,9 @@ dependencies = [ [[package]] name = "objc2" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7c2599ce0ec54857b29ce62166b0ed9b4f6f1a70ccc9a71165b6154caca8c05" +checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" dependencies = [ "objc2-encode", ] @@ -5098,34 +5004,11 @@ checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" dependencies = [ "bitflags 2.11.0", "block2 0.6.2", - "objc2 0.6.3", + "objc2 0.6.4", + "objc2-core-foundation", "objc2-foundation 0.3.2", ] -[[package]] -name = "objc2-cloud-kit" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" -dependencies = [ - "bitflags 2.11.0", - "block2 0.5.1", - "objc2 0.5.2", - "objc2-core-location", - "objc2-foundation 0.2.2", -] - -[[package]] -name = "objc2-contacts" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5ff520e9c33812fd374d8deecef01d4a840e7b41862d849513de77e44aa4889" -dependencies = [ - "block2 0.5.1", - "objc2 0.5.2", - "objc2-foundation 0.2.2", -] - [[package]] name = "objc2-core-data" version = "0.2.2" @@ -5145,8 +5028,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ "bitflags 2.11.0", + "block2 0.6.2", "dispatch2", - "objc2 0.6.3", + "objc2 0.6.4", +] + +[[package]] +name = "objc2-core-graphics" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" +dependencies = [ + "bitflags 2.11.0", + "libc", + "objc2-core-foundation", ] [[package]] @@ -5162,15 +5057,14 @@ dependencies = [ ] [[package]] -name = "objc2-core-location" -version = "0.2.2" +name = "objc2-core-video" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "000cfee34e683244f284252ee206a27953279d370e309649dc3ee317b37e5781" +checksum = "d425caf1df73233f29fd8a5c3e5edbc30d2d4307870f802d18f00d83dc5141a6" dependencies = [ - "block2 0.5.1", - "objc2 0.5.2", - "objc2-contacts", - "objc2-foundation 0.2.2", + "bitflags 2.11.0", + "objc2-core-foundation", + "objc2-core-graphics", ] [[package]] @@ -5187,7 +5081,6 @@ checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" dependencies = [ "bitflags 2.11.0", "block2 0.5.1", - "dispatch", "libc", "objc2 0.5.2", ] @@ -5199,22 +5092,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" dependencies = [ "bitflags 2.11.0", - "objc2 0.6.3", + "block2 0.6.2", + "objc2 0.6.4", "objc2-core-foundation", ] -[[package]] -name = "objc2-link-presentation" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a1ae721c5e35be65f01a03b6d2ac13a54cb4fa70d8a5da293d7b0020261398" -dependencies = [ - "block2 0.5.1", - "objc2 0.5.2", - "objc2-app-kit 0.2.2", - "objc2-foundation 0.2.2", -] - [[package]] name = "objc2-metal" version = "0.2.2" @@ -5240,59 +5122,16 @@ dependencies = [ "objc2-metal", ] -[[package]] -name = "objc2-symbols" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a684efe3dec1b305badae1a28f6555f6ddd3bb2c2267896782858d5a78404dc" -dependencies = [ - "objc2 0.5.2", - "objc2-foundation 0.2.2", -] - [[package]] name = "objc2-ui-kit" -version = "0.2.2" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" +checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22" dependencies = [ "bitflags 2.11.0", - "block2 0.5.1", - "objc2 0.5.2", - "objc2-cloud-kit", - "objc2-core-data", - "objc2-core-image", - "objc2-core-location", - "objc2-foundation 0.2.2", - "objc2-link-presentation", - "objc2-quartz-core", - "objc2-symbols", - "objc2-uniform-type-identifiers", - "objc2-user-notifications", -] - -[[package]] -name = "objc2-uniform-type-identifiers" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44fa5f9748dbfe1ca6c0b79ad20725a11eca7c2218bceb4b005cb1be26273bfe" -dependencies = [ - "block2 0.5.1", - "objc2 0.5.2", - "objc2-foundation 0.2.2", -] - -[[package]] -name = "objc2-user-notifications" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" -dependencies = [ - "bitflags 2.11.0", - "block2 0.5.1", - "objc2 0.5.2", - "objc2-core-location", - "objc2-foundation 0.2.2", + "objc2 0.6.4", + "objc2-core-foundation", + "objc2-foundation 0.3.2", ] [[package]] @@ -5306,9 +5145,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.21.3" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" [[package]] name = "once_cell_polyfill" @@ -5335,14 +5174,23 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "orbclient" -version = "0.3.50" +version = "0.3.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ad2c6bae700b7aa5d1cc30c59bdd3a1c180b09dbaea51e2ae2b8e1cf211fdd" +checksum = "59aed3b33578edcfa1bc96a321d590d31832b6ad55a26f0313362ce687e9abd6" dependencies = [ "libc", "libredox", ] +[[package]] +name = "ordered-float" +version = "5.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4779c6901a562440c3786d08192c6fbda7c1c2060edd10006b05ee35d10f2d" +dependencies = [ + "num-traits", +] + [[package]] name = "ordered-stream" version = "0.2.0" @@ -5395,7 +5243,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5404,7 +5252,7 @@ version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "36820e9051aca1014ddc75770aab4d68bc1e9e632f0f5627c4086bc216fb583b" dependencies = [ - "ttf-parser 0.25.1", + "ttf-parser", ] [[package]] @@ -5429,7 +5277,7 @@ dependencies = [ "by_address", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5438,17 +5286,6 @@ version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" -[[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core 0.8.6", -] - [[package]] name = "parking_lot" version = "0.12.5" @@ -5456,21 +5293,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", - "parking_lot_core 0.9.12", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" -dependencies = [ - "cfg-if", - "instant", - "libc", - "redox_syscall 0.2.16", - "smallvec", - "winapi", + "parking_lot_core", ] [[package]] @@ -5483,7 +5306,7 @@ dependencies = [ "libc", "redox_syscall 0.5.18", "smallvec", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -5557,7 +5380,7 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" dependencies = [ - "fastrand 2.3.0", + "fastrand", "phf_shared 0.13.1", ] @@ -5571,7 +5394,7 @@ dependencies = [ "phf_shared 0.11.3", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5584,7 +5407,7 @@ dependencies = [ "phf_shared 0.13.1", "proc-macro2", "quote", - "syn 2.0.117", + "syn", "uncased", ] @@ -5615,29 +5438,29 @@ checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" [[package]] name = "pin-project" -version = "1.1.10" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +checksum = "f1749c7ed4bcaf4c3d0a3efc28538844fb29bcdd7d2b67b2be7e20ba861ff517" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.10" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +checksum = "d9b20ed30f105399776b9c883e68e536ef602a16ae6f596d2c473591d6ad64c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] name = "pin-project-lite" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] name = "pin-utils" @@ -5647,12 +5470,12 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "piper" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" +checksum = "c835479a4443ded371d6c535cbfd8d31ad92c5d23ae9770a61bc155e4992a3c1" dependencies = [ "atomic-waker", - "fastrand 2.3.0", + "fastrand", "futures-io", ] @@ -5662,6 +5485,12 @@ version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +[[package]] +name = "plain" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" + [[package]] name = "png" version = "0.17.16" @@ -5688,22 +5517,6 @@ dependencies = [ "miniz_oxide", ] -[[package]] -name = "polling" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" -dependencies = [ - "autocfg", - "bitflags 1.3.2", - "cfg-if", - "concurrent-queue", - "libc", - "log", - "pin-project-lite", - "windows-sys 0.48.0", -] - [[package]] name = "polling" version = "3.11.0" @@ -5712,7 +5525,7 @@ checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" dependencies = [ "cfg-if", "concurrent-queue", - "hermit-abi 0.5.2", + "hermit-abi", "pin-project-lite", "rustix 1.1.4", "windows-sys 0.61.2", @@ -5732,9 +5545,9 @@ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] name = "portable-atomic-util" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a9db96d7fa8782dd8c15ce32ffe8680bbd1e978a43bf51a34d39483540495f5" +checksum = "091397be61a01d4be58e7841595bd4bfedb15f1cd54977d79b8271e94ed799a3" dependencies = [ "portable-atomic", ] @@ -5784,26 +5597,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.117", + "syn", ] [[package]] name = "proc-macro-crate" -version = "1.3.1" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ - "once_cell", - "toml_edit 0.19.15", -] - -[[package]] -name = "proc-macro-crate" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" -dependencies = [ - "toml_edit 0.23.10+spec-1.0.0", + "toml_edit", ] [[package]] @@ -5825,7 +5628,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5845,7 +5648,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", "version_check", "yansi", ] @@ -5890,7 +5693,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52717f9a02b6965224f95ca2a81e2e0c5c43baacd28ca057577988930b6c3d5b" dependencies = [ "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -5901,12 +5704,9 @@ checksum = "869675ad2d7541aea90c6d88c81f46a7f4ea9af8cd0395d38f11a95126998a0d" [[package]] name = "pxfm" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7186d3822593aa4393561d186d1393b3923e9d6163d3fbfd6e825e3e6cf3e6a8" -dependencies = [ - "num-traits", -] +checksum = "b5a041e753da8b807c9255f28de81879c78c876392ff2469cde94799b2896b9d" [[package]] name = "qoi" @@ -5938,15 +5738,25 @@ name = "quick-xml" version = "0.38.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "quick-xml" +version = "0.39.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "958f21e8e7ceb5a1aa7fa87fab28e7c75976e0bfe7e23ff069e0a260f894067d" dependencies = [ "memchr", ] [[package]] name = "quote" -version = "1.0.44" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] @@ -5957,6 +5767,12 @@ version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +[[package]] +name = "r-efi" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + [[package]] name = "rand" version = "0.8.5" @@ -6018,9 +5834,9 @@ dependencies = [ [[package]] name = "range-alloc" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d6831663a5098ea164f89cff59c6284e95f4e3c76ce9848d4529f5ccca9bde" +checksum = "ca45419789ae5a7899559e9512e58ca889e41f04f1f2445e9f4b290ceccd1d08" [[package]] name = "rangemap" @@ -6065,9 +5881,9 @@ dependencies = [ [[package]] name = "ravif" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef69c1990ceef18a116855938e74793a5f7496ee907562bd0857b6ac734ab285" +checksum = "e52310197d971b0f5be7fe6b57530dcd27beb35c1b013f29d66c1ad73fbbcc45" dependencies = [ "avif-serialize", "imgref", @@ -6141,25 +5957,6 @@ dependencies = [ "url", ] -[[package]] -name = "redox_event" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3514da49aa6ca4cff5088a1b382ef3a0d9149964d29bb49ebd03fd66cc575a18" -dependencies = [ - "bitflags 2.11.0", - "libredox", -] - -[[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "redox_syscall" version = "0.5.18" @@ -6171,9 +5968,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.7.1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35985aa610addc02e24fc232012c86fd11f14111180f902b67e2d5331f8ebf2b" +checksum = "6ce70a74e890531977d37e532c34d45e9055d2409ed08ddba14529471ed0be16" dependencies = [ "bitflags 2.11.0", ] @@ -6217,7 +6014,7 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -6245,9 +6042,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.9" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "renderdoc-sys" @@ -6257,18 +6054,19 @@ checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832" [[package]] name = "resvg" -version = "0.42.0" +version = "0.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "944d052815156ac8fa77eaac055220e95ba0b01fa8887108ca710c03805d9051" +checksum = "a8928798c0a55e03c9ca6c4c6846f76377427d2c1e1f7e6de3c06ae57942df43" dependencies = [ "gif 0.13.3", - "jpeg-decoder", + "image-webp", "log", "pico-args", "rgb", "svgtypes", "tiny-skia", "usvg", + "zune-jpeg 0.4.21", ] [[package]] @@ -6282,7 +6080,7 @@ dependencies = [ "dispatch2", "js-sys", "log", - "objc2 0.6.3", + "objc2 0.6.4", "objc2-app-kit 0.3.2", "objc2-core-foundation", "objc2-foundation 0.3.2", @@ -6297,9 +6095,9 @@ dependencies = [ [[package]] name = "rgb" -version = "0.8.52" +version = "0.8.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c6a884d2998352bb4daf0183589aec883f16a6da1f4dde84d8e2e9a5409a1ce" +checksum = "47b34b781b31e5d73e9fbc8689c70551fd1ade9a19e3e28cfec8580a79290cc4" dependencies = [ "bytemuck", ] @@ -6357,7 +6155,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.117", + "syn", "walkdir", ] @@ -6383,20 +6181,6 @@ version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" -[[package]] -name = "rustix" -version = "0.37.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "519165d378b97752ca44bbe15047d5d3409e875f39327546b42ac81d7e18c1b6" -dependencies = [ - "bitflags 1.3.2", - "errno", - "io-lifetimes", - "libc", - "linux-raw-sys 0.3.8", - "windows-sys 0.48.0", -] - [[package]] name = "rustix" version = "0.38.44" @@ -6442,14 +6226,16 @@ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "rustybuzz" -version = "0.14.1" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfb9cf8877777222e4a3bc7eb247e398b56baba500c38c1c46842431adc8b55c" +checksum = "fd3c7c96f8a08ee34eff8857b11b49b07d71d1c3f4e88f8a88d4c9e9f90b1702" dependencies = [ "bitflags 2.11.0", "bytemuck", + "core_maths", + "log", "smallvec", - "ttf-parser 0.21.1", + "ttf-parser", "unicode-bidi-mirroring", "unicode-ccc", "unicode-properties", @@ -6503,14 +6289,14 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sctk-adwaita" -version = "0.10.1" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec" +checksum = "1dd3accc0f3f4bbaf2c9e1957a030dc582028130c67660d44c0a0345a22ca69b" dependencies = [ "ab_glyph", "log", "memmap2 0.9.10", - "smithay-client-toolkit 0.19.2", + "smithay-client-toolkit", "tiny-skia", ] @@ -6530,7 +6316,7 @@ dependencies = [ "once_cell", "serde", "sha2", - "zbus 5.13.2", + "zbus", ] [[package]] @@ -6581,7 +6367,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -6606,14 +6392,14 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] name = "serde_with" -version = "3.16.1" +version = "3.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fa237f2807440d238e0364a218270b98f767a00d3dada77b1c53ae88940e2e7" +checksum = "dd5414fad8e6907dbdd5bc441a50ae8d6e26151a03b1de04d89a5576de61d01f" dependencies = [ "base64", "chrono", @@ -6630,14 +6416,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.16.1" +version = "3.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52a8e3ca0ca629121f70ab50f95249e5a6f925cc0f6ffe8256c45b728875706c" +checksum = "d3db8978e608f1fe7357e211969fd9abdcae80bac1ba7a3369bb7eb6b404eb65" dependencies = [ - "darling", + "darling 0.23.0", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -6662,6 +6448,15 @@ dependencies = [ "digest", ] +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + [[package]] name = "shlex" version = "1.3.0" @@ -6759,31 +6554,6 @@ version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" -[[package]] -name = "smithay-client-toolkit" -version = "0.19.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" -dependencies = [ - "bitflags 2.11.0", - "calloop 0.13.0", - "calloop-wayland-source 0.3.0", - "cursor-icon", - "libc", - "log", - "memmap2 0.9.10", - "rustix 0.38.44", - "thiserror 1.0.69", - "wayland-backend", - "wayland-client", - "wayland-csd-frame", - "wayland-cursor", - "wayland-protocols", - "wayland-protocols-wlr", - "wayland-scanner", - "xkeysym", -] - [[package]] name = "smithay-client-toolkit" version = "0.20.0" @@ -6792,8 +6562,8 @@ checksum = "0512da38f5e2b31201a93524adb8d3136276fa4fe4aafab4e1f727a82b534cc0" dependencies = [ "bitflags 2.11.0", "bytemuck", - "calloop 0.14.4", - "calloop-wayland-source 0.4.1", + "calloop", + "calloop-wayland-source", "cursor-icon", "libc", "log", @@ -6817,47 +6587,32 @@ dependencies = [ [[package]] name = "smithay-clipboard" version = "0.8.0" -source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-dnd-5#5a3007def49eb678d1144850c9ee04b80707c56a" +source = "git+https://github.com/pop-os/smithay-clipboard?tag=sctk-0.20#859b02c88f45c554049a67c6ddeec1692ce0e20b" dependencies = [ "libc", "raw-window-handle", - "smithay-client-toolkit 0.19.2", + "smithay-client-toolkit", "wayland-backend", ] [[package]] name = "smol_str" -version = "0.2.2" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" +checksum = "4aaa7368fcf4852a4c2dd92df0cace6a71f2091ca0a23391ce7f3a31833f1523" dependencies = [ - "serde", -] - -[[package]] -name = "smol_str" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9676b89cd56310a87b93dec47b11af744f34d5fc9f367b829474eec0a891350d" - -[[package]] -name = "socket2" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" -dependencies = [ - "libc", - "winapi", + "borsh", + "serde_core", ] [[package]] name = "socket2" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86f4aa3ad99f2088c990dfa82d367e19cb29268ed67c574d10d0a4bfe71f07e0" +checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -6867,11 +6622,11 @@ source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#a3f77e251e7422 dependencies = [ "as-raw-xcb-connection", "bytemuck", - "cfg_aliases 0.2.1", + "cfg_aliases", "cocoa", "core-graphics", "drm", - "fastrand 2.3.0", + "fastrand", "foreign-types", "js-sys", "log", @@ -6926,7 +6681,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" dependencies = [ - "float-cmp", + "float-cmp 0.9.0", ] [[package]] @@ -6968,17 +6723,6 @@ dependencies = [ "zeno", ] -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - [[package]] name = "syn" version = "2.0.117" @@ -6992,11 +6736,12 @@ dependencies = [ [[package]] name = "synchrony" -version = "0.1.1" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de0208d3660701622272151bc63c35f5d32ca3d45c19785a9a8dc04dc797dc43" +checksum = "e6d5f5d3091c2d998f6ab4c8b495c0d232ad0aecbc1fa9ac52c247a79d497e16" dependencies = [ "futures-util", + "loom", ] [[package]] @@ -7007,7 +6752,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -7050,12 +6795,12 @@ checksum = "83176759e9416cf81ee66cb6508dbfe9c96f20b8b56265a39917551c23c70964" [[package]] name = "tempfile" -version = "3.25.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ - "fastrand 2.3.0", - "getrandom 0.4.1", + "fastrand", + "getrandom 0.4.2", "once_cell", "rustix 1.1.4", "windows-sys 0.61.2", @@ -7102,7 +6847,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -7113,28 +6858,37 @@ checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", +] + +[[package]] +name = "thread_local" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" +dependencies = [ + "cfg-if", ] [[package]] name = "tiff" -version = "0.10.3" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af9605de7fee8d9551863fd692cce7637f548dbd9db9180fcc07ccc6d26c336f" +checksum = "b63feaf3343d35b6ca4d50483f94843803b0f51634937cc2ec519fc32232bc52" dependencies = [ "fax", "flate2", "half", "quick-error", "weezl", - "zune-jpeg 0.4.21", + "zune-jpeg 0.5.13", ] [[package]] name = "time" -version = "0.3.45" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9e442fc33d7fdb45aa9bfeb312c095964abdf596f7567261062b2a7107aaabd" +checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" dependencies = [ "deranged", "itoa", @@ -7148,15 +6902,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b36ee98fd31ec7426d599183e8fe26932a8dc1fb76ddb6214d05493377d34ca" +checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" [[package]] name = "time-macros" -version = "0.2.25" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e552d1249bf61ac2a52db88179fd0673def1e1ad8243a00d9ec9ed71fee3dd" +checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" dependencies = [ "num-conv", "time-core", @@ -7214,9 +6968,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -7229,16 +6983,16 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.49.0" +version = "1.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" +checksum = "27ad5e34374e03cfffefc301becb44e9dc3c17584f414349ebe29ed26661822d" dependencies = [ "bytes", "libc", "mio", "pin-project-lite", "signal-hook-registry", - "socket2 0.6.2", + "socket2", "tokio-macros", "tracing", "windows-sys 0.61.2", @@ -7246,13 +7000,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.6.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" +checksum = "5c55a2eff8b69ce66c84f85e1da1c233edc36ceb85a2058d11b0d6a3c7e7569c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -7277,49 +7031,32 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.11" +version = "1.0.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" - -[[package]] -name = "toml_datetime" -version = "0.7.5+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" +checksum = "9b320e741db58cac564e26c607d3cc1fdc4a88fd36c879568c07856ed83ff3e9" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.19.15" +version = "0.25.5+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +checksum = "8ca1a40644a28bce036923f6a431df0b34236949d111cc07cb6dca830c9ef2e1" dependencies = [ "indexmap 2.13.0", - "toml_datetime 0.6.11", - "winnow 0.5.40", -] - -[[package]] -name = "toml_edit" -version = "0.23.10+spec-1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" -dependencies = [ - "indexmap 2.13.0", - "toml_datetime 0.7.5+spec-1.1.0", + "toml_datetime", "toml_parser", - "winnow 0.7.14", + "winnow 1.0.0", ] [[package]] name = "toml_parser" -version = "1.0.9+spec-1.1.0" +version = "1.0.10+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" +checksum = "7df25b4befd31c4816df190124375d5a20c6b6921e2cad937316de3fccd63420" dependencies = [ - "winnow 0.7.14", + "winnow 1.0.0", ] [[package]] @@ -7342,7 +7079,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -7352,6 +7089,36 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", + "valuable", +] + +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex-automata", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", ] [[package]] @@ -7371,12 +7138,6 @@ dependencies = [ "windows 0.56.0", ] -[[package]] -name = "ttf-parser" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8" - [[package]] name = "ttf-parser" version = "0.25.1" @@ -7415,13 +7176,13 @@ checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "uds_windows" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9" +checksum = "f2f6fb2847f6742cd76af783a2a2c49e9375d0a111c7bef6f71cd9e738c72d6e" dependencies = [ - "memoffset 0.9.1", + "memoffset", "tempfile", - "winapi", + "windows-sys 0.61.2", ] [[package]] @@ -7466,15 +7227,15 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" [[package]] name = "unicode-bidi-mirroring" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86" +checksum = "5dfa6e8c60bb66d49db113e0125ee8711b7647b5579dc7f5f19c42357ed039fe" [[package]] name = "unicode-ccc" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656" +checksum = "ce61d488bcdc9bc8b5d1772c404828b17fc481c0a582b5581e95fb233aef503e" [[package]] name = "unicode-ident" @@ -7512,12 +7273,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94" -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - [[package]] name = "unicode-width" version = "0.2.2" @@ -7551,14 +7306,14 @@ checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" [[package]] name = "usvg" -version = "0.42.0" +version = "0.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b84ea542ae85c715f07b082438a4231c3760539d902e11d093847a0b22963032" +checksum = "80be9b06fbae3b8b303400ab20778c80bbaf338f563afe567cf3c9eea17b47ef" dependencies = [ "base64", "data-url", "flate2", - "fontdb 0.18.0", + "fontdb", "imagesize", "kurbo 0.11.3", "log", @@ -7596,9 +7351,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.21.0" +version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b672338555252d43fd2240c714dc444b8c6fb0a5c5335e65a07bba7742735ddb" +checksum = "a68d3c8f01c0cfa54a75291d83601161799e4a89a39e0929f4b0354d88757a37" dependencies = [ "js-sys", "serde_core", @@ -7626,6 +7381,12 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "valuable" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" + [[package]] name = "version_check" version = "0.9.5" @@ -7646,12 +7407,6 @@ dependencies = [ "serde", ] -[[package]] -name = "waker-fn" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" - [[package]] name = "walkdir" version = "2.5.0" @@ -7670,11 +7425,11 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasip2" -version = "1.0.1+wasi-0.2.4" +version = "1.0.2+wasi-0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" dependencies = [ - "wit-bindgen 0.46.0", + "wit-bindgen", ] [[package]] @@ -7683,14 +7438,14 @@ version = "0.4.0+wasi-0.3.0-rc-2026-01-06" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" dependencies = [ - "wit-bindgen 0.51.0", + "wit-bindgen", ] [[package]] name = "wasm-bindgen" -version = "0.2.111" +version = "0.2.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec1adf1535672f5b7824f817792b1afd731d7e843d2d04ec8f27e8cb51edd8ac" +checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e" dependencies = [ "cfg-if", "once_cell", @@ -7701,9 +7456,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.61" +version = "0.4.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe88540d1c934c4ec8e6db0afa536876c5441289d7f9f9123d4f065ac1250a6b" +checksum = "e9c5522b3a28661442748e09d40924dfb9ca614b21c00d3fd135720e48b67db8" dependencies = [ "cfg-if", "futures-util", @@ -7715,9 +7470,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.111" +version = "0.2.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e638317c08b21663aed4d2b9a2091450548954695ff4efa75bff5fa546b3b1" +checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7725,22 +7480,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.111" +version = "0.2.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c64760850114d03d5f65457e96fc988f11f01d38fbaa51b254e4ab5809102af" +checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3" dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.117", + "syn", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.111" +version = "0.2.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60eecd4fe26177cfa3339eb00b4a36445889ba3ad37080c2429879718e20ca41" +checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16" dependencies = [ "unicode-ident", ] @@ -7767,21 +7522,6 @@ dependencies = [ "wasmparser", ] -[[package]] -name = "wasm-timer" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f" -dependencies = [ - "futures", - "js-sys", - "parking_lot 0.11.2", - "pin-utils", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "wasmparser" version = "0.244.0" @@ -7795,10 +7535,24 @@ dependencies = [ ] [[package]] -name = "wayland-backend" -version = "0.3.12" +name = "wasmtimer" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fee64194ccd96bf648f42a65a7e589547096dfa702f7cadef84347b66ad164f9" +checksum = "1c598d6b99ea013e35844697fc4670d08339d5cda15588f193c6beedd12f644b" +dependencies = [ + "futures", + "js-sys", + "parking_lot", + "pin-utils", + "slab", + "wasm-bindgen", +] + +[[package]] +name = "wayland-backend" +version = "0.3.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa75f400b7f719bcd68b3f47cd939ba654cedeef690f486db71331eec4c6a406" dependencies = [ "cc", "downcast-rs", @@ -7810,9 +7564,9 @@ dependencies = [ [[package]] name = "wayland-client" -version = "0.31.12" +version = "0.31.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e6faa537fbb6c186cb9f1d41f2f811a4120d1b57ec61f50da451a0c5122bec" +checksum = "ab51d9f7c071abeee76007e2b742499e535148035bb835f97aaed1338cf516c3" dependencies = [ "bitflags 2.11.0", "rustix 1.1.4", @@ -7833,9 +7587,9 @@ dependencies = [ [[package]] name = "wayland-cursor" -version = "0.31.12" +version = "0.31.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5864c4b5b6064b06b1e8b74ead4a98a6c45a285fe7a0e784d24735f011fdb078" +checksum = "4b3298683470fbdc6ca40151dfc48c8f2fd4c41a26e13042f801f85002384091" dependencies = [ "rustix 1.1.4", "wayland-client", @@ -7844,9 +7598,9 @@ dependencies = [ [[package]] name = "wayland-protocols" -version = "0.32.10" +version = "0.32.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baeda9ffbcfc8cd6ddaade385eaf2393bd2115a69523c735f12242353c3df4f3" +checksum = "b23b5df31ceff1328f06ac607591d5ba360cf58f90c8fad4ac8d3a55a3c4aec7" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7870,9 +7624,9 @@ dependencies = [ [[package]] name = "wayland-protocols-misc" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791c58fdeec5406aa37169dd815327d1e47f334219b523444bc26d70ceb4c34e" +checksum = "429b99200febaf95d4f4e46deff6fe4382bcff3280ee16a41cf887b3c3364984" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7883,9 +7637,9 @@ dependencies = [ [[package]] name = "wayland-protocols-plasma" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa98634619300a535a9a97f338aed9a5ff1e01a461943e8346ff4ae26007306b" +checksum = "d392fc283a87774afc9beefcd6f931582bb97fe0e6ced0b306a62cb1d026527c" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7896,9 +7650,9 @@ dependencies = [ [[package]] name = "wayland-protocols-wlr" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9597cdf02cf0c34cd5823786dce6b5ae8598f05c2daf5621b6e178d4f7345f3" +checksum = "78248e4cc0eff8163370ba5c158630dcae1f3497a586b826eca2ef5f348d6235" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7910,20 +7664,20 @@ dependencies = [ [[package]] name = "wayland-scanner" -version = "0.31.8" +version = "0.31.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5423e94b6a63e68e439803a3e153a9252d5ead12fd853334e2ad33997e3889e3" +checksum = "c86287151a309799b821ca709b7345a048a2956af05957c89cb824ab919fa4e3" dependencies = [ "proc-macro2", - "quick-xml 0.38.4", + "quick-xml 0.39.2", "quote", ] [[package]] name = "wayland-server" -version = "0.31.11" +version = "0.31.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9297ab90f8d1f597711d36455c5b1b2290eca59b8134485e377a296b80b118c9" +checksum = "63736a4a73e781cf6a736aa32c5d6773c3eb5389197562742a8c611b49b5e359" dependencies = [ "bitflags 2.11.0", "downcast-rs", @@ -7934,9 +7688,9 @@ dependencies = [ [[package]] name = "wayland-sys" -version = "0.31.8" +version = "0.31.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6dbfc3ac5ef974c92a2235805cc0114033018ae1290a72e474aa8b28cbbdfd" +checksum = "374f6b70e8e0d6bf9461a32988fd553b59ff630964924dad6e4a4eb6bd538d17" dependencies = [ "dlib", "log", @@ -7946,9 +7700,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.88" +version = "0.3.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d6bb20ed2d9572df8584f6dc81d68a41a625cadc6f15999d649a70ce7e3597a" +checksum = "854ba17bb104abfb26ba36da9729addc7ce7f06f5c0f90f3c391f8461cca21f9" dependencies = [ "js-sys", "wasm-bindgen", @@ -7972,17 +7726,21 @@ checksum = "a28ac98ddc8b9274cb41bb4d9d4d5c425b6020c50c46f25559911905610b4a88" [[package]] name = "wgpu" -version = "22.1.0" +version = "27.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d1c4ba43f80542cf63a0a6ed3134629ae73e8ab51e4b765a67f3aa062eb433" +checksum = "bfe68bac7cde125de7a731c3400723cadaaf1703795ad3f4805f187459cd7a77" dependencies = [ "arrayvec", - "cfg_aliases 0.1.1", + "bitflags 2.11.0", + "cfg-if", + "cfg_aliases", "document-features", + "hashbrown 0.16.1", "js-sys", "log", "naga", - "parking_lot 0.12.5", + "parking_lot", + "portable-atomic", "profiling", "raw-window-handle", "smallvec", @@ -7997,34 +7755,68 @@ dependencies = [ [[package]] name = "wgpu-core" -version = "22.1.0" +version = "27.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0348c840d1051b8e86c3bcd31206080c5e71e5933dabd79be1ce732b0b2f089a" +checksum = "27a75de515543b1897b26119f93731b385a19aea165a1ec5f0e3acecc229cae7" dependencies = [ "arrayvec", + "bit-set", "bit-vec", "bitflags 2.11.0", - "cfg_aliases 0.1.1", + "bytemuck", + "cfg_aliases", "document-features", + "hashbrown 0.16.1", "indexmap 2.13.0", "log", "naga", "once_cell", - "parking_lot 0.12.5", + "parking_lot", + "portable-atomic", "profiling", "raw-window-handle", "rustc-hash 1.1.0", "smallvec", - "thiserror 1.0.69", + "thiserror 2.0.18", + "wgpu-core-deps-apple", + "wgpu-core-deps-emscripten", + "wgpu-core-deps-windows-linux-android", "wgpu-hal", "wgpu-types", ] [[package]] -name = "wgpu-hal" -version = "22.0.0" +name = "wgpu-core-deps-apple" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6bbf4b4de8b2a83c0401d9e5ae0080a2792055f25859a02bf9be97952bbed4f" +checksum = "0772ae958e9be0c729561d5e3fd9a19679bcdfb945b8b1a1969d9bfe8056d233" +dependencies = [ + "wgpu-hal", +] + +[[package]] +name = "wgpu-core-deps-emscripten" +version = "27.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b06ac3444a95b0813ecfd81ddb2774b66220b264b3e2031152a4a29fda4da6b5" +dependencies = [ + "wgpu-hal", +] + +[[package]] +name = "wgpu-core-deps-windows-linux-android" +version = "27.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71197027d61a71748e4120f05a9242b2ad142e3c01f8c1b47707945a879a03c3" +dependencies = [ + "wgpu-hal", +] + +[[package]] +name = "wgpu-hal" +version = "27.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b21cb61c57ee198bc4aff71aeadff4cbb80b927beb912506af9c780d64313ce" dependencies = [ "android_system_properties", "arrayvec", @@ -8032,15 +7824,16 @@ dependencies = [ "bit-set", "bitflags 2.11.0", "block", - "cfg_aliases 0.1.1", - "core-graphics-types", - "d3d12", + "bytemuck", + "cfg-if", + "cfg_aliases", + "core-graphics-types 0.2.0", "glow", "glutin_wgl_sys", "gpu-alloc", "gpu-allocator", "gpu-descriptor", - "hassle-rs", + "hashbrown 0.16.1", "js-sys", "khronos-egl", "libc", @@ -8048,31 +7841,37 @@ dependencies = [ "log", "metal", "naga", - "ndk-sys 0.5.0+25.2.9519653", + "ndk-sys", "objc", "once_cell", - "parking_lot 0.12.5", + "ordered-float", + "parking_lot", + "portable-atomic", + "portable-atomic-util", "profiling", "range-alloc", "raw-window-handle", "renderdoc-sys", - "rustc-hash 1.1.0", "smallvec", - "thiserror 1.0.69", + "thiserror 2.0.18", "wasm-bindgen", "web-sys", "wgpu-types", - "winapi", + "windows 0.58.0", + "windows-core 0.58.0", ] [[package]] name = "wgpu-types" -version = "22.0.0" +version = "27.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc9d91f0e2c4b51434dfa6db77846f2793149d8e73f800fa2e41f52b8eac3c5d" +checksum = "afdcf84c395990db737f2dd91628706cb31e86d72e53482320d368e52b5da5eb" dependencies = [ "bitflags 2.11.0", + "bytemuck", "js-sys", + "log", + "thiserror 2.0.18", "web-sys", ] @@ -8116,7 +7915,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "window_clipboard" version = "0.4.1" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13-2#6b9faab87bea9cebec6ae036906fd67fed254f5f" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ "clipboard-win", "clipboard_macos", @@ -8128,28 +7927,6 @@ dependencies = [ "thiserror 1.0.69", ] -[[package]] -name = "windows" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" -dependencies = [ - "windows-core 0.52.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows" -version = "0.54.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49" -dependencies = [ - "windows-core 0.54.0", - "windows-implement 0.53.0", - "windows-interface 0.53.0", - "windows-targets 0.52.6", -] - [[package]] name = "windows" version = "0.56.0" @@ -8161,22 +7938,35 @@ dependencies = [ ] [[package]] -name = "windows-core" -version = "0.52.0" +name = "windows" +version = "0.58.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" dependencies = [ + "windows-core 0.58.0", "windows-targets 0.52.6", ] [[package]] -name = "windows-core" -version = "0.54.0" +name = "windows" +version = "0.61.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65" +checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" dependencies = [ - "windows-result 0.1.2", - "windows-targets 0.52.6", + "windows-collections", + "windows-core 0.61.2", + "windows-future", + "windows-link 0.1.3", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" +dependencies = [ + "windows-core 0.61.2", ] [[package]] @@ -8191,6 +7981,32 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-core" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +dependencies = [ + "windows-implement 0.58.0", + "windows-interface 0.58.0", + "windows-result 0.2.0", + "windows-strings 0.1.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement 0.60.2", + "windows-interface 0.59.3", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + [[package]] name = "windows-core" version = "0.62.2" @@ -8199,20 +8015,20 @@ checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ "windows-implement 0.60.2", "windows-interface 0.59.3", - "windows-link", + "windows-link 0.2.1", "windows-result 0.4.1", - "windows-strings", + "windows-strings 0.5.1", ] [[package]] -name = "windows-implement" -version = "0.53.0" +name = "windows-future" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942ac266be9249c84ca862f0a164a39533dc2f6f33dc98ec89c8da99b82ea0bd" +checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", + "windows-core 0.61.2", + "windows-link 0.1.3", + "windows-threading", ] [[package]] @@ -8223,7 +8039,18 @@ checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", +] + +[[package]] +name = "windows-implement" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" +dependencies = [ + "proc-macro2", + "quote", + "syn", ] [[package]] @@ -8234,18 +8061,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-interface" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da33557140a288fae4e1d5f8873aaf9eb6613a9cf82c3e070223ff177f598b60" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -8256,7 +8072,18 @@ checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", +] + +[[package]] +name = "windows-interface" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" +dependencies = [ + "proc-macro2", + "quote", + "syn", ] [[package]] @@ -8267,15 +8094,31 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] +[[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + [[package]] name = "windows-link" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" +[[package]] +name = "windows-numerics" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", +] + [[package]] name = "windows-result" version = "0.1.2" @@ -8285,13 +8128,50 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link 0.1.3", +] + [[package]] name = "windows-result" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" dependencies = [ - "windows-link", + "windows-link 0.2.1", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result 0.2.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +dependencies = [ + "windows-link 0.1.3", ] [[package]] @@ -8300,7 +8180,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" dependencies = [ - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -8354,7 +8234,7 @@ version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -8409,7 +8289,7 @@ version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ - "windows-link", + "windows-link 0.2.1", "windows_aarch64_gnullvm 0.53.1", "windows_aarch64_msvc 0.53.1", "windows_i686_gnu 0.53.1", @@ -8420,6 +8300,15 @@ dependencies = [ "windows_x86_64_msvc 0.53.1", ] +[[package]] +name = "windows-threading" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" +dependencies = [ + "windows-link 0.1.3", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -8602,51 +8491,214 @@ checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winit" -version = "0.30.5" -source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13-rc#dd46a1499bcc38f2134ab869e8860a32e091c55b" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" dependencies = [ - "ahash", - "android-activity", - "atomic-waker", "bitflags 2.11.0", - "block2 0.5.1", - "bytemuck", - "calloop 0.13.0", - "cfg_aliases 0.2.1", - "concurrent-queue", - "core-foundation", - "core-graphics", + "cfg_aliases", "cursor-icon", "dpi", - "js-sys", "libc", - "libredox", - "memmap2 0.9.10", - "ndk", - "objc2 0.5.2", - "objc2-app-kit 0.2.2", - "objc2-foundation 0.2.2", - "objc2-ui-kit", - "orbclient", - "percent-encoding", - "pin-project", "raw-window-handle", - "redox_event", - "rustix 0.38.44", - "sctk-adwaita", - "smithay-client-toolkit 0.19.2", - "smol_str 0.2.2", + "rustix 1.1.4", + "smol_str", + "tracing", + "winit-android", + "winit-appkit", + "winit-common", + "winit-core", + "winit-orbital", + "winit-uikit", + "winit-wayland", + "winit-web", + "winit-win32", + "winit-x11", +] + +[[package]] +name = "winit-android" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "android-activity", + "bitflags 2.11.0", + "dpi", + "ndk", + "raw-window-handle", + "smol_str", + "tracing", + "winit-core", +] + +[[package]] +name = "winit-appkit" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "bitflags 2.11.0", + "block2 0.6.2", + "dispatch2", + "dpi", + "objc2 0.6.4", + "objc2-app-kit 0.3.2", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-core-video", + "objc2-foundation 0.3.2", + "raw-window-handle", + "smol_str", + "tracing", + "winit-common", + "winit-core", +] + +[[package]] +name = "winit-common" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "memmap2 0.9.10", + "objc2 0.6.4", + "objc2-core-foundation", + "smol_str", + "tracing", + "winit-core", + "x11-dl", + "xkbcommon-dl", +] + +[[package]] +name = "winit-core" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "bitflags 2.11.0", + "cursor-icon", + "dpi", + "keyboard-types", + "raw-window-handle", + "smol_str", + "web-time", +] + +[[package]] +name = "winit-orbital" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "bitflags 2.11.0", + "dpi", + "libredox", + "orbclient", + "raw-window-handle", + "redox_syscall 0.7.3", + "smol_str", + "tracing", + "winit-core", +] + +[[package]] +name = "winit-uikit" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "bitflags 2.11.0", + "block2 0.6.2", + "dispatch2", + "dpi", + "objc2 0.6.4", + "objc2-core-foundation", + "objc2-foundation 0.3.2", + "objc2-ui-kit", + "raw-window-handle", + "smol_str", + "tracing", + "winit-common", + "winit-core", +] + +[[package]] +name = "winit-wayland" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "ahash", + "bitflags 2.11.0", + "calloop", + "cursor-icon", + "dpi", + "libc", + "memmap2 0.9.10", + "raw-window-handle", + "rustix 1.1.4", + "sctk-adwaita", + "smithay-client-toolkit", + "smol_str", "tracing", - "unicode-segmentation", - "wasm-bindgen", - "wasm-bindgen-futures", "wayland-backend", "wayland-client", "wayland-protocols", "wayland-protocols-plasma", + "winit-common", + "winit-core", +] + +[[package]] +name = "winit-web" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "atomic-waker", + "bitflags 2.11.0", + "concurrent-queue", + "cursor-icon", + "dpi", + "js-sys", + "pin-project", + "raw-window-handle", + "smol_str", + "tracing", + "wasm-bindgen", + "wasm-bindgen-futures", "web-sys", "web-time", - "windows-sys 0.52.0", + "winit-core", +] + +[[package]] +name = "winit-win32" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "bitflags 2.11.0", + "cursor-icon", + "dpi", + "raw-window-handle", + "smol_str", + "tracing", + "unicode-segmentation", + "windows-sys 0.59.0", + "winit-core", +] + +[[package]] +name = "winit-x11" +version = "0.31.0-beta.2" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +dependencies = [ + "bitflags 2.11.0", + "bytemuck", + "calloop", + "cursor-icon", + "dpi", + "libc", + "percent-encoding", + "raw-window-handle", + "rustix 1.1.4", + "smol_str", + "tracing", + "winit-common", + "winit-core", "x11-dl", "x11rb", "xkbcommon-dl", @@ -8654,28 +8706,22 @@ dependencies = [ [[package]] name = "winnow" -version = "0.5.40" +version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" dependencies = [ "memchr", ] [[package]] name = "winnow" -version = "0.7.14" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" +checksum = "a90e88e4667264a994d34e6d1ab2d26d398dcdca8b7f52bec8668957517fc7d8" dependencies = [ "memchr", ] -[[package]] -name = "wit-bindgen" -version = "0.46.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" - [[package]] name = "wit-bindgen" version = "0.51.0" @@ -8706,7 +8752,7 @@ dependencies = [ "heck 0.5.0", "indexmap 2.13.0", "prettyplease", - "syn 2.0.117", + "syn", "wasm-metadata", "wit-bindgen-core", "wit-component", @@ -8722,7 +8768,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "syn 2.0.117", + "syn", "wit-bindgen-core", "wit-bindgen-rust", ] @@ -8834,16 +8880,6 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2fb433233f2df9344722454bc7e96465c9d03bff9d77c248f9e7523fe79585b5" -[[package]] -name = "xdg-home" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec1cdab258fb55c0da61328dc52c8764709b249011b2cad0454c72f0bf10a1f6" -dependencies = [ - "libc", - "windows-sys 0.59.0", -] - [[package]] name = "xdg-mime" version = "0.4.0" @@ -8987,65 +9023,29 @@ checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", "synstructure", ] [[package]] name = "zbus" -version = "3.15.2" +version = "5.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "675d170b632a6ad49804c8cf2105d7c31eddd3312555cffd4b740e08e97c25e6" +checksum = "ca82f95dbd3943a40a53cfded6c2d0a2ca26192011846a1810c4256ef92c60bc" dependencies = [ - "async-broadcast 0.5.1", - "async-process 1.8.1", - "async-recursion", - "async-trait", - "byteorder", - "derivative", - "enumflags2", - "event-listener 2.5.3", - "futures-core", - "futures-sink", - "futures-util", - "hex", - "nix", - "once_cell", - "ordered-stream", - "rand 0.8.5", - "serde", - "serde_repr", - "sha1", - "static_assertions", - "tokio", - "tracing", - "uds_windows", - "winapi", - "xdg-home", - "zbus_macros 3.15.2", - "zbus_names 2.6.1", - "zvariant 3.15.2", -] - -[[package]] -name = "zbus" -version = "5.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfeff997a0aaa3eb20c4652baf788d2dfa6d2839a0ead0b3ff69ce2f9c4bdd1" -dependencies = [ - "async-broadcast 0.7.2", + "async-broadcast", "async-executor", - "async-io 2.6.0", - "async-lock 3.4.2", - "async-process 2.5.0", + "async-io", + "async-lock", + "async-process", "async-recursion", "async-task", "async-trait", "blocking", "enumflags2", - "event-listener 5.4.1", + "event-listener", "futures-core", - "futures-lite 2.6.1", + "futures-lite", "hex", "libc", "ordered-stream", @@ -9057,50 +9057,49 @@ dependencies = [ "uds_windows", "uuid", "windows-sys 0.61.2", - "winnow 0.7.14", - "zbus_macros 5.13.2", - "zbus_names 4.3.1", - "zvariant 5.9.2", + "winnow 0.7.15", + "zbus_macros", + "zbus_names", + "zvariant", +] + +[[package]] +name = "zbus-lockstep" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6998de05217a084b7578728a9443d04ea4cd80f2a0839b8d78770b76ccd45863" +dependencies = [ + "zbus_xml", + "zvariant", +] + +[[package]] +name = "zbus-lockstep-macros" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10da05367f3a7b7553c8cdf8fa91aee6b64afebe32b51c95177957efc47ca3a0" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "zbus-lockstep", + "zbus_xml", + "zvariant", ] [[package]] name = "zbus_macros" -version = "3.15.2" +version = "5.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7131497b0f887e8061b430c530240063d33bf9455fa34438f388a245da69e0a5" +checksum = "897e79616e84aac4b2c46e9132a4f63b93105d54fe8c0e8f6bffc21fa8d49222" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate", "proc-macro2", "quote", - "regex", - "syn 1.0.109", - "zvariant_utils 1.0.1", -] - -[[package]] -name = "zbus_macros" -version = "5.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bbd5a90dbe8feee5b13def448427ae314ccd26a49cac47905cafefb9ff846f1" -dependencies = [ - "proc-macro-crate 3.4.0", - "proc-macro2", - "quote", - "syn 2.0.117", - "zbus_names 4.3.1", - "zvariant 5.9.2", - "zvariant_utils 3.3.0", -] - -[[package]] -name = "zbus_names" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "437d738d3750bed6ca9b8d423ccc7a8eb284f6b1d6d4e225a0e4e6258d864c8d" -dependencies = [ - "serde", - "static_assertions", - "zvariant 3.15.2", + "syn", + "zbus_names", + "zvariant", + "zvariant_utils", ] [[package]] @@ -9110,8 +9109,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffd8af6d5b78619bab301ff3c560a5bd22426150253db278f164d6cf3b72c50f" dependencies = [ "serde", - "winnow 0.7.14", - "zvariant 5.9.2", + "winnow 0.7.15", + "zvariant", +] + +[[package]] +name = "zbus_xml" +version = "5.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "441a0064125265655bccc3a6af6bef56814d9277ac83fce48b1cd7e160b80eac" +dependencies = [ + "quick-xml 0.38.4", + "serde", + "zbus_names", + "zvariant", ] [[package]] @@ -9122,22 +9133,22 @@ checksum = "6df3dc4292935e51816d896edcd52aa30bc297907c26167fec31e2b0c6a32524" [[package]] name = "zerocopy" -version = "0.8.39" +version = "0.8.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a" +checksum = "f2578b716f8a7a858b7f02d5bd870c14bf4ddbbcf3a4c05414ba6503640505e3" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.39" +version = "0.8.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517" +checksum = "7e6cc098ea4d3bd6246687de65af3f920c430e236bee1e3bf2e441463f08a02f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -9157,7 +9168,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", "synstructure", ] @@ -9178,7 +9189,7 @@ checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -9212,7 +9223,7 @@ checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -9245,9 +9256,9 @@ dependencies = [ [[package]] name = "zlib-rs" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c745c48e1007337ed136dc99df34128b9faa6ed542d80a1c673cf55a6d7236c8" +checksum = "3be3d40e40a133f9c916ee3f9f4fa2d9d63435b5fbe1bfc6d9dae0aa0ada1513" [[package]] name = "zmij" @@ -9327,77 +9338,39 @@ dependencies = [ [[package]] name = "zune-jpeg" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "410e9ecef634c709e3831c2cfdb8d9c32164fae1c67496d5b68fff728eec37fe" +checksum = "ec5f41c76397b7da451efd19915684f727d7e1d516384ca6bd0ec43ec94de23c" dependencies = [ "zune-core 0.5.1", ] [[package]] name = "zvariant" -version = "3.15.2" +version = "5.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eef2be88ba09b358d3b58aca6e41cd853631d44787f319a1383ca83424fb2db" -dependencies = [ - "byteorder", - "enumflags2", - "libc", - "serde", - "static_assertions", - "zvariant_derive 3.15.2", -] - -[[package]] -name = "zvariant" -version = "5.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b64ef4f40c7951337ddc7023dd03528a57a3ce3408ee9da5e948bd29b232c4" +checksum = "5708299b21903bbe348e94729f22c49c55d04720a004aa350f1f9c122fd2540b" dependencies = [ "endi", "enumflags2", "serde", "url", - "winnow 0.7.14", - "zvariant_derive 5.9.2", - "zvariant_utils 3.3.0", + "winnow 0.7.15", + "zvariant_derive", + "zvariant_utils", ] [[package]] name = "zvariant_derive" -version = "3.15.2" +version = "5.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37c24dc0bed72f5f90d1f8bb5b07228cbf63b3c6e9f82d82559d4bae666e7ed9" +checksum = "5b59b012ebe9c46656f9cc08d8da8b4c726510aef12559da3e5f1bf72780752c" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", - "zvariant_utils 1.0.1", -] - -[[package]] -name = "zvariant_derive" -version = "5.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "484d5d975eb7afb52cc6b929c13d3719a20ad650fea4120e6310de3fc55e415c" -dependencies = [ - "proc-macro-crate 3.4.0", - "proc-macro2", - "quote", - "syn 2.0.117", - "zvariant_utils 3.3.0", -] - -[[package]] -name = "zvariant_utils" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", + "syn", + "zvariant_utils", ] [[package]] @@ -9409,6 +9382,6 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.117", - "winnow 0.7.14", + "syn", + "winnow 0.7.15", ] diff --git a/Cargo.toml b/Cargo.toml index f0a89be..961a06c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,7 @@ version = "1.0.8" authors = ["Jeremy Soller "] edition = "2024" license = "GPL-3.0-only" -rust-version = "1.85" +rust-version = "1.90" [dependencies] alacritty_terminal = "0.25.1" @@ -67,7 +67,7 @@ inherits = "release" debug = true -# [patch.'https://github.com/pop-os/libcosmic'] -# libcosmic = { path = "../libcosmic" } -# cosmic-config = { path = "../libcosmic/cosmic-config" } -# cosmic-theme = { path = "../libcosmic/cosmic-theme" } +#[patch.'https://github.com/pop-os/libcosmic'] +#libcosmic = { path = "../libcosmic" } +#cosmic-config = { path = "../libcosmic/cosmic-config" } +#cosmic-theme = { path = "../libcosmic/cosmic-theme" } diff --git a/src/main.rs b/src/main.rs index f394359..015b5eb 100644 --- a/src/main.rs +++ b/src/main.rs @@ -949,7 +949,7 @@ impl App { sections.push( widget::row::with_children(vec![ - widget::horizontal_space().into(), + widget::space::horizontal().into(), widget::button::standard(fl!("import")) .on_press(Message::ColorSchemeImport(color_scheme_kind)) .into(), @@ -1003,7 +1003,7 @@ impl App { let mut groups = Vec::new(); //TODO: fix text input focus going outside bounds - groups.push(widget::horizontal_space().into()); + groups.push(widget::space::horizontal().into()); groups.push( widget::text_input::search_input(fl!("type-to-search"), &self.shortcut_search_value) .id(self.shortcut_search_id.clone()) @@ -1269,7 +1269,7 @@ impl App { ]) .spacing(space_xxxs) .into(), - widget::horizontal_space().into(), + widget::space::horizontal().into(), widget::toggler(profile.drain_on_exit) .on_toggle(move |t| Message::ProfileHold(profile_id, t)) .into(), @@ -1292,7 +1292,7 @@ impl App { } let add_profile = widget::row::with_children(vec![ - widget::horizontal_space().into(), + widget::space::horizontal().into(), widget::button::standard(fl!("add-profile")) .on_press(Message::ProfileNew) .into(), @@ -3362,7 +3362,7 @@ impl Application for App { widget::tooltip::Position::Top, ) .into(), - widget::horizontal_space().into(), + widget::space::horizontal().into(), button::custom(icon_cache_get("window-close-symbolic", 16)) .on_press(Message::Find(false)) .padding(space_xxs) @@ -3428,22 +3428,24 @@ impl Application for App { } _ => None, }), - Subscription::run_with_id( - TypeId::of::(), - stream::channel(100, |mut output| async move { - let (event_tx, mut event_rx) = mpsc::unbounded_channel(); - output.send(Message::TermEventTx(event_tx)).await.unwrap(); + Subscription::run_with(TypeId::of::(), |_| { + stream::channel( + 100, + |mut output: iced::futures::channel::mpsc::Sender| async move { + let (event_tx, mut event_rx) = mpsc::unbounded_channel(); + output.send(Message::TermEventTx(event_tx)).await.unwrap(); - while let Some((pane, entity, event)) = event_rx.recv().await { - output - .send(Message::TermEvent(pane, entity, event)) - .await - .unwrap(); - } + while let Some((pane, entity, event)) = event_rx.recv().await { + output + .send(Message::TermEvent(pane, entity, event)) + .await + .unwrap(); + } - panic!("terminal event channel closed"); - }), - ), + panic!("terminal event channel closed"); + }, + ) + }), cosmic_config::config_subscription( TypeId::of::(), Self::APP_ID.into(), diff --git a/src/menu.rs b/src/menu.rs index 36e6ef2..228ab9b 100644 --- a/src/menu.rs +++ b/src/menu.rs @@ -1,15 +1,13 @@ // SPDX-License-Identifier: GPL-3.0-only use cosmic::iced::Point; -use cosmic::widget::Column; use cosmic::widget::menu::key_bind::KeyBind; use cosmic::widget::menu::{Item as MenuItem, menu_button}; +use cosmic::widget::{Column, space}; use cosmic::{ Element, app::Core, - iced::{ - Background, Length, advanced::widget::text::Style as TextStyle, widget::horizontal_space, - }, + iced::{Background, Length, advanced::widget::text::Style as TextStyle}, iced_core::Border, theme, widget::{ @@ -57,7 +55,7 @@ pub fn context_menu<'a>( let key = find_key(&action); menu_button(vec![ widget::text(label).into(), - horizontal_space().into(), + space::horizontal().into(), widget::text(key) .class(theme::Text::Custom(key_style)) .into(), @@ -68,7 +66,7 @@ pub fn context_menu<'a>( let menu_checkbox = |label, value, action| { menu_button(vec![ widget::text(label).into(), - widget::horizontal_space().into(), + widget::space::horizontal().into(), widget::toggler(value) .on_toggle(move |_| Message::TabContextAction(entity, action)) .size(16.0) diff --git a/src/password_manager.rs b/src/password_manager.rs index 85e7d6f..fdaa672 100644 --- a/src/password_manager.rs +++ b/src/password_manager.rs @@ -386,7 +386,7 @@ impl PasswordManager { sections.push(passwords_section.into()); let add_password = widget::row::with_children(vec![ - widget::horizontal_space().into(), + widget::space::horizontal().into(), widget::button::standard(fl!("add-password")) .on_press(Message::PasswordManager(PasswordManagerMessage::New)) .into(), diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 3dc1b8d..583d6bd 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -7,7 +7,6 @@ use alacritty_terminal::{ term::{TermMode, cell::Flags}, vte::ansi::{CursorShape, NamedColor}, }; -use cosmic::widget::menu::key_bind::KeyBind; use cosmic::{ Renderer, cosmic_theme::palette::{WithAlpha, blend::Compose}, @@ -34,6 +33,7 @@ use cosmic::{ }, theme::Theme, }; +use cosmic::{iced_core::SmolStr, widget::menu::key_bind::KeyBind}; use cosmic_text::LayoutGlyph; use indexmap::IndexSet; use std::{ @@ -263,7 +263,7 @@ where } fn layout( - &self, + &mut self, _tree: &mut widget::Tree, _renderer: &Renderer, limits: &layout::Limits, @@ -297,15 +297,15 @@ where } fn operate( - &self, + &mut self, tree: &mut widget::Tree, - _layout: Layout<'_>, + layout: Layout<'_>, _renderer: &Renderer, operation: &mut dyn Operation, ) { let state = tree.state.downcast_mut::(); - operation.focusable(state, self.id.as_ref()); + operation.focusable(self.id.as_ref(), layout.bounds(), state); } fn mouse_interaction( @@ -316,6 +316,9 @@ where _viewport: &Rectangle, _renderer: &Renderer, ) -> mouse::Interaction { + if self.disabled { + return mouse::Interaction::default(); + } let state = tree.state.downcast_ref::(); if let Some(Dragging::Scrollbar { .. }) = &state.dragging { @@ -348,7 +351,7 @@ where } } - mouse::Interaction::Idle + mouse::Interaction::default() } fn draw( @@ -377,10 +380,10 @@ where let view_position = layout.position() + [self.padding.left, self.padding.top].into(); let view_w = cmp::min(viewport.width as i32, layout.bounds().width as i32) - - self.padding.horizontal() as i32 + - self.padding.x() as i32 - scrollbar_w as i32; let view_h = cmp::min(viewport.height as i32, layout.bounds().height as i32) - - self.padding.vertical() as i32; + - self.padding.y() as i32; if view_w <= 0 || view_h <= 0 { // Zero sized image @@ -417,7 +420,7 @@ where }, ..Default::default() }, - Color::new( + Color::from_rgba( f32::from(background_color.r()) / 255.0, f32::from(background_color.g()) / 255.0, f32::from(background_color.b()) / 255.0, @@ -468,7 +471,7 @@ where is_focused: bool, ) { let cosmic_text_to_iced_color = |color: cosmic_text::Color| { - Color::new( + Color::from_rgba( f32::from(color.r()) / 255.0, f32::from(color.g()) / 255.0, f32::from(color.b()) / 255.0, @@ -645,7 +648,7 @@ where renderer.fill_raw(Raw { buffer: terminal.buffer_weak(), position: view_position, - color: Color::new(1.0, 1.0, 1.0, 1.0), // TODO + color: Color::from_rgba(1.0, 1.0, 1.0, 1.0), // TODO clip_bounds: Rectangle::new(view_position, Size::new(view_w as f32, view_h as f32)), }); @@ -799,19 +802,19 @@ where log::trace!("redraw {}, {}: {:?}", view_w, view_h, duration); } - fn on_event( + fn update( &mut self, tree: &mut widget::Tree, - event: Event, + event: &Event, layout: Layout<'_>, cursor_position: mouse::Cursor, _renderer: &Renderer, _clipboard: &mut dyn Clipboard, shell: &mut Shell<'_, Message>, _viewport: &Rectangle, - ) -> Status { + ) { if self.disabled { - return Status::Ignored; + return; } let state = tree.state.downcast_mut::(); let scrollbar_rect = state.scrollbar_rect.get(); @@ -820,7 +823,6 @@ where let is_app_cursor = terminal.term.lock().mode().contains(TermMode::APP_CURSOR); let is_mouse_mode = terminal.term.lock().mode().intersects(TermMode::MOUSE_MODE); - let mut status = Status::Ignored; match event { Event::Window(event) => match event { cosmic::iced::window::Event::Focused => { @@ -842,11 +844,11 @@ where self.padding, multiplier, ) { - status = Status::Captured; + shell.capture_event(); } } if state.autoscroll.is_active() { - shell.request_redraw(RedrawRequest::NextFrame); + shell.request_redraw(); } } } @@ -867,8 +869,9 @@ where .. }) if state.is_focused && named == modified_named => { for key_bind in self.key_binds.keys() { - if key_bind.matches(modifiers, &Key::Named(named)) { - return Status::Captured; + if key_bind.matches(*modifiers, &Key::Named(*named)) { + shell.capture_event(); + return; } } @@ -956,7 +959,9 @@ where }; if let Some(escape_code) = escape_code { terminal.input_scroll(escape_code); - return Status::Captured; + shell.capture_event(); + + return; } //Special handle Enter, Escape, Backspace and Tab as described in @@ -967,11 +972,11 @@ where Named::Backspace => { let code = if modifiers.control() { "\x08" } else { "\x7f" }; terminal.input_scroll(format!("{alt_prefix}{code}").into_bytes()); - status = Status::Captured; + shell.capture_event(); } Named::Enter => { terminal.input_scroll(format!("{}{}", alt_prefix, "\x0D").into_bytes()); - status = Status::Captured; + shell.capture_event(); } Named::Escape => { //Escape with any modifier will cancel selection @@ -984,31 +989,19 @@ where } else { terminal.input_scroll(format!("{}{}", alt_prefix, "\x1B").into_bytes()); } - status = Status::Captured; + shell.capture_event(); } - Named::Space => { - // Keep this instead of hardcoding the space to allow for dead keys - let character = text.and_then(|c| c.chars().next()).unwrap_or_default(); - if modifiers.control() { - // Send NUL character (\x00) for Ctrl + Space - terminal.input_scroll(b"\x00".to_vec()); - } else { - terminal - .input_scroll(format!("{}{}", alt_prefix, character).into_bytes()); - } - status = Status::Captured; - } Named::Tab => { let code = if modifiers.shift() { "\x1b[Z" } else { "\x09" }; terminal.input_scroll(format!("{alt_prefix}{code}").into_bytes()); - status = Status::Captured; + shell.capture_event(); } _ => {} } } Event::Keyboard(KeyEvent::ModifiersChanged(modifiers)) => { - state.modifiers = modifiers; + state.modifiers = *modifiers; if modifiers.contains(Modifiers::CTRL) || terminal.active_regex_match.is_some() @@ -1032,6 +1025,31 @@ where update_active_regex_match(&mut terminal, location, Some(&state.modifiers)); } } + Event::Keyboard(KeyEvent::KeyPressed { + text, + modifiers, + key, + .. + }) if *key == Key::Character(SmolStr::new(" ")) => { + //Special handle Enter, Escape, Backspace and Tab as described in + //https://sw.kovidgoyal.net/kitty/keyboard-protocol/#legacy-key-event-encoding + //Also special handle Ctrl-_ to behave like xterm + let alt_prefix = if modifiers.alt() { "\x1B" } else { "" }; + + // Keep this instead of hardcoding the space to allow for dead keys + let character = text + .as_ref() + .and_then(|c| c.chars().next()) + .unwrap_or_default(); + + if modifiers.control() { + // Send NUL character (\x00) for Ctrl + Space + terminal.input_scroll(b"\x00".to_vec()); + } else { + terminal.input_scroll(format!("{}{}", alt_prefix, character).into_bytes()); + } + shell.capture_event(); + } Event::Keyboard(KeyEvent::KeyPressed { text, modifiers, @@ -1039,11 +1057,16 @@ where .. }) if state.is_focused => { for key_bind in self.key_binds.keys() { - if key_bind.matches(modifiers, &key) { - return Status::Captured; + if key_bind.matches(*modifiers, key) { + shell.capture_event(); + + return; } } - let character = text.and_then(|c| c.chars().next()).unwrap_or_default(); + let character = text + .as_ref() + .and_then(|c| c.chars().next()) + .unwrap_or_default(); match ( modifiers.logo(), modifiers.control(), @@ -1064,7 +1087,7 @@ where str.len() + 1 }; terminal.input_scroll(buf[..len].to_vec()); - status = Status::Captured; + shell.capture_event(); } } (false, true, _, false) => { @@ -1073,7 +1096,7 @@ where let mut buf = [0, 0, 0, 0]; let str = character.encode_utf8(&mut buf); terminal.input_scroll(str.as_bytes().to_vec()); - status = Status::Captured; + shell.capture_event(); } } (false, true, _, true) => { @@ -1081,9 +1104,9 @@ where //is taken by zoom, we send that code for //Ctrl+Underline instead, like xterm and //gnome-terminal - if key == Key::Character("_".into()) { + if *key == Key::Character("_".into()) { terminal.input_scroll(b"\x1F".as_slice()); - status = Status::Captured; + shell.capture_event(); } } (false, false, true, _) => { @@ -1095,7 +1118,7 @@ where str.len() + 1 }; terminal.input_scroll(buf[..len].to_vec()); - status = Status::Captured; + shell.capture_event(); } } (false, false, false, _) => { @@ -1104,7 +1127,7 @@ where let mut buf = [0, 0, 0, 0]; let str = character.encode_utf8(&mut buf); terminal.input_scroll(str.as_bytes().to_vec()); - status = Status::Captured; + shell.capture_event(); } } } @@ -1119,7 +1142,12 @@ where if is_mouse_mode { state.autoscroll.stop(); - terminal.report_mouse(event, &state.modifiers, col as u32, row as u32); + terminal.report_mouse( + event.clone(), + &state.modifiers, + col as u32, + row as u32, + ); } else { state.is_focused = true; @@ -1214,7 +1242,7 @@ where } } } - } else if button == Button::Middle { + } else if *button == Button::Middle { if let Some(on_middle_click) = &self.on_middle_click { shell.publish(on_middle_click()); } @@ -1226,7 +1254,7 @@ where shell.publish(on_context_menu(None)); } None => { - if button == Button::Right { + if *button == Button::Right { let x = p.x - self.padding.left; let y = p.y - self.padding.top; //TODO: better calculation of position @@ -1251,7 +1279,7 @@ where } } } - status = Status::Captured; + shell.capture_event(); } } } @@ -1286,18 +1314,23 @@ where if let Some(on_open_hyperlink) = &self.on_open_hyperlink { if let Some(hyperlink) = get_hyperlink(&terminal, location) { shell.publish(on_open_hyperlink(hyperlink)); - status = Status::Captured; + shell.capture_event(); } } } if is_mouse_mode { - terminal.report_mouse(event, &state.modifiers, col as u32, row as u32); + terminal.report_mouse( + event.clone(), + &state.modifiers, + col as u32, + row as u32, + ); } else { - status = Status::Captured; + shell.capture_event(); } } else { - status = Status::Captured; + shell.capture_event(); } } Event::Mouse(MouseEvent::ButtonReleased(_button)) => { @@ -1309,7 +1342,12 @@ where let col = x / terminal.size().cell_width; let row = y / terminal.size().cell_height; if is_mouse_mode { - terminal.report_mouse(event, &state.modifiers, col as u32, row as u32); + terminal.report_mouse( + event.clone(), + &state.modifiers, + col as u32, + row as u32, + ); } } } @@ -1351,7 +1389,12 @@ where if is_mouse_mode { if let Some((col, row)) = col_row_opt { - terminal.report_mouse(event, &state.modifiers, col as u32, row as u32); + terminal.report_mouse( + event.clone(), + &state.modifiers, + col as u32, + row as u32, + ); } } else { let handled_buffer_drag = update_buffer_drag( @@ -1364,7 +1407,7 @@ where 0.0, ); if handled_buffer_drag { - status = Status::Captured; + shell.capture_event(); } else if let Some(Dragging::Scrollbar { start_y, start_scroll, @@ -1377,7 +1420,7 @@ where (y - start_y) / buffer.size().1.unwrap_or(1.0) }); terminal.scroll_to(start_scroll.0 + scroll_offset); - status = Status::Captured; + shell.capture_event(); } if matches!(state.dragging, Some(Dragging::Buffer { .. })) { @@ -1389,7 +1432,7 @@ where } else { state.autoscroll.start(p_global); } - shell.request_redraw(RedrawRequest::NextFrame); + shell.request_redraw(); } } else { state.autoscroll.stop(); @@ -1405,15 +1448,15 @@ where //TODO: better calculation of position let col = x / terminal.size().cell_width; let row = y / terminal.size().cell_height; - terminal.scroll_mouse(delta, &state.modifiers, col as u32, row as u32); + terminal.scroll_mouse(*delta, &state.modifiers, col as u32, row as u32); } else if terminal.term.lock().mode().contains(TermMode::ALT_SCREEN) { MouseReporter::report_mouse_wheel_as_arrows( &terminal, terminal.size().cell_width, terminal.size().cell_height, - delta, + *delta, ); - status = Status::Captured; + shell.capture_event(); } else { match delta { ScrollDelta::Lines { x: _, y } => { @@ -1423,7 +1466,7 @@ where if lines != 0 { terminal.scroll(TerminalScroll::Delta(-lines)); } - status = Status::Captured; + shell.capture_event(); } ScrollDelta::Pixels { x: _, y } => { //TODO: this adjustment is just a guess! @@ -1441,7 +1484,7 @@ where if lines != 0 { terminal.scroll(TerminalScroll::Delta(-lines)); } - status = Status::Captured; + shell.capture_event(); } } } @@ -1466,8 +1509,6 @@ where } _ => (), } - - status } } From 1428345cad272f4fd2a7c52cc434ecc8d10546c3 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Thu, 19 Mar 2026 11:44:06 -0600 Subject: [PATCH 02/28] fix: only send "space" to the focused pane --- src/terminal_box.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 583d6bd..43398c0 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -1030,7 +1030,7 @@ where modifiers, key, .. - }) if *key == Key::Character(SmolStr::new(" ")) => { + }) if state.is_focused && *key == Key::Character(SmolStr::new(" ")) => { //Special handle Enter, Escape, Backspace and Tab as described in //https://sw.kovidgoyal.net/kitty/keyboard-protocol/#legacy-key-event-encoding //Also special handle Ctrl-_ to behave like xterm From 9ed56eb2db29e6d31948f1b1c908acbb44972a30 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Thu, 19 Mar 2026 00:10:26 -0600 Subject: [PATCH 03/28] fix: prevent crash when splits are resized too small --- src/terminal.rs | 8 ++++++-- src/terminal_box.rs | 29 ++++++++++++++++++++++++++++- 2 files changed, 34 insertions(+), 3 deletions(-) diff --git a/src/terminal.rs b/src/terminal.rs index a12471c..1d14973 100644 --- a/src/terminal.rs +++ b/src/terminal.rs @@ -437,8 +437,12 @@ impl Terminal { if width != self.size.width || height != self.size.height { let instant = Instant::now(); - self.size.width = width; - self.size.height = height; + // Clamp dimensions to ensure at least 1 row and 1 column, + // preventing index-out-of-bounds panics in alacritty_terminal. + let min_width = self.size.cell_width.ceil() as u32; + let min_height = self.size.cell_height.ceil() as u32; + self.size.width = width.max(min_width); + self.size.height = height.max(min_height); self.notifier.on_resize(self.size.into()); self.term.lock().resize(self.size); diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 43398c0..dff183e 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -386,7 +386,34 @@ where - self.padding.y() as i32; if view_w <= 0 || view_h <= 0 { - // Zero sized image + // Pane too small for content, but still fill background + let terminal = self.terminal.lock().unwrap(); + let meta = &terminal.metadata_set[terminal.default_attrs().metadata]; + let background_color = shade(meta.bg, state.is_focused && !self.disabled); + renderer.fill_quad( + Quad { + bounds: layout.bounds(), + border: Border { + radius: if self.show_headerbar { + [0.0, 0.0, corner_radius[2], corner_radius[3]].into() + } else { + corner_radius.into() + }, + width: self.border.width, + color: self.border.color, + }, + ..Default::default() + }, + Color::from_rgba( + f32::from(background_color.r()) / 255.0, + f32::from(background_color.g()) / 255.0, + f32::from(background_color.b()) / 255.0, + match self.opacity { + Some(opacity) => opacity, + None => f32::from(background_color.a()) / 255.0, + }, + ), + ); return; } From 8203b1e23322eda28432c2154e2c57a7eef53f87 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Thu, 19 Mar 2026 11:15:58 -0600 Subject: [PATCH 04/28] fix(style): add the background color to that tab bar --- src/main.rs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index 015b5eb..0db17f2 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3265,7 +3265,19 @@ impl Application for App { .on_activate(Message::TabActivate) .on_close(|entity| Message::TabClose(Some(entity))), ) - .class(style::Container::Background) + .class(style::Container::Custom(Box::new(|theme| { + let cosmic = theme.cosmic(); + cosmic::iced_widget::container::Style { + icon_color: Some(Color::from(cosmic.background.on)), + text_color: Some(Color::from(cosmic.background.on)), + background: Some(iced::Background::Color( + cosmic.background.base.into(), + )), + border: iced::Border::default(), + shadow: iced::Shadow::default(), + snap: true, + } + }))) .width(Length::Fill), ); } From 8ae5918ccd15844a822eb63c091625b8ac798b2b Mon Sep 17 00:00:00 2001 From: Hojjat Date: Tue, 24 Mar 2026 13:03:28 -0600 Subject: [PATCH 05/28] fix: fix the one pixel wide gap between panes --- src/terminal_box.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/terminal_box.rs b/src/terminal_box.rs index dff183e..513cbf2 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -402,6 +402,7 @@ where width: self.border.width, color: self.border.color, }, + snap: true, ..Default::default() }, Color::from_rgba( @@ -445,6 +446,7 @@ where width: self.border.width, color: self.border.color, }, + snap: true, ..Default::default() }, Color::from_rgba( From fd99bb9b5536a241b58613b2d2c5ba946df11042 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Wed, 1 Apr 2026 16:29:37 -0600 Subject: [PATCH 06/28] chore: updates for new cosmic-text --- Cargo.lock | 982 +++++++++++++++++++----------------------------- src/terminal.rs | 19 +- 2 files changed, 395 insertions(+), 606 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cd78954..8e61d3a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -212,23 +212,21 @@ checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14" [[package]] name = "android-activity" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" +checksum = "0f2a1bb052857d5dd49572219344a7332b31b76405648eabac5bc68978251bcd" dependencies = [ "android-properties", "bitflags 2.11.0", "cc", - "cesu8", "jni", - "jni-sys", "libc", "log", "ndk", "ndk-context", "ndk-sys", "num_enum", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] @@ -248,9 +246,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.21" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -269,9 +267,9 @@ checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] @@ -325,9 +323,9 @@ checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" [[package]] name = "arc-swap" -version = "1.8.2" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f3647c145568cec02c42054e07bdf9a5a698e15b466fb2341bfc393cd24aa5" +checksum = "a07d1f37ff60921c83bdfc7407723bdefe89b44b98a9b772f225c8f9d67141a6" dependencies = [ "rustversion", ] @@ -884,9 +882,9 @@ dependencies = [ [[package]] name = "calendrical_calculations" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a0b39595c6ee54a8d0900204ba4c401d0ab4eb45adaf07178e8d017541529e7" +checksum = "5abbd6eeda6885048d357edc66748eea6e0268e3dd11f326fff5bd248d779c26" dependencies = [ "core_maths", "displaydoc", @@ -928,9 +926,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.57" +version = "1.2.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" +checksum = "e1e928d4b69e3077709075a938a05ffbedfa53a84c8f766efbf8220bb1ff60e1" dependencies = [ "find-msvc-tools", "jobserver", @@ -938,12 +936,6 @@ dependencies = [ "shlex", ] -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - [[package]] name = "cfb" version = "0.7.3" @@ -976,7 +968,6 @@ dependencies = [ "iana-time-zone", "js-sys", "num-traits", - "pure-rust-locales", "serde", "wasm-bindgen", "windows-link 0.2.1", @@ -1036,36 +1027,6 @@ dependencies = [ "x11rb", ] -[[package]] -name = "cocoa" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c" -dependencies = [ - "bitflags 1.3.2", - "block", - "cocoa-foundation", - "core-foundation 0.9.4", - "core-graphics", - "foreign-types", - "libc", - "objc", -] - -[[package]] -name = "cocoa-foundation" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" -dependencies = [ - "bitflags 1.3.2", - "block", - "core-foundation 0.9.4", - "core-graphics-types 0.1.3", - "libc", - "objc", -] - [[package]] name = "codespan-reporting" version = "0.12.0" @@ -1116,9 +1077,9 @@ dependencies = [ [[package]] name = "compio-buf" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e8777c3ad31ab42f8a3a4a1bd629b78f688371df9b0f528d94dfbdbe5c945c9" +checksum = "a00d719dbd8c602ab0d25d219cbc6b517008858de7a8d6c51b4dc95aefff4dce" dependencies = [ "arrayvec", "bytes", @@ -1127,9 +1088,9 @@ dependencies = [ [[package]] name = "compio-driver" -version = "0.11.3" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec8557d3804525f0e97594681f675929931782c9f8783a51c9f86da86b819150" +checksum = "74d42d98dc890ee4db00c1e68a723391711aab6d67085880d716b72830f7c715" dependencies = [ "cfg-if", "cfg_aliases", @@ -1241,19 +1202,9 @@ checksum = "e57e3272f0190c3f1584272d613719ba5fc7df7f4942fe542e63d949cf3a649b" [[package]] name = "constant_time_eq" -version = "0.3.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] +checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" [[package]] name = "core-foundation" @@ -1271,30 +1222,6 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" -[[package]] -name = "core-graphics" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" -dependencies = [ - "bitflags 1.3.2", - "core-foundation 0.9.4", - "core-graphics-types 0.1.3", - "foreign-types", - "libc", -] - -[[package]] -name = "core-graphics-types" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" -dependencies = [ - "bitflags 1.3.2", - "core-foundation 0.9.4", - "libc", -] - [[package]] name = "core-graphics-types" version = "0.2.0" @@ -1302,7 +1229,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" dependencies = [ "bitflags 2.11.0", - "core-foundation 0.10.1", + "core-foundation", "libc", ] @@ -1335,26 +1262,13 @@ dependencies = [ "libm", ] -[[package]] -name = "cosmic-client-toolkit" -version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-protocols?rev=d0e95be#d0e95be25e423cfe523b11111a3666ed7aaf0dc4" -dependencies = [ - "bitflags 2.11.0", - "cosmic-protocols 0.1.0", - "libc", - "smithay-client-toolkit", - "wayland-client", - "wayland-protocols", -] - [[package]] name = "cosmic-client-toolkit" version = "0.2.0" source = "git+https://github.com/pop-os/cosmic-protocols?rev=160b086#160b086abe03cd34a8a375d7fbe47b24308d1f38" dependencies = [ "bitflags 2.11.0", - "cosmic-protocols 0.2.0", + "cosmic-protocols", "libc", "smithay-client-toolkit", "wayland-client", @@ -1364,7 +1278,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1374,7 +1288,7 @@ dependencies = [ "iced_futures", "known-folders", "notify", - "ron 0.12.0", + "ron 0.12.1", "serde", "tokio", "tracing", @@ -1385,7 +1299,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "quote", "syn", @@ -1394,23 +1308,24 @@ dependencies = [ [[package]] name = "cosmic-files" version = "1.0.8" -source = "git+https://github.com/pop-os/cosmic-files.git#49d353d369f7cb242ab55ae94ab402873a66a473" +source = "git+https://github.com/pop-os/cosmic-files.git#e50c41aa247a9dd9f9ab6dae9d8f4a720701825a" dependencies = [ "anyhow", - "chrono", "compio", - "cosmic-client-toolkit 0.1.0", + "cosmic-client-toolkit", "dirs 6.0.0", "env_logger", "filetime", "flate2", - "fork 0.6.0", + "fork 0.7.0", "glob", "i18n-embed", "i18n-embed-fl", "icu", "ignore", "image", + "jiff", + "jiff-icu", "jxl-oxide", "libc", "libcosmic", @@ -1427,7 +1342,7 @@ dependencies = [ "recently-used-xbel", "regex", "rust-embed", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "serde", "shlex", "slotmap", @@ -1458,20 +1373,6 @@ dependencies = [ "xdg", ] -[[package]] -name = "cosmic-protocols" -version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-protocols?rev=d0e95be#d0e95be25e423cfe523b11111a3666ed7aaf0dc4" -dependencies = [ - "bitflags 2.11.0", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "wayland-protocols-wlr", - "wayland-scanner", - "wayland-server", -] - [[package]] name = "cosmic-protocols" version = "0.2.0" @@ -1489,7 +1390,7 @@ dependencies = [ [[package]] name = "cosmic-settings-config" version = "0.1.0" -source = "git+https://github.com/pop-os/cosmic-settings-daemon#e37160f14d1e7ee428f973cd2848b4e95f83dfe1" +source = "git+https://github.com/pop-os/cosmic-settings-daemon#716da6d6af0b252e2f78aba2ad72ee19ae0241e0" dependencies = [ "cosmic-config", "ron 0.11.0", @@ -1541,7 +1442,7 @@ dependencies = [ [[package]] name = "cosmic-text" version = "0.18.2" -source = "git+https://github.com/pop-os/cosmic-text.git#d5a972a2b63649fad11ea3a7e80f7dc4c592f01a" +source = "git+https://github.com/pop-os/cosmic-text.git#9a5579f5231bc52b3688a2de3643091f1ce32cbd" dependencies = [ "bitflags 2.11.0", "fontdb", @@ -1549,9 +1450,9 @@ dependencies = [ "linebender_resource_handle", "log", "rangemap", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "self_cell", - "skrifa 0.40.0", + "skrifa", "smol_str", "swash", "sys-locale", @@ -1564,7 +1465,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "almost", "configparser", @@ -1572,7 +1473,7 @@ dependencies = [ "csscolorparser", "dirs 6.0.0", "palette", - "ron 0.12.0", + "ron 0.12.1", "serde", "serde_json", "thiserror 2.0.18", @@ -1587,21 +1488,6 @@ dependencies = [ "libc", ] -[[package]] -name = "crc" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" -dependencies = [ - "crc-catalog", -] - -[[package]] -name = "crc-catalog" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" - [[package]] name = "crc32fast" version = "1.5.0" @@ -1659,7 +1545,7 @@ dependencies = [ "cosmic-text", "etagere", "lru", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "wgpu", ] @@ -1780,9 +1666,9 @@ checksum = "be1e0bca6c3637f992fc1cc7cbc52a78c1ef6db076dbf1059c4323d6a2048376" [[package]] name = "deflate64" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "807800ff3288b621186fe0a8f3392c4652068257302709c24efd918c3dffcdc2" +checksum = "ac6b926516df9c60bfa16e107b21086399f8285a44ca9711344b9e553c5146e2" [[package]] name = "deranged" @@ -1955,45 +1841,6 @@ name = "dpi" version = "0.1.2" source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" -[[package]] -name = "drm" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde" -dependencies = [ - "bitflags 2.11.0", - "bytemuck", - "drm-ffi", - "drm-fourcc", - "rustix 0.38.44", -] - -[[package]] -name = "drm-ffi" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6" -dependencies = [ - "drm-sys", - "rustix 0.38.44", -] - -[[package]] -name = "drm-fourcc" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4" - -[[package]] -name = "drm-sys" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d09ff881f92f118b11105ba5e34ff8f4adf27b30dae8f12e28c193af1c83176" -dependencies = [ - "libc", - "linux-raw-sys 0.6.5", -] - [[package]] name = "dyn-clone" version = "1.0.20" @@ -2035,9 +1882,9 @@ dependencies = [ [[package]] name = "env_filter" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a1c3cc8e57274ec99de65301228b537f1e4eedc1b8e0f9411c6caac8ae7308f" +checksum = "32e90c2accc4b07a8456ea0debdc2e7587bdd890680d71173a15d4ae604f6eef" dependencies = [ "log", "regex", @@ -2045,9 +1892,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.9" +version = "0.11.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2daee4ea451f429a58296525ddf28b45a3b64f1acf6587e2067437bb11e218d" +checksum = "0621c04f2196ac3f488dd583365b9c09be011a4ab8b9f37248ffcc8f6198b56a" dependencies = [ "anstream", "anstyle", @@ -2110,9 +1957,9 @@ dependencies = [ [[package]] name = "euclid" -version = "0.22.13" +version = "0.22.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df61bf483e837f88d5c2291dcf55c67be7e676b3a51acc48db3a7b163b91ed63" +checksum = "f1a05365e3b1c6d1650318537c7460c6923f1abdd272ad6842baa2b509957a06" dependencies = [ "num-traits", ] @@ -2231,9 +2078,9 @@ checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" [[package]] name = "fixed_decimal" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35eabf480f94d69182677e37571d3be065822acfafd12f2f085db44fbbcc8e57" +checksum = "79c3c892f121fff406e5dd6b28c1b30096b95111c30701a899d4f2b18da6d1bd" dependencies = [ "displaydoc", "smallvec", @@ -2292,7 +2139,7 @@ dependencies = [ "fluent-syntax", "intl-memoizer", "intl_pluralrules", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "self_cell", "smallvec", "unic-langid", @@ -2346,18 +2193,9 @@ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" [[package]] name = "font-types" -version = "0.10.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39a654f404bbcbd48ea58c617c2993ee91d1cb63727a37bf2323a4edeed1b8c5" -dependencies = [ - "bytemuck", -] - -[[package]] -name = "font-types" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e4d2d0cf79d38430cc9dc9aadec84774bff2e1ba30ae2bf6c16cfce9385a23" +checksum = "73829a7b5c91198af28a99159b7ae4afbb252fb906159ff7f189f3a2ceaa3df2" dependencies = [ "bytemuck", ] @@ -2423,9 +2261,9 @@ dependencies = [ [[package]] name = "fork" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29714eb48a54d35d6f107e38cc58003f2e26825f222119db8369d28b24b79f2a" +checksum = "5bcc4b4161e53d499e41af904acb23950adf85682c772921ef3957cf1ecc98b3" dependencies = [ "libc", ] @@ -2627,11 +2465,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", - "js-sys", "libc", "r-efi 5.3.0", "wasip2", - "wasm-bindgen", ] [[package]] @@ -2641,10 +2477,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" dependencies = [ "cfg-if", + "js-sys", "libc", "r-efi 6.0.0", "wasip2", "wasip3", + "wasm-bindgen", ] [[package]] @@ -2772,7 +2610,7 @@ dependencies = [ "log", "presser", "thiserror 1.0.69", - "windows 0.58.0", + "windows 0.56.0", ] [[package]] @@ -2832,7 +2670,7 @@ dependencies = [ "bitflags 2.11.0", "bytemuck", "core_maths", - "read-fonts 0.37.0", + "read-fonts", "smallvec", ] @@ -3007,7 +2845,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.62.2", + "windows-core 0.56.0", ] [[package]] @@ -3022,7 +2860,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "dnd", "iced_accessibility", @@ -3043,7 +2881,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "accesskit", "accesskit_winit", @@ -3052,11 +2890,11 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "bitflags 2.11.0", "bytes", - "cosmic-client-toolkit 0.2.0", + "cosmic-client-toolkit", "dnd", "glam", "lilt", @@ -3065,7 +2903,7 @@ dependencies = [ "num-traits", "palette", "raw-window-handle", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "serde", "smol_str", "thiserror 2.0.18", @@ -3076,7 +2914,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "iced_core", "iced_futures", @@ -3086,12 +2924,12 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "futures", "iced_core", "log", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "tokio", "wasm-bindgen-futures", "wasmtimer", @@ -3100,7 +2938,7 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -3113,7 +2951,7 @@ dependencies = [ "log", "lyon_path", "raw-window-handle", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "thiserror 2.0.18", "unicode-segmentation", ] @@ -3121,7 +2959,7 @@ dependencies = [ [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "iced_graphics", "iced_runtime", @@ -3130,7 +2968,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -3142,10 +2980,10 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "bytes", - "cosmic-client-toolkit 0.2.0", + "cosmic-client-toolkit", "dnd", "iced_core", "iced_futures", @@ -3157,7 +2995,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "bytemuck", "cosmic-text", @@ -3166,7 +3004,7 @@ dependencies = [ "kurbo 0.10.4", "log", "resvg", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "softbuffer", "tiny-skia", ] @@ -3174,12 +3012,11 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "as-raw-xcb-connection", "bitflags 2.11.0", "bytemuck", - "cosmic-client-toolkit 0.2.0", "cryoglyph", "futures", "glam", @@ -3190,7 +3027,7 @@ dependencies = [ "lyon", "raw-window-handle", "resvg", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "rustix 0.38.44", "thiserror 2.0.18", "tiny-xlib", @@ -3205,16 +3042,16 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ - "cosmic-client-toolkit 0.2.0", + "cosmic-client-toolkit", "dnd", "iced_renderer", "iced_runtime", "log", "num-traits", "ouroboros", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "thiserror 2.0.18", "unicode-segmentation", "window_clipboard", @@ -3223,9 +3060,9 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ - "cosmic-client-toolkit 0.2.0", + "cosmic-client-toolkit", "cursor-icon", "dnd", "iced_debug", @@ -3235,7 +3072,7 @@ dependencies = [ "iced_runtime", "log", "raw-window-handle", - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", "rustix 0.38.44", "thiserror 2.0.18", "wasm-bindgen-futures", @@ -3254,9 +3091,9 @@ dependencies = [ [[package]] name = "icu" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67ab713dd86fa032cb5487f9ac3a85d47b5dcf4c7b8c7dd00210b3cadd6a6551" +checksum = "00380f83691e089bcfa4aeb03a2d96a910b1c9ea406d6f822fc19dfb8b58d1ec" dependencies = [ "icu_calendar", "icu_casemap", @@ -3278,9 +3115,9 @@ dependencies = [ [[package]] name = "icu_calendar" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6f0e52e009b6b16ba9c0693578796f2dd4aaa59a7f8f920423706714a89ac4e" +checksum = "baf11bd83ebd0cd319e23a9a9c9a25b564a1fadc3bbc93069b8abc9d8df812bf" dependencies = [ "calendrical_calculations", "displaydoc", @@ -3296,15 +3133,15 @@ dependencies = [ [[package]] name = "icu_calendar_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "527f04223b17edfe0bd43baf14a0cb1b017830db65f3950dc00224860a9a446d" +checksum = "118577bcf3a0fa7c6ac0a7d6e951814da84ee56b9b1f68fb4d8d10b08cefaf4d" [[package]] name = "icu_casemap" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4ca9983e8bf51223c2f89014fa4eaa9e9b336c47f3af0d000538f86f841fba1" +checksum = "070f98b5b82798fcb93654bf96ed9f40064fc44c86f51a09ea711092cd5cc5be" dependencies = [ "icu_casemap_data", "icu_collections", @@ -3318,15 +3155,15 @@ dependencies = [ [[package]] name = "icu_casemap_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98d4663d0f99b301033a19e0acf94e9d2fa4b107638580165e5a6ccc49ad1450" +checksum = "846b0857ca091204be3c874bc93daaf89d4777e8d2d20b0d3ffe8f671d98014b" [[package]] name = "icu_collator" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32eed11a5572f1088b63fa21dc2e70d4a865e5739fc2d10abc05be93bae97019" +checksum = "b521b92a2666061ddda902769d8a4cf730b5c9529a845cc1b69770b12a6c9a71" dependencies = [ "icu_collator_data", "icu_collections", @@ -3343,19 +3180,20 @@ dependencies = [ [[package]] name = "icu_collator_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab06f0e83a613efddba3e4913e00e43ed4001fae651cb7d40fc7e66b83b6fb9" +checksum = "038ed8e5817f2059c2f3efb0945ba78d060d3d25e8f1a1bea5139f821a21a2f0" [[package]] name = "icu_collections" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" +checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" dependencies = [ "displaydoc", "potential_utf", "serde", + "utf8_iter", "yoke", "zerofrom", "zerovec", @@ -3363,9 +3201,9 @@ dependencies = [ [[package]] name = "icu_datetime" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9d49f41ded8e63761b6b4c3120dfdc289415a1ed10107db6198eb311057ca5" +checksum = "989d56ea5bbc43ae2b4e0388874b002884eaf4ed3a76c84a6c8c5ad575e04d72" dependencies = [ "displaydoc", "fixed_decimal", @@ -3386,20 +3224,23 @@ dependencies = [ [[package]] name = "icu_datetime_data" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46597233625417b7c8052a63d916e4fdc73df21614ac0b679492a5d6e3b01aeb" +checksum = "40d3cc1b690d9703202bc319692ac8a1f3a6390686f0930ff40542450fa34f0b" [[package]] name = "icu_decimal" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a38c52231bc348f9b982c1868a2af3195199623007ba2c7650f432038f5b3e8e" +checksum = "288247df2e32aa776ac54fdd64de552149ac43cb840f2761811f0e8d09719dd4" dependencies = [ + "displaydoc", "fixed_decimal", "icu_decimal_data", "icu_locale", "icu_locale_core", + "icu_pattern", + "icu_plurals", "icu_provider", "serde", "writeable", @@ -3408,15 +3249,15 @@ dependencies = [ [[package]] name = "icu_decimal_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2905b4044eab2dd848fe84199f9195567b63ab3a93094711501363f63546fef7" +checksum = "6f14a5ca9e8af29eef62064f269078424283d90dbaffeac5225addf62aaabc22" [[package]] name = "icu_experimental" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4ffa4d60b9cb8b024082afaf9e94d853184e483ec69322c74dc437bf8a882a5" +checksum = "0a881116e620fd635f564fd9cb9bc36c256b9da2221df8b3f55643d8ef32140f" dependencies = [ "displaydoc", "either", @@ -3447,15 +3288,15 @@ dependencies = [ [[package]] name = "icu_experimental_data" -version = "0.4.1" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0bce39e12480e91c7ddb748218050c459e241f491d130ea6ee92c3e5cd254f7" +checksum = "f72090d4f08a2bc94565cb02de6d5b87939424e462d9927d73a34f6f8e5d1232" [[package]] name = "icu_list" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3a0b7b126e2fc42777d3c348611553d540bd3683caa39b387c5dd1036bb21a8" +checksum = "aeeaf517689324395bed4767f7c65504f5455942ed4c14ee54c2087ca00b816e" dependencies = [ "icu_list_data", "icu_locale", @@ -3468,15 +3309,15 @@ dependencies = [ [[package]] name = "icu_list_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51044c242fe2a882cc0a464314bbdb9f441556a1cb238fb527fc47355ec2827b" +checksum = "ed62dbf114db9a4163481ed071509c4cd52cbcef9cb85979eba08a95549d73f3" [[package]] name = "icu_locale" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "532b11722e350ab6bf916ba6eb0efe3ee54b932666afec989465f9243fe6dd60" +checksum = "d5a396343c7208121dc86e35623d3dfe19814a7613cfd14964994cdc9c9a2e26" dependencies = [ "icu_collections", "icu_locale_core", @@ -3489,9 +3330,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" +checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" dependencies = [ "displaydoc", "litemap", @@ -3503,15 +3344,15 @@ dependencies = [ [[package]] name = "icu_locale_data" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c5f1d16b4c3a2642d3a719f18f6b06070ab0aef246a6418130c955ae08aa831" +checksum = "d5fdcc9ac77c6d74ff5cf6e65ef3181d6af32003b16fce3a77fb451d2f695993" [[package]] name = "icu_normalizer" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" +checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" dependencies = [ "icu_collections", "icu_normalizer_data", @@ -3526,15 +3367,15 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" +checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" [[package]] name = "icu_pattern" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7ff8c0ff6f61cdce299dcb54f557b0a251adbc78f6f0c35a21332c452b4a1b" +checksum = "1c4c568054ffe735398a9f4c55aec37ad7c768844553cc0978f09cc9b933a1fb" dependencies = [ "displaydoc", "either", @@ -3546,9 +3387,9 @@ dependencies = [ [[package]] name = "icu_plurals" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f9cfe49f5b1d1163cc58db451562339916a9ca5cbcaae83924d41a0bf839474" +checksum = "2a50023f1d49ad5c4333380328a0d4a19e4b9d6d842ec06639affd5ba47c8103" dependencies = [ "fixed_decimal", "icu_locale", @@ -3559,15 +3400,15 @@ dependencies = [ [[package]] name = "icu_plurals_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f018a98dccf7f0eb02ba06ac0ff67d102d8ded80734724305e924de304e12ff0" +checksum = "8485497155dc865f901decb93ecc20d3e467df67bfeceb91e3ba34e2b11e8e1d" [[package]] name = "icu_properties" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec" +checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" dependencies = [ "icu_collections", "icu_locale_core", @@ -3580,15 +3421,15 @@ dependencies = [ [[package]] name = "icu_properties_data" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af" +checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" [[package]] name = "icu_provider" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" +checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" dependencies = [ "displaydoc", "icu_locale_core", @@ -3603,9 +3444,9 @@ dependencies = [ [[package]] name = "icu_segmenter" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a807a7488f3f758629ae86d99d9d30dce24da2fb2945d74c80a4f4a62c71db73" +checksum = "5c0794db0b1a86193ac9c48768d0e6c52c54448e0870ad87907d456ee0dac964" dependencies = [ "core_maths", "icu_collections", @@ -3619,15 +3460,15 @@ dependencies = [ [[package]] name = "icu_segmenter_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ebbb7321d9e21d25f5660366cb6c08201d0175898a3a6f7a41ee9685af21c80" +checksum = "e4a2c462a4d927d512f5f882a033ddd62f33a05bb9f230d98f736ac3dc85938f" [[package]] name = "icu_time" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8242b00da3b3b6678f731437a11c8833a43c821ae081eca60ba1b7579d45b6d8" +checksum = "ec3af0c141da0a61d4f6970cd1d5f4b388b17ea22f8124f8f6049d3d5147586a" dependencies = [ "calendrical_calculations", "displaydoc", @@ -3643,9 +3484,9 @@ dependencies = [ [[package]] name = "icu_time_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e10b0e5e87a2c84bd5fa407705732052edebe69291d347d0c3033785470edbf" +checksum = "6f2f8aeca682d874a5247084aa4fb7d1cef9ba45d889c21209a8818dcaaa0ec9" [[package]] name = "id-arena" @@ -3717,7 +3558,7 @@ dependencies = [ "rgb", "tiff", "zune-core 0.5.1", - "zune-jpeg 0.5.13", + "zune-jpeg 0.5.15", ] [[package]] @@ -3870,15 +3711,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "ixdtf" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84de9d95a6d2547d9b77ee3f25fa0ee32e3c3a6484d47a55adebc0439c077992" +checksum = "2ceaf4c6c48465bead8cb6a0b7c4ee0c86ecbb31239032b9c66ab9a08d2f3ee1" [[package]] name = "jiff" @@ -3895,6 +3736,17 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "jiff-icu" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e67c2beaae8b10a82d849b9aabb698a43a682f32b17bcdc035d5ecadb44d646" +dependencies = [ + "icu_calendar", + "icu_time", + "jiff", +] + [[package]] name = "jiff-static" version = "0.2.23" @@ -3923,25 +3775,61 @@ dependencies = [ [[package]] name = "jni" -version = "0.21.1" +version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" dependencies = [ - "cesu8", "cfg-if", "combine", - "jni-sys", + "jni-macros", + "jni-sys 0.4.1", "log", - "thiserror 1.0.69", + "simd_cesu8", + "thiserror 2.0.18", "walkdir", - "windows-sys 0.45.0", + "windows-link 0.2.1", +] + +[[package]] +name = "jni-macros" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "simd_cesu8", + "syn", ] [[package]] name = "jni-sys" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] [[package]] name = "jobserver" @@ -3955,10 +3843,12 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.91" +version = "0.3.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c" +checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9" dependencies = [ + "cfg-if", + "futures-util", "once_cell", "wasm-bindgen", ] @@ -4255,19 +4145,19 @@ checksum = "2c4a545a15244c7d945065b5d392b2d2d7f21526fba56ce51467b06ed445e8f7" [[package]] name = "libc" -version = "0.2.183" +version = "0.2.184" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" +checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#3da55e807440a99f6ed62edc2e7a84ca4be9b844" +source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" dependencies = [ "apply", "ashpd 0.12.3", "auto_enums", - "cosmic-client-toolkit 0.2.0", + "cosmic-client-toolkit", "cosmic-config", "cosmic-freedesktop-icons", "cosmic-settings-config", @@ -4339,9 +4229,9 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1744e39d1d6a9948f4f388969627434e31128196de472883b39f148769bfe30a" +checksum = "7ddbf48fd451246b1f8c2610bd3b4ac0cc6e149d89832867093ab69a17194f08" dependencies = [ "bitflags 2.11.0", "libc", @@ -4370,12 +4260,6 @@ version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" -[[package]] -name = "linux-raw-sys" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a385b1be4e5c3e362ad2ffa73c392e53f031eaa5b7d648e64cd87f27f6063d7" - [[package]] name = "linux-raw-sys" version = "0.12.1" @@ -4384,9 +4268,9 @@ checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" +checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" [[package]] name = "litrs" @@ -4494,9 +4378,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05a35a7dd71b845ff317ce1834c4185506b79790294bde397df8d5c23031e357" +checksum = "8e43b7e44161571868f5c931d12583592c223c5583eef86b08aa02b7048a3552" dependencies = [ "float_next_after", "lyon_path", @@ -4505,11 +4389,10 @@ dependencies = [ [[package]] name = "lzma-rust2" -version = "0.15.7" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1670343e58806300d87950e3401e820b519b9384281bbabfb15e3636689ffd69" +checksum = "47bb1e988e6fb779cf720ad431242d3f03167c1b3f2b1aae7f1a94b2495b36ae" dependencies = [ - "crc", "sha2", ] @@ -4592,7 +4475,7 @@ checksum = "00c15a6f673ff72ddcc22394663290f870fb224c1bfce55734a75c414150e605" dependencies = [ "bitflags 2.11.0", "block", - "core-graphics-types 0.2.0", + "core-graphics-types", "foreign-types", "log", "objc", @@ -4641,9 +4524,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" +checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" dependencies = [ "libc", "log", @@ -4709,7 +4592,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" dependencies = [ "bitflags 2.11.0", - "jni-sys", + "jni-sys 0.3.1", "log", "ndk-sys", "num_enum", @@ -4729,7 +4612,7 @@ version = "0.6.0+11769913" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" dependencies = [ - "jni-sys", + "jni-sys 0.3.1", ] [[package]] @@ -4847,9 +4730,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" [[package]] name = "num-derive" @@ -4993,7 +4876,7 @@ dependencies = [ "objc2-core-data", "objc2-core-image", "objc2-foundation 0.2.2", - "objc2-quartz-core", + "objc2-quartz-core 0.2.2", ] [[package]] @@ -5040,8 +4923,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" dependencies = [ "bitflags 2.11.0", + "dispatch2", "libc", + "objc2 0.6.4", "objc2-core-foundation", + "objc2-io-surface", ] [[package]] @@ -5097,6 +4983,17 @@ dependencies = [ "objc2-core-foundation", ] +[[package]] +name = "objc2-io-surface" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d" +dependencies = [ + "bitflags 2.11.0", + "objc2 0.6.4", + "objc2-core-foundation", +] + [[package]] name = "objc2-metal" version = "0.2.2" @@ -5122,6 +5019,18 @@ dependencies = [ "objc2-metal", ] +[[package]] +name = "objc2-quartz-core" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96c1358452b371bf9f104e21ec536d37a650eb10f7ee379fff67d2e08d537f1f" +dependencies = [ + "bitflags 2.11.0", + "objc2 0.6.4", + "objc2-core-foundation", + "objc2-foundation 0.3.2", +] + [[package]] name = "objc2-ui-kit" version = "0.3.2" @@ -5184,9 +5093,9 @@ dependencies = [ [[package]] name = "ordered-float" -version = "5.1.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4779c6901a562440c3786d08192c6fbda7c1c2060edd10006b05ee35d10f2d" +checksum = "b7d950ca161dc355eaf28f82b11345ed76c6e1f6eb1f4f4479e0323b9e2fbd0e" dependencies = [ "num-traits", ] @@ -5554,9 +5463,9 @@ dependencies = [ [[package]] name = "potential_utf" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" +checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" dependencies = [ "serde_core", "writeable", @@ -5696,12 +5605,6 @@ dependencies = [ "syn", ] -[[package]] -name = "pure-rust-locales" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "869675ad2d7541aea90c6d88c81f46a7f4ea9af8cd0395d38f11a95126998a0d" - [[package]] name = "pxfm" version = "0.1.28" @@ -5920,16 +5823,6 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "read-fonts" -version = "0.35.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6717cf23b488adf64b9d711329542ba34de147df262370221940dfabc2c91358" -dependencies = [ - "bytemuck", - "font-types 0.10.1", -] - [[package]] name = "read-fonts" version = "0.37.0" @@ -5938,7 +5831,7 @@ checksum = "7b634fabf032fab15307ffd272149b622260f55974d9fad689292a5d33df02e5" dependencies = [ "bytemuck", "core_maths", - "font-types 0.11.0", + "font-types", ] [[package]] @@ -6117,9 +6010,9 @@ dependencies = [ [[package]] name = "ron" -version = "0.12.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd490c5b18261893f14449cbd28cb9c0b637aebf161cd77900bfdedaff21ec32" +checksum = "4147b952f3f819eca0e99527022f7d6a8d05f111aeb0a62960c74eb283bec8fc" dependencies = [ "bitflags 2.11.0", "once_cell", @@ -6177,9 +6070,18 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc-hash" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] [[package]] name = "rustix" @@ -6485,9 +6387,19 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e320a6c5ad31d271ad523dcf3ad13e2767ad8b1cb8f047f75a8aeaf8da139da2" +checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" + +[[package]] +name = "simd_cesu8" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +dependencies = [ + "rustc_version", + "simdutf8", +] [[package]] name = "simd_helpers" @@ -6498,6 +6410,12 @@ dependencies = [ "quote", ] +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + [[package]] name = "simplecss" version = "0.2.2" @@ -6513,16 +6431,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" -[[package]] -name = "skrifa" -version = "0.37.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c31071dedf532758ecf3fed987cdb4bd9509f900e026ab684b4ecb81ea49841" -dependencies = [ - "bytemuck", - "read-fonts 0.35.0", -] - [[package]] name = "skrifa" version = "0.40.0" @@ -6530,7 +6438,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7fbdfe3d2475fbd7ddd1f3e5cf8288a30eb3e5f95832829570cd88115a7434ac" dependencies = [ "bytemuck", - "read-fonts 0.37.0", + "read-fonts", ] [[package]] @@ -6617,31 +6525,32 @@ dependencies = [ [[package]] name = "softbuffer" -version = "0.4.1" -source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#a3f77e251e7422803f693df6e3fc313c010c4dcb" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac18da81ebbf05109ab275b157c22a653bb3c12cf884450179942f81bcbf6c3" dependencies = [ "as-raw-xcb-connection", "bytemuck", - "cfg_aliases", - "cocoa", - "core-graphics", - "drm", "fastrand", - "foreign-types", "js-sys", - "log", "memmap2 0.9.10", - "objc", + "ndk", + "objc2 0.6.4", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation 0.3.2", + "objc2-quartz-core 0.3.2", "raw-window-handle", "redox_syscall 0.5.18", - "rustix 0.38.44", + "rustix 1.1.4", "tiny-xlib", + "tracing", "wasm-bindgen", "wayland-backend", "wayland-client", "wayland-sys", "web-sys", - "windows-sys 0.52.0", + "windows-sys 0.61.2", "x11rb", ] @@ -6714,11 +6623,11 @@ dependencies = [ [[package]] name = "swash" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47846491253e976bdd07d0f9cc24b7daf24720d11309302ccbbc6e6b6e53550a" +checksum = "842f3cd369c2ba38966204f983eaa5e54a8e84a7d7159ed36ade2b6c335aae64" dependencies = [ - "skrifa 0.37.0", + "skrifa", "yazi", "zeno", ] @@ -6736,9 +6645,9 @@ dependencies = [ [[package]] name = "synchrony" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5f5d3091c2d998f6ab4c8b495c0d232ad0aecbc1fa9ac52c247a79d497e16" +checksum = "c174d82fd56da8214ec095cfe4568e59e5ccb49d060e70c2f98e3ba352b23e45" dependencies = [ "futures-util", "loom", @@ -6778,9 +6687,9 @@ dependencies = [ [[package]] name = "tar" -version = "0.4.44" +version = "0.4.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" +checksum = "22692a6476a21fa75fdfc11d452fda482af402c008cdbaf3476414e122040973" dependencies = [ "filetime", "libc", @@ -6881,7 +6790,7 @@ dependencies = [ "half", "quick-error", "weezl", - "zune-jpeg 0.5.13", + "zune-jpeg 0.5.15", ] [[package]] @@ -6957,9 +6866,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" +checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" dependencies = [ "displaydoc", "serde_core", @@ -7031,32 +6940,32 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "1.0.1+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b320e741db58cac564e26c607d3cc1fdc4a88fd36c879568c07856ed83ff3e9" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.25.5+spec-1.1.0" +version = "0.25.10+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca1a40644a28bce036923f6a431df0b34236949d111cc07cb6dca830c9ef2e1" +checksum = "a82418ca169e235e6c399a84e395ab6debeb3bc90edc959bf0f48647c6a32d1b" dependencies = [ "indexmap 2.13.0", "toml_datetime", "toml_parser", - "winnow 1.0.0", + "winnow 1.0.1", ] [[package]] name = "toml_parser" -version = "1.0.10+spec-1.1.0" +version = "1.1.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7df25b4befd31c4816df190124375d5a20c6b6921e2cad937316de3fccd63420" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" dependencies = [ - "winnow 1.0.0", + "winnow 1.0.1", ] [[package]] @@ -7153,7 +7062,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb30dbbd9036155e74adad6812e9898d03ec374946234fbcebd5dfc7b9187b90" dependencies = [ - "rustc-hash 2.1.1", + "rustc-hash 2.1.2", ] [[package]] @@ -7263,9 +7172,9 @@ checksum = "383ad40bb927465ec0ce7720e033cb4ca06912855fc35db31b5755d0de75b1ee" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" [[package]] name = "unicode-vo" @@ -7351,9 +7260,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.22.0" +version = "1.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a68d3c8f01c0cfa54a75291d83601161799e4a89a39e0929f4b0354d88757a37" +checksum = "5ac8b6f42ead25368cf5b098aeb3dc8a1a2c05a3eee8a9a1a68c640edbfc79d9" dependencies = [ "js-sys", "serde_core", @@ -7443,9 +7352,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e" +checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0" dependencies = [ "cfg-if", "once_cell", @@ -7456,23 +7365,19 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.64" +version = "0.4.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9c5522b3a28661442748e09d40924dfb9ca614b21c00d3fd135720e48b67db8" +checksum = "03623de6905b7206edd0a75f69f747f134b7f0a2323392d664448bf2d3c5d87e" dependencies = [ - "cfg-if", - "futures-util", "js-sys", - "once_cell", "wasm-bindgen", - "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6" +checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7480,9 +7385,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3" +checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2" dependencies = [ "bumpalo", "proc-macro2", @@ -7493,9 +7398,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16" +checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b" dependencies = [ "unicode-ident", ] @@ -7550,9 +7455,9 @@ dependencies = [ [[package]] name = "wayland-backend" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa75f400b7f719bcd68b3f47cd939ba654cedeef690f486db71331eec4c6a406" +checksum = "2857dd20b54e916ec7253b3d6b4d5c4d7d4ca2c33c2e11c6c76a99bd8744755d" dependencies = [ "cc", "downcast-rs", @@ -7564,9 +7469,9 @@ dependencies = [ [[package]] name = "wayland-client" -version = "0.31.13" +version = "0.31.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab51d9f7c071abeee76007e2b742499e535148035bb835f97aaed1338cf516c3" +checksum = "645c7c96bb74690c3189b5c9cb4ca1627062bb23693a4fad9d8c3de958260144" dependencies = [ "bitflags 2.11.0", "rustix 1.1.4", @@ -7587,9 +7492,9 @@ dependencies = [ [[package]] name = "wayland-cursor" -version = "0.31.13" +version = "0.31.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b3298683470fbdc6ca40151dfc48c8f2fd4c41a26e13042f801f85002384091" +checksum = "4a52d18780be9b1314328a3de5f930b73d2200112e3849ca6cb11822793fb34d" dependencies = [ "rustix 1.1.4", "wayland-client", @@ -7598,9 +7503,9 @@ dependencies = [ [[package]] name = "wayland-protocols" -version = "0.32.11" +version = "0.32.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b23b5df31ceff1328f06ac607591d5ba360cf58f90c8fad4ac8d3a55a3c4aec7" +checksum = "563a85523cade2429938e790815fd7319062103b9f4a2dc806e9b53b95982d8f" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7624,9 +7529,9 @@ dependencies = [ [[package]] name = "wayland-protocols-misc" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "429b99200febaf95d4f4e46deff6fe4382bcff3280ee16a41cf887b3c3364984" +checksum = "6e9567599ef23e09b8dad6e429e5738d4509dfc46b3b21f32841a304d16b29c8" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7637,9 +7542,9 @@ dependencies = [ [[package]] name = "wayland-protocols-plasma" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d392fc283a87774afc9beefcd6f931582bb97fe0e6ced0b306a62cb1d026527c" +checksum = "2b6d8cf1eb2c1c31ed1f5643c88a6e53538129d4af80030c8cabd1f9fa884d91" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7650,9 +7555,9 @@ dependencies = [ [[package]] name = "wayland-protocols-wlr" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78248e4cc0eff8163370ba5c158630dcae1f3497a586b826eca2ef5f348d6235" +checksum = "eb04e52f7836d7c7976c78ca0250d61e33873c34156a2a1fc9474828ec268234" dependencies = [ "bitflags 2.11.0", "wayland-backend", @@ -7664,9 +7569,9 @@ dependencies = [ [[package]] name = "wayland-scanner" -version = "0.31.9" +version = "0.31.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c86287151a309799b821ca709b7345a048a2956af05957c89cb824ab919fa4e3" +checksum = "9c324a910fd86ebdc364a3e61ec1f11737d3b1d6c273c0239ee8ff4bc0d24b4a" dependencies = [ "proc-macro2", "quick-xml 0.39.2", @@ -7675,9 +7580,9 @@ dependencies = [ [[package]] name = "wayland-server" -version = "0.31.12" +version = "0.31.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63736a4a73e781cf6a736aa32c5d6773c3eb5389197562742a8c611b49b5e359" +checksum = "cc1846eb04c49182e04f4a099e2a830a2b745610bbc1d61246e206f29c7000a0" dependencies = [ "bitflags 2.11.0", "downcast-rs", @@ -7688,9 +7593,9 @@ dependencies = [ [[package]] name = "wayland-sys" -version = "0.31.10" +version = "0.31.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374f6b70e8e0d6bf9461a32988fd553b59ff630964924dad6e4a4eb6bd538d17" +checksum = "d8eab23fefc9e41f8e841df4a9c707e8a8c4ed26e944ef69297184de2785e3be" dependencies = [ "dlib", "log", @@ -7700,9 +7605,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.91" +version = "0.3.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "854ba17bb104abfb26ba36da9729addc7ce7f06f5c0f90f3c391f8461cca21f9" +checksum = "cd70027e39b12f0849461e08ffc50b9cd7688d942c1c8e3c7b22273236b4dd0a" dependencies = [ "js-sys", "wasm-bindgen", @@ -7827,7 +7732,7 @@ dependencies = [ "bytemuck", "cfg-if", "cfg_aliases", - "core-graphics-types 0.2.0", + "core-graphics-types", "glow", "glutin_wgl_sys", "gpu-alloc", @@ -8007,19 +7912,6 @@ dependencies = [ "windows-strings 0.4.2", ] -[[package]] -name = "windows-core" -version = "0.62.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" -dependencies = [ - "windows-implement 0.60.2", - "windows-interface 0.59.3", - "windows-link 0.2.1", - "windows-result 0.4.1", - "windows-strings 0.5.1", -] - [[package]] name = "windows-future" version = "0.2.1" @@ -8174,24 +8066,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows-strings" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" -dependencies = [ - "windows-link 0.2.1", -] - -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -8201,15 +8075,6 @@ dependencies = [ "windows-targets 0.48.5", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - [[package]] name = "windows-sys" version = "0.59.0" @@ -8237,21 +8102,6 @@ dependencies = [ "windows-link 0.2.1", ] -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-targets" version = "0.48.5" @@ -8309,12 +8159,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -8333,12 +8177,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -8357,12 +8195,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -8393,12 +8225,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -8417,12 +8243,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -8441,12 +8261,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -8465,12 +8279,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -8715,9 +8523,9 @@ dependencies = [ [[package]] name = "winnow" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a90e88e4667264a994d34e6d1ab2d26d398dcdca8b7f52bec8668957517fc7d8" +checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" dependencies = [ "memchr", ] @@ -9006,9 +8814,9 @@ checksum = "e01738255b5a16e78bbb83e7fbba0a1e7dd506905cfc53f4622d89015a03fbb5" [[package]] name = "yoke" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" +checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" dependencies = [ "stable_deref_trait", "yoke-derive", @@ -9017,9 +8825,9 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" dependencies = [ "proc-macro2", "quote", @@ -9133,18 +8941,18 @@ checksum = "6df3dc4292935e51816d896edcd52aa30bc297907c26167fec31e2b0c6a32524" [[package]] name = "zerocopy" -version = "0.8.42" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2578b716f8a7a858b7f02d5bd870c14bf4ddbbcf3a4c05414ba6503640505e3" +checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.42" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e6cc098ea4d3bd6246687de65af3f920c430e236bee1e3bf2e441463f08a02f" +checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" dependencies = [ "proc-macro2", "quote", @@ -9153,18 +8961,18 @@ dependencies = [ [[package]] name = "zerofrom" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" dependencies = [ "proc-macro2", "quote", @@ -9177,37 +8985,24 @@ name = "zeroize" version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] [[package]] name = "zerotrie" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" +checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" dependencies = [ "displaydoc", "yoke", "zerofrom", + "zerovec", ] [[package]] name = "zerovec" -version = "0.11.5" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" +checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" dependencies = [ "serde", "yoke", @@ -9217,9 +9012,9 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" +checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" dependencies = [ "proc-macro2", "quote", @@ -9228,9 +9023,9 @@ dependencies = [ [[package]] name = "zip" -version = "7.2.0" +version = "8.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42e33efc22a0650c311c2ef19115ce232583abbe80850bc8b66509ebef02de0" +checksum = "2726508a48f38dceb22b35ecbbd2430efe34ff05c62bd3285f965d7911b33464" dependencies = [ "aes", "bzip2", @@ -9238,8 +9033,7 @@ dependencies = [ "crc32fast", "deflate64", "flate2", - "generic-array", - "getrandom 0.3.4", + "getrandom 0.4.2", "hmac", "indexmap 2.13.0", "lzma-rust2", @@ -9338,9 +9132,9 @@ dependencies = [ [[package]] name = "zune-jpeg" -version = "0.5.13" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec5f41c76397b7da451efd19915684f727d7e1d516384ca6bd0ec43ec94de23c" +checksum = "27bc9d5b815bc103f142aa054f561d9187d191692ec7c2d1e2b4737f8dbd7296" dependencies = [ "zune-core 0.5.1", ] diff --git a/src/terminal.rs b/src/terminal.rs index 1d14973..7e28a68 100644 --- a/src/terminal.rs +++ b/src/terminal.rs @@ -303,13 +303,13 @@ impl Terminal { let (cell_width, cell_height) = { let mut font_system = font_system().write().unwrap(); let font_system = font_system.raw(); - buffer.set_wrap(font_system, Wrap::None); + buffer.set_wrap(Wrap::None); // Use size of space to determine cell size - buffer.set_text(font_system, " ", &default_attrs, Shaping::Advanced, None); + buffer.set_text(" ", &default_attrs, Shaping::Advanced, None); let layout = buffer.line_layout(font_system, 0).unwrap(); let w = layout[0].w; - buffer.set_monospace_width(font_system, Some(w)); + buffer.set_monospace_width(Some(w)); (w, metrics.line_height) }; @@ -448,8 +448,7 @@ impl Terminal { self.term.lock().resize(self.size); self.with_buffer_mut(|buffer| { - let mut font_system = font_system().write().unwrap(); - buffer.set_size(font_system.raw(), Some(width as f32), Some(height as f32)); + buffer.set_size(Some(width as f32), Some(height as f32)); }); self.needs_update = true; @@ -632,10 +631,7 @@ impl Terminal { let metrics = config.metrics(zoom_adj); if metrics != self.buffer.metrics() { - { - let mut font_system = font_system().write().unwrap(); - self.with_buffer_mut(|buffer| buffer.set_metrics(font_system.raw(), metrics)); - } + self.with_buffer_mut(|buffer| buffer.set_metrics(metrics)); update_cell_size = true; } @@ -692,11 +688,10 @@ impl Terminal { let (cell_width, cell_height) = { let mut font_system = font_system().write().unwrap(); self.with_buffer_mut(|buffer| { - buffer.set_wrap(font_system.raw(), Wrap::None); + buffer.set_wrap(Wrap::None); // Use size of space to determine cell size buffer.set_text( - font_system.raw(), " ", &default_attrs, Shaping::Advanced, @@ -704,7 +699,7 @@ impl Terminal { ); let layout = buffer.line_layout(font_system.raw(), 0).unwrap(); let w = layout[0].w; - buffer.set_monospace_width(font_system.raw(), Some(w)); + buffer.set_monospace_width(Some(w)); (w, buffer.metrics().line_height) }) }; From 81c62faa05cca464e3f215140b6fcea8000fb8a3 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Thu, 2 Apr 2026 09:45:38 -0600 Subject: [PATCH 07/28] chore: cargo fmt --- src/terminal.rs | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/terminal.rs b/src/terminal.rs index 7e28a68..7deacfe 100644 --- a/src/terminal.rs +++ b/src/terminal.rs @@ -691,12 +691,7 @@ impl Terminal { buffer.set_wrap(Wrap::None); // Use size of space to determine cell size - buffer.set_text( - " ", - &default_attrs, - Shaping::Advanced, - None, - ); + buffer.set_text(" ", &default_attrs, Shaping::Advanced, None); let layout = buffer.line_layout(font_system.raw(), 0).unwrap(); let w = layout[0].w; buffer.set_monospace_width(Some(w)); From ceb390f5d4c1e652252980c26401a7474e652e23 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Mon, 6 Apr 2026 15:10:46 -0600 Subject: [PATCH 08/28] Epoch 1.0.9 version update Generated by cosmic-epoch scripts/version-update.sh --- Cargo.lock | 320 ++++++++++++++++++++++++++++++++--------------- Cargo.toml | 2 +- debian/changelog | 6 + 3 files changed, 224 insertions(+), 104 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8e61d3a..a0e241e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -323,9 +323,9 @@ checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" [[package]] name = "arc-swap" -version = "1.9.0" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a07d1f37ff60921c83bdfc7407723bdefe89b44b98a9b772f225c8f9d67141a6" +checksum = "6a3a1fd6f75306b68087b831f025c712524bcb19aad54e557b1129cfa0a2b207" dependencies = [ "rustversion", ] @@ -513,9 +513,9 @@ dependencies = [ [[package]] name = "async-signal" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43c070bbf59cd3570b6b2dd54cd772527c7c3620fce8be898406dd3ed6adc64c" +checksum = "52b5aaafa020cf5053a01f2a60e8ff5dccf550f0f77ec54a4e47285ac2bab485" dependencies = [ "async-io", "async-lock", @@ -926,9 +926,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.58" +version = "1.2.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1e928d4b69e3077709075a938a05ffbedfa53a84c8f766efbf8220bb1ff60e1" +checksum = "b7a4d3ec6524d28a329fc53654bbadc9bdd7b0431f5d65f1a56ffb28a1ee5283" dependencies = [ "find-msvc-tools", "jobserver", @@ -1027,6 +1027,36 @@ dependencies = [ "x11rb", ] +[[package]] +name = "cocoa" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c" +dependencies = [ + "bitflags 1.3.2", + "block", + "cocoa-foundation", + "core-foundation 0.9.4", + "core-graphics", + "foreign-types", + "libc", + "objc", +] + +[[package]] +name = "cocoa-foundation" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" +dependencies = [ + "bitflags 1.3.2", + "block", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", + "libc", + "objc", +] + [[package]] name = "codespan-reporting" version = "0.12.0" @@ -1206,6 +1236,16 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation" version = "0.10.1" @@ -1222,6 +1262,30 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +[[package]] +name = "core-graphics" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" +dependencies = [ + "bitflags 1.3.2", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", + "foreign-types", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" +dependencies = [ + "bitflags 1.3.2", + "core-foundation 0.9.4", + "libc", +] + [[package]] name = "core-graphics-types" version = "0.2.0" @@ -1229,7 +1293,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" dependencies = [ "bitflags 2.11.0", - "core-foundation", + "core-foundation 0.10.1", "libc", ] @@ -1278,7 +1342,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1299,7 +1363,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "quote", "syn", @@ -1307,8 +1371,8 @@ dependencies = [ [[package]] name = "cosmic-files" -version = "1.0.8" -source = "git+https://github.com/pop-os/cosmic-files.git#e50c41aa247a9dd9f9ab6dae9d8f4a720701825a" +version = "1.0.9" +source = "git+https://github.com/pop-os/cosmic-files.git#d38d55525b5610e555e11a9c8ebc3bc8507d5480" dependencies = [ "anyhow", "compio", @@ -1410,7 +1474,7 @@ dependencies = [ [[package]] name = "cosmic-term" -version = "1.0.8" +version = "1.0.9" dependencies = [ "alacritty_terminal", "clap_lex", @@ -1421,7 +1485,7 @@ dependencies = [ "i18n-embed", "i18n-embed-fl", "icu", - "indexmap 2.13.0", + "indexmap 2.13.1", "libcosmic", "log", "open", @@ -1442,7 +1506,7 @@ dependencies = [ [[package]] name = "cosmic-text" version = "0.18.2" -source = "git+https://github.com/pop-os/cosmic-text.git#9a5579f5231bc52b3688a2de3643091f1ce32cbd" +source = "git+https://github.com/pop-os/cosmic-text.git#9a2ab09f06905e91f41d64ac6eee887726e7fd76" dependencies = [ "bitflags 2.11.0", "fontdb", @@ -1465,7 +1529,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "almost", "configparser", @@ -1841,6 +1905,45 @@ name = "dpi" version = "0.1.2" source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +[[package]] +name = "drm" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde" +dependencies = [ + "bitflags 2.11.0", + "bytemuck", + "drm-ffi", + "drm-fourcc", + "rustix 0.38.44", +] + +[[package]] +name = "drm-ffi" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6" +dependencies = [ + "drm-sys", + "rustix 0.38.44", +] + +[[package]] +name = "drm-fourcc" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4" + +[[package]] +name = "drm-sys" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d09ff881f92f118b11105ba5e34ff8f4adf27b30dae8f12e28c193af1c83176" +dependencies = [ + "libc", + "linux-raw-sys 0.6.5", +] + [[package]] name = "dyn-clone" version = "1.0.20" @@ -2008,9 +2111,9 @@ checksum = "dd2e7510819d6fbf51a5545c8f922716ecfb14df168a3242f7d33e0239efe6a1" [[package]] name = "fastrand" -version = "2.3.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" [[package]] name = "fax" @@ -2193,9 +2296,9 @@ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" [[package]] name = "font-types" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73829a7b5c91198af28a99159b7ae4afbb252fb906159ff7f189f3a2ceaa3df2" +checksum = "2d9237c6d82152100c691fb77ea18037b402bcc7257d2c876a4ffac81bc22a1c" dependencies = [ "bytemuck", ] @@ -2298,7 +2401,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc6d3a3635983a889f065aa9ce760384713f23a9b4a04f696f86c39a5d7a6a5a" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.13.1", "nom 8.0.0", ] @@ -2610,7 +2713,7 @@ dependencies = [ "log", "presser", "thiserror 1.0.69", - "windows 0.56.0", + "windows 0.58.0", ] [[package]] @@ -2845,7 +2948,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.56.0", + "windows-core 0.62.2", ] [[package]] @@ -2860,7 +2963,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "dnd", "iced_accessibility", @@ -2881,7 +2984,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "accesskit", "accesskit_winit", @@ -2890,7 +2993,7 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "bitflags 2.11.0", "bytes", @@ -2914,7 +3017,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "iced_core", "iced_futures", @@ -2924,7 +3027,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "futures", "iced_core", @@ -2938,7 +3041,7 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -2959,7 +3062,7 @@ dependencies = [ [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "iced_graphics", "iced_runtime", @@ -2968,7 +3071,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -2980,7 +3083,7 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "bytes", "cosmic-client-toolkit", @@ -2995,7 +3098,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "bytemuck", "cosmic-text", @@ -3012,11 +3115,12 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "as-raw-xcb-connection", "bitflags 2.11.0", "bytemuck", + "cosmic-client-toolkit", "cryoglyph", "futures", "glam", @@ -3042,7 +3146,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "cosmic-client-toolkit", "dnd", @@ -3060,7 +3164,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "cosmic-client-toolkit", "cursor-icon", @@ -3115,9 +3219,9 @@ dependencies = [ [[package]] name = "icu_calendar" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf11bd83ebd0cd319e23a9a9c9a25b564a1fadc3bbc93069b8abc9d8df812bf" +checksum = "a2b2acc6263f494f1df50685b53ff8e57869e47d5c6fe39c23d518ae9a4f3e45" dependencies = [ "calendrical_calculations", "displaydoc", @@ -3596,9 +3700,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.13.0" +version = "2.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" +checksum = "45a8a2b9cb3e0b0c1803dbb0758ffac5de2f425b23c28f518faabd9d805342ff" dependencies = [ "equivalent", "hashbrown 0.16.1", @@ -4152,7 +4256,7 @@ checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#12be83a8ef58019a1bd31ead100040244bd05f16" +source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" dependencies = [ "apply", "ashpd 0.12.3", @@ -4260,6 +4364,12 @@ version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" +[[package]] +name = "linux-raw-sys" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a385b1be4e5c3e362ad2ffa73c392e53f031eaa5b7d648e64cd87f27f6063d7" + [[package]] name = "linux-raw-sys" version = "0.12.1" @@ -4475,7 +4585,7 @@ checksum = "00c15a6f673ff72ddcc22394663290f870fb224c1bfce55734a75c414150e605" dependencies = [ "bitflags 2.11.0", "block", - "core-graphics-types", + "core-graphics-types 0.2.0", "foreign-types", "log", "objc", @@ -4574,7 +4684,7 @@ dependencies = [ "half", "hashbrown 0.16.1", "hexf-parse", - "indexmap 2.13.0", + "indexmap 2.13.1", "libm", "log", "num-traits", @@ -4876,7 +4986,7 @@ dependencies = [ "objc2-core-data", "objc2-core-image", "objc2-foundation 0.2.2", - "objc2-quartz-core 0.2.2", + "objc2-quartz-core", ] [[package]] @@ -4923,11 +5033,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" dependencies = [ "bitflags 2.11.0", - "dispatch2", "libc", - "objc2 0.6.4", "objc2-core-foundation", - "objc2-io-surface", ] [[package]] @@ -4983,17 +5090,6 @@ dependencies = [ "objc2-core-foundation", ] -[[package]] -name = "objc2-io-surface" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d" -dependencies = [ - "bitflags 2.11.0", - "objc2 0.6.4", - "objc2-core-foundation", -] - [[package]] name = "objc2-metal" version = "0.2.2" @@ -5019,18 +5115,6 @@ dependencies = [ "objc2-metal", ] -[[package]] -name = "objc2-quartz-core" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c1358452b371bf9f104e21ec536d37a650eb10f7ee379fff67d2e08d537f1f" -dependencies = [ - "bitflags 2.11.0", - "objc2 0.6.4", - "objc2-core-foundation", - "objc2-foundation 0.3.2", -] - [[package]] name = "objc2-ui-kit" version = "0.3.2" @@ -5116,7 +5200,7 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfa78c92071bbd3628c22b1a964f7e0eb201dc1456555db072beb1662ecd6715" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.13.1", "serde", "serde_core", ] @@ -6238,9 +6322,9 @@ checksum = "b12e76d157a900eb52e81bc6e9f3069344290341720e9178cde2407113ac8d89" [[package]] name = "semver" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "serde" @@ -6278,7 +6362,7 @@ version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.13.1", "itoa", "memchr", "serde", @@ -6307,7 +6391,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.13.0", + "indexmap 2.13.1", "schemars 0.9.0", "schemars 1.2.1", "serde_core", @@ -6525,32 +6609,31 @@ dependencies = [ [[package]] name = "softbuffer" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac18da81ebbf05109ab275b157c22a653bb3c12cf884450179942f81bcbf6c3" +version = "0.4.1" +source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#a3f77e251e7422803f693df6e3fc313c010c4dcb" dependencies = [ "as-raw-xcb-connection", "bytemuck", + "cfg_aliases", + "cocoa", + "core-graphics", + "drm", "fastrand", + "foreign-types", "js-sys", + "log", "memmap2 0.9.10", - "ndk", - "objc2 0.6.4", - "objc2-core-foundation", - "objc2-core-graphics", - "objc2-foundation 0.3.2", - "objc2-quartz-core 0.3.2", + "objc", "raw-window-handle", "redox_syscall 0.5.18", - "rustix 1.1.4", + "rustix 0.38.44", "tiny-xlib", - "tracing", "wasm-bindgen", "wayland-backend", "wayland-client", "wayland-sys", "web-sys", - "windows-sys 0.61.2", + "windows-sys 0.52.0", "x11rb", ] @@ -6892,9 +6975,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.50.0" +version = "1.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27ad5e34374e03cfffefc301becb44e9dc3c17584f414349ebe29ed26661822d" +checksum = "2bd1c4c0fc4a7ab90fc15ef6daaa3ec3b893f004f915f2392557ed23237820cd" dependencies = [ "bytes", "libc", @@ -6909,9 +6992,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.6.1" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c55a2eff8b69ce66c84f85e1da1c233edc36ceb85a2058d11b0d6a3c7e7569c" +checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" dependencies = [ "proc-macro2", "quote", @@ -6953,7 +7036,7 @@ version = "0.25.10+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a82418ca169e235e6c399a84e395ab6debeb3bc90edc959bf0f48647c6a32d1b" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.13.1", "toml_datetime", "toml_parser", "winnow 1.0.1", @@ -7422,7 +7505,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" dependencies = [ "anyhow", - "indexmap 2.13.0", + "indexmap 2.13.1", "wasm-encoder", "wasmparser", ] @@ -7435,7 +7518,7 @@ checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ "bitflags 2.11.0", "hashbrown 0.15.5", - "indexmap 2.13.0", + "indexmap 2.13.1", "semver", ] @@ -7672,7 +7755,7 @@ dependencies = [ "cfg_aliases", "document-features", "hashbrown 0.16.1", - "indexmap 2.13.0", + "indexmap 2.13.1", "log", "naga", "once_cell", @@ -7732,7 +7815,7 @@ dependencies = [ "bytemuck", "cfg-if", "cfg_aliases", - "core-graphics-types", + "core-graphics-types 0.2.0", "glow", "glutin_wgl_sys", "gpu-alloc", @@ -7912,6 +7995,19 @@ dependencies = [ "windows-strings 0.4.2", ] +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement 0.60.2", + "windows-interface 0.59.3", + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", +] + [[package]] name = "windows-future" version = "0.2.1" @@ -8066,6 +8162,15 @@ dependencies = [ "windows-link 0.1.3", ] +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link 0.2.1", +] + [[package]] name = "windows-sys" version = "0.48.0" @@ -8075,6 +8180,15 @@ dependencies = [ "windows-targets 0.48.5", ] +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + [[package]] name = "windows-sys" version = "0.59.0" @@ -8558,7 +8672,7 @@ checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" dependencies = [ "anyhow", "heck 0.5.0", - "indexmap 2.13.0", + "indexmap 2.13.1", "prettyplease", "syn", "wasm-metadata", @@ -8589,7 +8703,7 @@ checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" dependencies = [ "anyhow", "bitflags 2.11.0", - "indexmap 2.13.0", + "indexmap 2.13.1", "log", "serde", "serde_derive", @@ -8608,7 +8722,7 @@ checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" dependencies = [ "anyhow", "id-arena", - "indexmap 2.13.0", + "indexmap 2.13.1", "log", "semver", "serde", @@ -8626,9 +8740,9 @@ checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" [[package]] name = "writeable" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" +checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" dependencies = [ "either", ] @@ -9023,9 +9137,9 @@ dependencies = [ [[package]] name = "zip" -version = "8.5.0" +version = "8.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2726508a48f38dceb22b35ecbbd2430efe34ff05c62bd3285f965d7911b33464" +checksum = "dcab981e19633ebcf0b001ddd37dd802996098bc1864f90b7c5d970ce76c1d59" dependencies = [ "aes", "bzip2", @@ -9035,7 +9149,7 @@ dependencies = [ "flate2", "getrandom 0.4.2", "hmac", - "indexmap 2.13.0", + "indexmap 2.13.1", "lzma-rust2", "memchr", "pbkdf2", diff --git a/Cargo.toml b/Cargo.toml index 961a06c..0379697 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-term" -version = "1.0.8" +version = "1.0.9" authors = ["Jeremy Soller "] edition = "2024" license = "GPL-3.0-only" diff --git a/debian/changelog b/debian/changelog index 0171432..bd25c91 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cosmic-term (1.0.9) noble; urgency=medium + + * Epoch 1.0.9 version update + + -- Jeremy Soller Mon, 06 Apr 2026 15:10:35 -0600 + cosmic-term (1.0.8) noble; urgency=medium * Epoch 1.0.8 version update From 057568086009c6971933fc11899e7cf6a833ce0c Mon Sep 17 00:00:00 2001 From: Hojjat Date: Wed, 18 Mar 2026 11:13:08 -0600 Subject: [PATCH 09/28] feat: Convert context menu from widget::popover to Wayland popup surface --- Cargo.toml | 2 +- src/main.rs | 205 ++++++++++++++++++++++++++++++---------------------- 2 files changed, 120 insertions(+), 87 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 0379697..25d4315 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -47,7 +47,7 @@ features = ["monospace_fallback", "shape-run-cache"] git = "https://github.com/pop-os/libcosmic.git" default-features = false #TODO: a11y feature crashes file chooser dialog -features = ["about", "multi-window", "tokio", "winit", "surface-message"] +features = ["about", "autosize", "multi-window", "tokio", "winit", "surface-message"] [target.'cfg(unix)'.dependencies] fork = "0.4" diff --git a/src/main.rs b/src/main.rs index 0db17f2..ac276a3 100644 --- a/src/main.rs +++ b/src/main.rs @@ -453,6 +453,7 @@ pub enum Message { ZoomIn, ZoomOut, ZoomReset, + ContextMenuPopupClosed(window::Id), } #[derive(Clone, Copy, Debug, Eq, PartialEq)] @@ -523,6 +524,7 @@ pub struct App { shortcut_search_regex: Option, shortcut_search_value: String, modifiers: Modifiers, + context_menu_popup: Option<(window::Id, pane_grid::Pane, segmented_button::Entity, Option, widget::Id)>, #[cfg(feature = "password_manager")] password_mgr: password_manager::PasswordManager, } @@ -1840,6 +1842,7 @@ impl Application for App { shortcut_search_regex: None, shortcut_search_value: String::new(), modifiers: Modifiers::empty(), + context_menu_popup: None, #[cfg(feature = "password_manager")] password_mgr: Default::default(), }; @@ -2428,40 +2431,18 @@ impl Application for App { } } Message::CopyUrlByMenu => { - if let Some(tab_model) = self.pane_model.active() { - let entity = tab_model.active(); - if let Some(terminal) = tab_model.data::>(entity) { - // Update context menu position - let mut terminal = terminal.lock().unwrap(); - if let Some(url) = - terminal.context_menu.as_ref().and_then(|m| m.link.as_ref()) - { - let url = url.to_owned(); - terminal.context_menu = None; - terminal.active_regex_match = None; - terminal.needs_update = true; - - return Task::batch([clipboard::write(url), self.update_focus()]); - } + if let Some((_, _, _, ref link, _)) = self.context_menu_popup { + if let Some(url) = link.clone() { + return Task::batch([clipboard::write(url), self.update_focus()]); } } } Message::LaunchUrlByMenu => { - if let Some(tab_model) = self.pane_model.active() { - let entity = tab_model.active(); - if let Some(terminal) = tab_model.data::>(entity) { - // Update context menu position - let mut terminal = terminal.lock().unwrap(); - if let Some(url) = - terminal.context_menu.as_ref().and_then(|m| m.link.as_ref()) - { - if let Err(err) = open::that_detached(url) { - log::warn!("failed to open {:?}: {}", url, err); - } + if let Some((_, _, _, ref link, _)) = self.context_menu_popup { + if let Some(url) = link.as_ref() { + if let Err(err) = open::that_detached(url) { + log::warn!("failed to open {:?}: {}", url, err); } - terminal.context_menu = None; - terminal.active_regex_match = None; - terminal.needs_update = true; } } } @@ -2810,54 +2791,91 @@ impl Application for App { return self.update_title(None); } Message::TabContextAction(entity, action) => { - if let Some(tab_model) = self.pane_model.active() { - if let Some(terminal) = tab_model.data::>(entity) { - // Close context menu - { - let mut terminal = terminal.lock().unwrap(); - //Some actions need the menu_state, - //so only clear the position for them. - match action { - Action::LaunchUrlByMenu | Action::CopyUrlByMenu => { - if let Some(context_menu) = terminal.context_menu.as_mut() { - context_menu.position = None; - } - } - _ => { - terminal.context_menu = None; - } - } - } - // Run action's message - return self.update(action.message(Some(entity))); - } + // Close context menu popup + let mut tasks = Vec::new(); + if let Some((popup_id, _, _, _, _)) = self.context_menu_popup.take() { + tasks.push(cosmic::task::message(Message::Surface( + cosmic::surface::action::destroy_popup(popup_id), + ))); } - } - Message::TabContextMenu(pane, menu_state) => { - // Close any existing context menues - let panes: Vec<_> = self.pane_model.panes.iter().collect(); - for (_pane, tab_model) in panes { - let entity = tab_model.active(); + // Also clear terminal context_menu state + if let Some(tab_model) = self.pane_model.active() { if let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); terminal.context_menu = None; } } + tasks.push(self.update(action.message(Some(entity)))); + return cosmic::Task::batch(tasks); + } + Message::TabContextMenu(pane, menu_state) => { + let mut tasks = Vec::new(); - // Show the context menu on the correct pane / terminal - if let Some(tab_model) = self.pane_model.panes.get(pane) { - let entity = tab_model.active(); - if let Some(terminal) = tab_model.data::>(entity) { - // Update context menu position - let mut terminal = terminal.lock().unwrap(); - terminal.context_menu = menu_state; + // Close existing context menu popup if any + if let Some((popup_id, _, _, _, _)) = self.context_menu_popup.take() { + tasks.push(cosmic::task::message(Message::Surface( + cosmic::surface::action::destroy_popup(popup_id), + ))); + } + + // Clear all terminal context_menu state + for (_, tab_model) in self.pane_model.panes.iter() { + for entity in tab_model.iter() { + if let Some(terminal) = tab_model.data::>(entity) { + let mut terminal = terminal.lock().unwrap(); + terminal.context_menu = None; + } } } - // Shift focus to the pane / terminal - // with the context menu - self.pane_model.set_focus(pane); - return self.update_title(Some(pane)); + if let Some(menu_state) = menu_state { + if let Some(position) = menu_state.position { + if let Some(tab_model) = self.pane_model.panes.get(pane) { + { + let entity = tab_model.active(); + let link = menu_state.link.clone(); + let popup_id = window::Id::unique(); + self.context_menu_popup = Some((popup_id, pane, entity, link, widget::Id::unique())); + + let main_window = self.core.main_window_id().unwrap(); + let pos_x = position.x as i32; + let pos_y = position.y as i32; + + tasks.push(cosmic::task::message(Message::Surface( + cosmic::surface::action::app_popup(move |_app: &mut Self| { + use cosmic::cctk::wayland_protocols::xdg::shell::client::xdg_positioner::{Anchor, Gravity}; + use cosmic::iced_runtime::platform_specific::wayland::popup::{SctkPopupSettings, SctkPositioner}; + + SctkPopupSettings { + parent: main_window, + id: popup_id, + positioner: SctkPositioner { + size: None, + anchor_rect: cosmic::iced::Rectangle { + x: pos_x, + y: pos_y, + width: 1, + height: 1, + }, + anchor: Anchor::None, + gravity: Gravity::BottomRight, + reactive: true, + ..Default::default() + }, + parent_size: None, + grab: true, + close_with_children: false, + input_zone: None, + } + }, None), + ))); + } + } + } + self.pane_model.set_focus(pane); + } + + return cosmic::Task::batch(tasks); } Message::TabNew => { return self.create_and_focus_new_terminal( @@ -3133,6 +3151,13 @@ impl Application for App { self.reset_terminal_panes_zoom(); return self.update_config(); } + Message::ContextMenuPopupClosed(id) => { + if let Some((popup_id, _, _, _, _)) = &self.context_menu_popup { + if id == *popup_id { + self.context_menu_popup = None; + } + } + } Message::Surface(a) => { return cosmic::task::message(cosmic::Action::Cosmic( cosmic::app::Action::Surface(a), @@ -3239,7 +3264,24 @@ impl Application for App { ] } + fn on_close_requested(&self, id: window::Id) -> Option { + if let Some((popup_id, _, _, _, _)) = &self.context_menu_popup { + if id == *popup_id { + return Some(Message::ContextMenuPopupClosed(id)); + } + } + None + } + fn view_window(&self, window_id: window::Id) -> Element<'_, Message> { + if let Some((popup_id, _pane, entity, ref link, ref autosize_id)) = self.context_menu_popup { + if window_id == popup_id { + return widget::autosize::autosize( + menu::context_menu(&self.config, &self.key_binds, entity, link.clone()), + autosize_id.clone(), + ).into(); + } + } match &self.dialog_opt { Some(dialog) => dialog.view(window_id), None => widget::text("Unknown window ID").into(), @@ -3307,26 +3349,17 @@ impl Application for App { terminal_box = terminal_box.on_mouse_enter(move || Message::MouseEnter(pane)); } - let context_menu = { - let terminal = terminal.lock().unwrap(); - terminal.context_menu.clone() - }; + // If a context menu popup is active for this pane, inform the + // terminal_box so it will emit on_context_menu(None) on click + // to dismiss the popup. + if let Some((_, popup_pane, _, _, _)) = &self.context_menu_popup { + if pane == *popup_pane { + terminal_box = + terminal_box.context_menu(cosmic::iced::Point::ORIGIN); + } + } - let tab_element: Element<'_, Message> = match context_menu { - Some(menu_state) => match menu_state.position { - Some(point) => widget::popover(terminal_box.context_menu(point)) - .popup(menu::context_menu( - &self.config, - &self.key_binds, - entity, - menu_state.link, - )) - .position(widget::popover::Position::Point(point)) - .into(), - None => terminal_box.into(), - }, - None => terminal_box.into(), - }; + let tab_element: Element<'_, Message> = terminal_box.into(); tab_column = tab_column.push(tab_element); } From 0b1490e7ffae687ea29a1cd2c45d9051c3833a28 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Tue, 24 Mar 2026 11:20:46 -0600 Subject: [PATCH 10/28] fix: use window-absolute coordinates for context menu position in split panes --- src/terminal_box.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 513cbf2..444a3b1 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -1300,8 +1300,12 @@ where None, ); let link = get_hyperlink(&terminal, location); + let abs = cosmic::iced::Point::new( + layout.bounds().x + p.x, + layout.bounds().y + p.y, + ); shell.publish(on_context_menu(Some(MenuState { - position: Some(p), + position: Some(abs), link, }))); } From 133c526acd12e50f4ff53228986c7011f931455f Mon Sep 17 00:00:00 2001 From: Hojjat Date: Tue, 24 Mar 2026 11:20:56 -0600 Subject: [PATCH 11/28] fix: dismiss context menu when clicking in any pane --- src/main.rs | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/main.rs b/src/main.rs index ac276a3..60bcecd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3352,11 +3352,8 @@ impl Application for App { // If a context menu popup is active for this pane, inform the // terminal_box so it will emit on_context_menu(None) on click // to dismiss the popup. - if let Some((_, popup_pane, _, _, _)) = &self.context_menu_popup { - if pane == *popup_pane { - terminal_box = - terminal_box.context_menu(cosmic::iced::Point::ORIGIN); - } + if self.context_menu_popup.is_some() { + terminal_box = terminal_box.context_menu(cosmic::iced::Point::ORIGIN); } let tab_element: Element<'_, Message> = terminal_box.into(); From 467998433cfa4e03e14461b5226686fc955a4442 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Tue, 24 Mar 2026 11:20:59 -0600 Subject: [PATCH 12/28] chore: cargo fmt --- src/main.rs | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/main.rs b/src/main.rs index 60bcecd..6f68b0a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -524,7 +524,13 @@ pub struct App { shortcut_search_regex: Option, shortcut_search_value: String, modifiers: Modifiers, - context_menu_popup: Option<(window::Id, pane_grid::Pane, segmented_button::Entity, Option, widget::Id)>, + context_menu_popup: Option<( + window::Id, + pane_grid::Pane, + segmented_button::Entity, + Option, + widget::Id, + )>, #[cfg(feature = "password_manager")] password_mgr: password_manager::PasswordManager, } @@ -2835,7 +2841,8 @@ impl Application for App { let entity = tab_model.active(); let link = menu_state.link.clone(); let popup_id = window::Id::unique(); - self.context_menu_popup = Some((popup_id, pane, entity, link, widget::Id::unique())); + self.context_menu_popup = + Some((popup_id, pane, entity, link, widget::Id::unique())); let main_window = self.core.main_window_id().unwrap(); let pos_x = position.x as i32; @@ -3274,12 +3281,14 @@ impl Application for App { } fn view_window(&self, window_id: window::Id) -> Element<'_, Message> { - if let Some((popup_id, _pane, entity, ref link, ref autosize_id)) = self.context_menu_popup { + if let Some((popup_id, _pane, entity, ref link, ref autosize_id)) = self.context_menu_popup + { if window_id == popup_id { return widget::autosize::autosize( menu::context_menu(&self.config, &self.key_binds, entity, link.clone()), autosize_id.clone(), - ).into(); + ) + .into(); } } match &self.dialog_opt { From 8b95675c9b6ffe0eb28910c097c129af4b1689e1 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Mon, 6 Apr 2026 16:21:26 -0600 Subject: [PATCH 13/28] fix: gate wayland features and add inline popover fallback --- src/main.rs | 106 ++++++++++++++++++++++++++++++++++---------- src/menu.rs | 1 + src/terminal_box.rs | 1 + 3 files changed, 85 insertions(+), 23 deletions(-) diff --git a/src/main.rs b/src/main.rs index 6f68b0a..9667547 100644 --- a/src/main.rs +++ b/src/main.rs @@ -530,6 +530,7 @@ pub struct App { segmented_button::Entity, Option, widget::Id, + cosmic::iced::Point, )>, #[cfg(feature = "password_manager")] password_mgr: password_manager::PasswordManager, @@ -2437,14 +2438,14 @@ impl Application for App { } } Message::CopyUrlByMenu => { - if let Some((_, _, _, ref link, _)) = self.context_menu_popup { + if let Some((_, _, _, ref link, _, _)) = self.context_menu_popup { if let Some(url) = link.clone() { return Task::batch([clipboard::write(url), self.update_focus()]); } } } Message::LaunchUrlByMenu => { - if let Some((_, _, _, ref link, _)) = self.context_menu_popup { + if let Some((_, _, _, ref link, _, _)) = self.context_menu_popup { if let Some(url) = link.as_ref() { if let Err(err) = open::that_detached(url) { log::warn!("failed to open {:?}: {}", url, err); @@ -2799,10 +2800,13 @@ impl Application for App { Message::TabContextAction(entity, action) => { // Close context menu popup let mut tasks = Vec::new(); - if let Some((popup_id, _, _, _, _)) = self.context_menu_popup.take() { - tasks.push(cosmic::task::message(Message::Surface( - cosmic::surface::action::destroy_popup(popup_id), - ))); + if let Some((_popup_id, _, _, _, _, _)) = self.context_menu_popup.take() { + #[cfg(feature = "wayland")] + if is_wayland() { + tasks.push(cosmic::task::message(Message::Surface( + cosmic::surface::action::destroy_popup(_popup_id), + ))); + } } // Also clear terminal context_menu state if let Some(tab_model) = self.pane_model.active() { @@ -2815,13 +2819,17 @@ impl Application for App { return cosmic::Task::batch(tasks); } Message::TabContextMenu(pane, menu_state) => { + #[allow(unused_mut)] let mut tasks = Vec::new(); // Close existing context menu popup if any - if let Some((popup_id, _, _, _, _)) = self.context_menu_popup.take() { - tasks.push(cosmic::task::message(Message::Surface( - cosmic::surface::action::destroy_popup(popup_id), - ))); + if let Some((_popup_id, _, _, _, _, _)) = self.context_menu_popup.take() { + #[cfg(feature = "wayland")] + if is_wayland() { + tasks.push(cosmic::task::message(Message::Surface( + cosmic::surface::action::destroy_popup(_popup_id), + ))); + } } // Clear all terminal context_menu state @@ -2835,18 +2843,26 @@ impl Application for App { } if let Some(menu_state) = menu_state { - if let Some(position) = menu_state.position { + if let Some(_position) = menu_state.position { + let local_position = menu_state.local_position.unwrap_or(_position); if let Some(tab_model) = self.pane_model.panes.get(pane) { - { - let entity = tab_model.active(); - let link = menu_state.link.clone(); - let popup_id = window::Id::unique(); - self.context_menu_popup = - Some((popup_id, pane, entity, link, widget::Id::unique())); + let entity = tab_model.active(); + let link = menu_state.link.clone(); + let popup_id = window::Id::unique(); + self.context_menu_popup = Some(( + popup_id, + pane, + entity, + link, + widget::Id::unique(), + local_position, + )); + #[cfg(feature = "wayland")] + if is_wayland() { let main_window = self.core.main_window_id().unwrap(); - let pos_x = position.x as i32; - let pos_y = position.y as i32; + let pos_x = _position.x as i32; + let pos_y = _position.y as i32; tasks.push(cosmic::task::message(Message::Surface( cosmic::surface::action::app_popup(move |_app: &mut Self| { @@ -3159,7 +3175,7 @@ impl Application for App { return self.update_config(); } Message::ContextMenuPopupClosed(id) => { - if let Some((popup_id, _, _, _, _)) = &self.context_menu_popup { + if let Some((popup_id, _, _, _, _, _)) = &self.context_menu_popup { if id == *popup_id { self.context_menu_popup = None; } @@ -3272,7 +3288,7 @@ impl Application for App { } fn on_close_requested(&self, id: window::Id) -> Option { - if let Some((popup_id, _, _, _, _)) = &self.context_menu_popup { + if let Some((popup_id, _, _, _, _, _)) = &self.context_menu_popup { if id == *popup_id { return Some(Message::ContextMenuPopupClosed(id)); } @@ -3281,7 +3297,8 @@ impl Application for App { } fn view_window(&self, window_id: window::Id) -> Element<'_, Message> { - if let Some((popup_id, _pane, entity, ref link, ref autosize_id)) = self.context_menu_popup + if let Some((popup_id, _pane, entity, ref link, ref autosize_id, _)) = + self.context_menu_popup { if window_id == popup_id { return widget::autosize::autosize( @@ -3365,7 +3382,42 @@ impl Application for App { terminal_box = terminal_box.context_menu(cosmic::iced::Point::ORIGIN); } - let tab_element: Element<'_, Message> = terminal_box.into(); + let use_wayland_popup = { + #[cfg(feature = "wayland")] + { + is_wayland() + } + #[cfg(not(feature = "wayland"))] + { + false + } + }; + + let tab_element: Element<'_, Message> = if !use_wayland_popup { + // Fallback: render context menu as an inline popover + if let Some((_, popup_pane, popup_entity, ref link, _, point)) = + self.context_menu_popup + { + if pane == popup_pane { + let mut popover = widget::popover(terminal_box.context_menu(point)); + popover = popover + .popup(menu::context_menu( + &self.config, + &self.key_binds, + popup_entity, + link.clone(), + )) + .position(widget::popover::Position::Point(point)); + popover.into() + } else { + terminal_box.into() + } + } else { + terminal_box.into() + } + } else { + terminal_box.into() + }; tab_column = tab_column.push(tab_element); } @@ -3519,3 +3571,11 @@ impl Application for App { ]) } } + +#[cfg(feature = "wayland")] +fn is_wayland() -> bool { + matches!( + cosmic::app::cosmic::windowing_system(), + Some(cosmic::app::cosmic::WindowingSystem::Wayland) + ) +} diff --git a/src/menu.rs b/src/menu.rs index 228ab9b..cc65c28 100644 --- a/src/menu.rs +++ b/src/menu.rs @@ -26,6 +26,7 @@ static MENU_ID: LazyLock = #[derive(Debug, Clone)] pub struct MenuState { pub position: Option, + pub local_position: Option, pub link: Option, } diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 444a3b1..f948d73 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -1306,6 +1306,7 @@ where ); shell.publish(on_context_menu(Some(MenuState { position: Some(abs), + local_position: Some(p), link, }))); } From 1d869746827c877ac665b7ceba7f93db9719596a Mon Sep 17 00:00:00 2001 From: Hojjat Date: Wed, 8 Apr 2026 12:31:30 -0600 Subject: [PATCH 14/28] fix: keep the url in state for menu actions and underline --- src/main.rs | 66 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 56 insertions(+), 10 deletions(-) diff --git a/src/main.rs b/src/main.rs index 9667547..4a6b584 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2438,18 +2438,38 @@ impl Application for App { } } Message::CopyUrlByMenu => { - if let Some((_, _, _, ref link, _, _)) = self.context_menu_popup { - if let Some(url) = link.clone() { - return Task::batch([clipboard::write(url), self.update_focus()]); + if let Some(tab_model) = self.pane_model.active() { + let entity = tab_model.active(); + if let Some(terminal) = tab_model.data::>(entity) { + let mut terminal = terminal.lock().unwrap(); + if let Some(url) = + terminal.context_menu.as_ref().and_then(|m| m.link.as_ref()) + { + let url = url.to_owned(); + terminal.context_menu = None; + terminal.active_regex_match = None; + terminal.needs_update = true; + + return Task::batch([clipboard::write(url), self.update_focus()]); + } } } } Message::LaunchUrlByMenu => { - if let Some((_, _, _, ref link, _, _)) = self.context_menu_popup { - if let Some(url) = link.as_ref() { - if let Err(err) = open::that_detached(url) { - log::warn!("failed to open {:?}: {}", url, err); + if let Some(tab_model) = self.pane_model.active() { + let entity = tab_model.active(); + if let Some(terminal) = tab_model.data::>(entity) { + let mut terminal = terminal.lock().unwrap(); + if let Some(url) = + terminal.context_menu.as_ref().and_then(|m| m.link.as_ref()) + { + if let Err(err) = open::that_detached(url) { + log::warn!("failed to open {:?}: {}", url, err); + } } + terminal.context_menu = None; + terminal.active_regex_match = None; + terminal.needs_update = true; } } } @@ -2808,11 +2828,22 @@ impl Application for App { ))); } } - // Also clear terminal context_menu state + // Close terminal context menu state if let Some(tab_model) = self.pane_model.active() { if let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); - terminal.context_menu = None; + //Some actions need the menu_state, + //so only clear the position for them. + match action { + Action::LaunchUrlByMenu | Action::CopyUrlByMenu => { + if let Some(context_menu) = terminal.context_menu.as_mut() { + context_menu.position = None; + } + } + _ => { + terminal.context_menu = None; + } + } } } tasks.push(self.update(action.message(Some(entity)))); @@ -2849,6 +2880,12 @@ impl Application for App { let entity = tab_model.active(); let link = menu_state.link.clone(); let popup_id = window::Id::unique(); + + if let Some(terminal) = tab_model.data::>(entity) { + let mut terminal = terminal.lock().unwrap(); + terminal.context_menu = Some(menu_state); + } + self.context_menu_popup = Some(( popup_id, pane, @@ -3175,8 +3212,17 @@ impl Application for App { return self.update_config(); } Message::ContextMenuPopupClosed(id) => { - if let Some((popup_id, _, _, _, _, _)) = &self.context_menu_popup { + if let Some((popup_id, pane, entity, _, _, _)) = &self.context_menu_popup { if id == *popup_id { + // Clear link underline on the terminal + if let Some(tab_model) = self.pane_model.panes.get(*pane) { + if let Some(terminal) = tab_model.data::>(*entity) { + let mut terminal = terminal.lock().unwrap(); + terminal.context_menu = None; + terminal.active_regex_match = None; + terminal.needs_update = true; + } + } self.context_menu_popup = None; } } From c8b18c282771b2819e9292270c36fc6f98ace033 Mon Sep 17 00:00:00 2001 From: Hojjat Date: Wed, 8 Apr 2026 15:30:10 -0600 Subject: [PATCH 15/28] chore: update to the latest libcosmic applies iced re-export changes --- Cargo.lock | 44 ++++++++++++++++++++++---------------------- src/main.rs | 6 +++--- src/menu.rs | 2 +- src/shortcuts.rs | 2 +- src/terminal_box.rs | 20 ++++++++++---------- 5 files changed, 37 insertions(+), 37 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a0e241e..dd3d4e2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1342,7 +1342,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1363,7 +1363,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "quote", "syn", @@ -1372,7 +1372,7 @@ dependencies = [ [[package]] name = "cosmic-files" version = "1.0.9" -source = "git+https://github.com/pop-os/cosmic-files.git#d38d55525b5610e555e11a9c8ebc3bc8507d5480" +source = "git+https://github.com/pop-os/cosmic-files.git#b17f8889a8a350a9a07ab3e00155d9b35f136152" dependencies = [ "anyhow", "compio", @@ -1529,7 +1529,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "almost", "configparser", @@ -2963,7 +2963,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "dnd", "iced_accessibility", @@ -2984,7 +2984,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "accesskit", "accesskit_winit", @@ -2993,7 +2993,7 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "bitflags 2.11.0", "bytes", @@ -3017,7 +3017,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "iced_core", "iced_futures", @@ -3027,7 +3027,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "futures", "iced_core", @@ -3041,7 +3041,7 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -3062,7 +3062,7 @@ dependencies = [ [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "iced_graphics", "iced_runtime", @@ -3071,7 +3071,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -3083,7 +3083,7 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "bytes", "cosmic-client-toolkit", @@ -3098,7 +3098,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "bytemuck", "cosmic-text", @@ -3115,7 +3115,7 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "as-raw-xcb-connection", "bitflags 2.11.0", @@ -3146,7 +3146,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "cosmic-client-toolkit", "dnd", @@ -3164,7 +3164,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "cosmic-client-toolkit", "cursor-icon", @@ -4256,7 +4256,7 @@ checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#724351727a191516ca1b2f2f90a00b7d211c7e1f" +source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" dependencies = [ "apply", "ashpd 0.12.3", @@ -6975,9 +6975,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.51.0" +version = "1.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bd1c4c0fc4a7ab90fc15ef6daaa3ec3b893f004f915f2392557ed23237820cd" +checksum = "f66bf9585cda4b724d3e78ab34b73fb2bbaba9011b9bfdf69dc836382ea13b8c" dependencies = [ "bytes", "libc", @@ -7032,9 +7032,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.25.10+spec-1.1.0" +version = "0.25.11+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82418ca169e235e6c399a84e395ab6debeb3bc90edc959bf0f48647c6a32d1b" +checksum = "0b59c4d22ed448339746c59b905d24568fcbb3ab65a500494f7b8c3e97739f2b" dependencies = [ "indexmap 2.13.1", "toml_datetime", diff --git a/src/main.rs b/src/main.rs index 4a6b584..73dd21b 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3,7 +3,7 @@ use alacritty_terminal::{event::Event as TermEvent, term, term::color::Colors as TermColors, tty}; use cosmic::iced::clipboard::dnd::DndAction; -use cosmic::iced_core::keyboard::key::Named; +use cosmic::iced::core::keyboard::key::Named; use cosmic::widget::menu::action::MenuAction; use cosmic::widget::menu::key_bind::KeyBind; use cosmic::widget::pane_grid::Pane; @@ -2904,7 +2904,7 @@ impl Application for App { tasks.push(cosmic::task::message(Message::Surface( cosmic::surface::action::app_popup(move |_app: &mut Self| { use cosmic::cctk::wayland_protocols::xdg::shell::client::xdg_positioner::{Anchor, Gravity}; - use cosmic::iced_runtime::platform_specific::wayland::popup::{SctkPopupSettings, SctkPositioner}; + use cosmic::iced::runtime::platform_specific::wayland::popup::{SctkPopupSettings, SctkPositioner}; SctkPopupSettings { parent: main_window, @@ -3381,7 +3381,7 @@ impl Application for App { ) .class(style::Container::Custom(Box::new(|theme| { let cosmic = theme.cosmic(); - cosmic::iced_widget::container::Style { + cosmic::iced::widget::container::Style { icon_color: Some(Color::from(cosmic.background.on)), text_color: Some(Color::from(cosmic.background.on)), background: Some(iced::Background::Color( diff --git a/src/menu.rs b/src/menu.rs index cc65c28..a10ca75 100644 --- a/src/menu.rs +++ b/src/menu.rs @@ -7,8 +7,8 @@ use cosmic::widget::{Column, space}; use cosmic::{ Element, app::Core, + iced::core::Border, iced::{Background, Length, advanced::widget::text::Style as TextStyle}, - iced_core::Border, theme, widget::{ self, divider, diff --git a/src/shortcuts.rs b/src/shortcuts.rs index 427ed19..e918a97 100644 --- a/src/shortcuts.rs +++ b/src/shortcuts.rs @@ -2,8 +2,8 @@ use cosmic::widget::menu::key_bind::{KeyBind, Modifier}; use cosmic::{ + iced::core::keyboard::key::Named, iced::keyboard::{Key, Modifiers}, - iced_core::keyboard::key::Named, }; use serde::{Deserialize, Serialize}; use std::collections::{BTreeMap, HashMap}; diff --git a/src/terminal_box.rs b/src/terminal_box.rs index f948d73..8f7460e 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -10,15 +10,7 @@ use alacritty_terminal::{ use cosmic::{ Renderer, cosmic_theme::palette::{WithAlpha, blend::Compose}, - iced::{ - Color, Element, Length, Padding, Point, Rectangle, Size, Vector, - advanced::graphics::text::Raw, - event::{Event, Status}, - keyboard::{Event as KeyEvent, Key, Modifiers}, - mouse::{self, Button, Event as MouseEvent, ScrollDelta}, - window::RedrawRequest, - }, - iced_core::{ + iced::core::{ Border, Shell, clipboard::Clipboard, keyboard::key::Named, @@ -31,9 +23,17 @@ use cosmic::{ tree, }, }, + iced::{ + Color, Element, Length, Padding, Point, Rectangle, Size, Vector, + advanced::graphics::text::Raw, + event::{Event, Status}, + keyboard::{Event as KeyEvent, Key, Modifiers}, + mouse::{self, Button, Event as MouseEvent, ScrollDelta}, + window::RedrawRequest, + }, theme::Theme, }; -use cosmic::{iced_core::SmolStr, widget::menu::key_bind::KeyBind}; +use cosmic::{iced::core::SmolStr, widget::menu::key_bind::KeyBind}; use cosmic_text::LayoutGlyph; use indexmap::IndexSet; use std::{ From f50ece41eb46030f91049819909fa0dd30ddf6b4 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 18:09:25 +0200 Subject: [PATCH 16/28] Fix all auto-fix from clippy --- src/main.rs | 101 +++++++++++++++------------------------- src/password_manager.rs | 18 +++---- src/shortcuts.rs | 5 +- src/terminal.rs | 18 +++---- src/terminal_box.rs | 26 ++++------- 5 files changed, 63 insertions(+), 105 deletions(-) diff --git a/src/main.rs b/src/main.rs index 73dd21b..e1baa39 100644 --- a/src/main.rs +++ b/src/main.rs @@ -177,11 +177,7 @@ fn main() -> Result<(), Box> { let shortcuts_config = shortcuts::ShortcutsConfig::new(config.shortcuts_custom.clone()); - let shell = if let Some(shell_program) = shell_program_opt { - Some(tty::Shell::new(shell_program, shell_args)) - } else { - None - }; + let shell = shell_program_opt.map(|shell_program| tty::Shell::new(shell_program, shell_args)); let startup_options = Some(tty::Options { shell, working_directory, @@ -554,8 +550,7 @@ impl App { .config .color_schemes(color_scheme_kind) .get(&color_scheme_id) - { - if self + && self .themes .insert( (color_scheme_name.clone(), color_scheme_kind), @@ -569,7 +564,6 @@ impl App { color_scheme_name ); } - } } } @@ -699,8 +693,8 @@ impl App { // but only for the active pane/tab if let Some(tab_model) = self.pane_model.active() { for entity in tab_model.iter() { - if tab_model.is_active(entity) { - if let Some(terminal) = tab_model.data::>(entity) { + if tab_model.is_active(entity) + && let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); let current_zoom_adj = terminal.zoom_adj(); match zoom_message { @@ -714,7 +708,6 @@ impl App { } terminal.set_config(&self.config, &self.themes); } - } } } Task::none() @@ -722,8 +715,8 @@ impl App { fn save_color_schemes(&mut self, color_scheme_kind: ColorSchemeKind) -> Task { // Optimized for just saving color_schemes - if let Some(ref config_handler) = self.config_handler { - if let Err(err) = config_handler.set( + if let Some(ref config_handler) = self.config_handler + && let Err(err) = config_handler.set( match color_scheme_kind { ColorSchemeKind::Dark => "color_schemes_dark", ColorSchemeKind::Light => "color_schemes_light", @@ -732,7 +725,6 @@ impl App { ) { log::error!("failed to save config: {}", err); } - } self.update_color_schemes(); Task::none() } @@ -1026,11 +1018,10 @@ impl App { let mut found_actions = false; for action in group.actions { let action_label = shortcuts::action_label(action); - if let Some(regex) = &self.shortcut_search_regex { - if regex.find(&action_label).is_none() { + if let Some(regex) = &self.shortcut_search_regex + && regex.find(&action_label).is_none() { continue; } - } found_actions = true; let (bindings, changed) = self.shortcuts_config.bindings_for_action(action); @@ -1543,13 +1534,12 @@ impl App { self.startup_options.take().unwrap_or_default(); let options = tty::Options { shell: startup_options.shell.or_else(|| { - if let Some(mut args) = shlex::split(&profile.command) { - if !args.is_empty() { + if let Some(mut args) = shlex::split(&profile.command) + && !args.is_empty() { let command = args.remove(0); return Some(tty::Shell::new(command, args)); } - } - return None; + None }), working_directory: startup_options.working_directory.or_else( || { @@ -1956,8 +1946,8 @@ impl Application for App { .get(&color_scheme_id) .map(|color_scheme| color_scheme.name.clone()), None => Some(format!("COSMIC {:?}", color_scheme_kind)), - } { - if self.dialog_opt.is_none() { + } + && self.dialog_opt.is_none() { let (dialog, command) = Dialog::new( DialogSettings::new().kind(DialogKind::SaveFile { filename: format!("{}.ron", color_scheme_name), @@ -1974,7 +1964,6 @@ impl Application for App { self.dialog_opt = Some(dialog); return command; } - } } Message::ColorSchemeExportResult(color_scheme_kind, color_scheme_id_opt, result) => { //TODO: show errors in UI @@ -2115,8 +2104,7 @@ impl Application for App { Message::ColorSchemeRenameSubmit => { if let Some((color_scheme_kind, color_scheme_id, color_scheme_name)) = self.color_scheme_renaming.take() - { - if let Some(color_scheme) = self + && let Some(color_scheme) = self .config .color_schemes_mut(color_scheme_kind) .get_mut(&color_scheme_id) @@ -2124,7 +2112,6 @@ impl Application for App { color_scheme.name = color_scheme_name; return self.save_color_schemes(color_scheme_kind); } - } } Message::ColorSchemeTabActivate(entity) => { if let Some(color_scheme_kind) = @@ -2344,29 +2331,27 @@ impl Application for App { return self.update_focus(); } Message::FindNext => { - if !self.find_search_value.is_empty() { - if let Some(tab_model) = self.pane_model.active() { + if !self.find_search_value.is_empty() + && let Some(tab_model) = self.pane_model.active() { let entity = tab_model.active(); if let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); terminal.search(&self.find_search_value, true); } } - } // Focus correct input return self.update_focus(); } Message::FindPrevious => { - if !self.find_search_value.is_empty() { - if let Some(tab_model) = self.pane_model.active() { + if !self.find_search_value.is_empty() + && let Some(tab_model) = self.pane_model.active() { let entity = tab_model.active(); if let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); terminal.search(&self.find_search_value, false); } } - } // Focus correct input return self.update_focus(); @@ -2462,11 +2447,9 @@ impl Application for App { let mut terminal = terminal.lock().unwrap(); if let Some(url) = terminal.context_menu.as_ref().and_then(|m| m.link.as_ref()) - { - if let Err(err) = open::that_detached(url) { + && let Err(err) = open::that_detached(url) { log::warn!("failed to open {:?}: {}", url, err); } - } terminal.context_menu = None; terminal.active_regex_match = None; terminal.needs_update = true; @@ -2829,8 +2812,8 @@ impl Application for App { } } // Close terminal context menu state - if let Some(tab_model) = self.pane_model.active() { - if let Some(terminal) = tab_model.data::>(entity) { + if let Some(tab_model) = self.pane_model.active() + && let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); //Some actions need the menu_state, //so only clear the position for them. @@ -2845,7 +2828,6 @@ impl Application for App { } } } - } tasks.push(self.update(action.message(Some(entity)))); return cosmic::Task::batch(tasks); } @@ -2967,7 +2949,7 @@ impl Application for App { .position(tab_model.active()) .and_then(|i| (i as usize).checked_sub(1)) .unwrap_or_else(|| { - tab_model.iter().count().checked_sub(1).unwrap_or_default() + tab_model.iter().count().saturating_sub(1) }); let entity = tab_model.iter().nth(pos); @@ -3007,14 +2989,13 @@ impl Application for App { } }, TermEvent::ColorRequest(index, f) => { - if let Some(tab_model) = self.pane_model.panes.get(pane) { - if let Some(terminal) = tab_model.data::>(entity) { + if let Some(tab_model) = self.pane_model.panes.get(pane) + && let Some(terminal) = tab_model.data::>(entity) { let terminal = terminal.lock().unwrap(); let rgb = terminal.colors()[index].unwrap_or_default(); let text = f(rgb); terminal.input_no_scroll(text.into_bytes()); } - } } TermEvent::CursorBlinkingChange => { //TODO: should we blink the cursor? @@ -3023,12 +3004,11 @@ impl Application for App { return self.update(Message::TabClose(Some(entity))); } TermEvent::PtyWrite(text) => { - if let Some(tab_model) = self.pane_model.panes.get(pane) { - if let Some(terminal) = tab_model.data::>(entity) { + if let Some(tab_model) = self.pane_model.panes.get(pane) + && let Some(terminal) = tab_model.data::>(entity) { let terminal = terminal.lock().unwrap(); terminal.input_no_scroll(text.into_bytes()); } - } } TermEvent::ResetTitle => { if let Some(tab_model) = self.pane_model.panes.get_mut(pane) { @@ -3047,13 +3027,12 @@ impl Application for App { return self.update_title(Some(pane)); } TermEvent::TextAreaSizeRequest(f) => { - if let Some(tab_model) = self.pane_model.panes.get(pane) { - if let Some(terminal) = tab_model.data::>(entity) { + if let Some(tab_model) = self.pane_model.panes.get(pane) + && let Some(terminal) = tab_model.data::>(entity) { let terminal = terminal.lock().unwrap(); let text = f(terminal.size().into()); terminal.input_no_scroll(text.into_bytes()); } - } } TermEvent::Title(title) => { if let Some(tab_model) = self.pane_model.panes.get_mut(pane) { @@ -3071,12 +3050,11 @@ impl Application for App { return self.update_title(Some(pane)); } TermEvent::MouseCursorDirty | TermEvent::Wakeup => { - if let Some(tab_model) = self.pane_model.panes.get(pane) { - if let Some(terminal) = tab_model.data::>(entity) { + if let Some(tab_model) = self.pane_model.panes.get(pane) + && let Some(terminal) = tab_model.data::>(entity) { let mut terminal = terminal.lock().unwrap(); terminal.needs_update = true; } - } } TermEvent::ChildExit(_error_code) => { //Ignore this for now @@ -3212,20 +3190,18 @@ impl Application for App { return self.update_config(); } Message::ContextMenuPopupClosed(id) => { - if let Some((popup_id, pane, entity, _, _, _)) = &self.context_menu_popup { - if id == *popup_id { + if let Some((popup_id, pane, entity, _, _, _)) = &self.context_menu_popup + && id == *popup_id { // Clear link underline on the terminal - if let Some(tab_model) = self.pane_model.panes.get(*pane) { - if let Some(terminal) = tab_model.data::>(*entity) { + if let Some(tab_model) = self.pane_model.panes.get(*pane) + && let Some(terminal) = tab_model.data::>(*entity) { let mut terminal = terminal.lock().unwrap(); terminal.context_menu = None; terminal.active_regex_match = None; terminal.needs_update = true; } - } self.context_menu_popup = None; } - } } Message::Surface(a) => { return cosmic::task::message(cosmic::Action::Cosmic( @@ -3334,26 +3310,23 @@ impl Application for App { } fn on_close_requested(&self, id: window::Id) -> Option { - if let Some((popup_id, _, _, _, _, _)) = &self.context_menu_popup { - if id == *popup_id { + if let Some((popup_id, _, _, _, _, _)) = &self.context_menu_popup + && id == *popup_id { return Some(Message::ContextMenuPopupClosed(id)); } - } None } fn view_window(&self, window_id: window::Id) -> Element<'_, Message> { if let Some((popup_id, _pane, entity, ref link, ref autosize_id, _)) = self.context_menu_popup - { - if window_id == popup_id { + && window_id == popup_id { return widget::autosize::autosize( menu::context_menu(&self.config, &self.key_binds, entity, link.clone()), autosize_id.clone(), ) .into(); } - } match &self.dialog_opt { Some(dialog) => dialog.view(window_id), None => widget::text("Unknown window ID").into(), diff --git a/src/password_manager.rs b/src/password_manager.rs index fdaa672..5ebecbb 100644 --- a/src/password_manager.rs +++ b/src/password_manager.rs @@ -234,11 +234,10 @@ impl PasswordManager { } // Don't do anything if nothing have changed - if let Some(original) = &original { - if original == &input_state.input { + if let Some(original) = &original + && original == &input_state.input { return Task::none(); } - } cosmic::task::future(async move { if let Err(err) = store::add_password(identifier.clone(), password.clone()).await { @@ -246,9 +245,9 @@ impl PasswordManager { "Failed to add password {identifier}: {err}" ))) } else { - if let Some(original) = original { - if original.identifier != identifier { - if let Err(err) = + if let Some(original) = original + && original.identifier != identifier + && let Err(err) = store::delete_password(original.identifier.clone()).await { return Message::PasswordManager(PasswordManagerMessage::Error( @@ -258,8 +257,6 @@ impl PasswordManager { ), )); } - } - } Message::PasswordManager(PasswordManagerMessage::None) } }) @@ -315,8 +312,8 @@ impl PasswordManager { .spacing(space_xxs), ); - if expanded { - if let Some(input_state) = &self.input_state { + if expanded + && let Some(input_state) = &self.input_state { let expanded_section: Section<'_, Message> = widget::settings::section().add( widget::column::with_children(vec![ widget::column::with_children(vec![ @@ -381,7 +378,6 @@ impl PasswordManager { passwords_section = passwords_section.add(widget::container(expanded_section).padding(padding)) } - } } sections.push(passwords_section.into()); diff --git a/src/shortcuts.rs b/src/shortcuts.rs index e918a97..aaa8897 100644 --- a/src/shortcuts.rs +++ b/src/shortcuts.rs @@ -245,12 +245,11 @@ impl ShortcutsConfig { // Remove any matching bindings return false; } - if let Some(default_action) = self.defaults.0.get(binding) { - if *default_action == reset_action { + if let Some(default_action) = self.defaults.0.get(binding) + && *default_action == reset_action { // Remove binding that overrode a default return false; } - } true }); } diff --git a/src/terminal.rs b/src/terminal.rs index 7deacfe..ce7d6d3 100644 --- a/src/terminal.rs +++ b/src/terminal.rs @@ -858,14 +858,12 @@ impl Terminal { } // Change color if selected - if let Some(selection) = &term.selection { - if let Some(range) = selection.to_range(&term) { - if range.contains(indexed.point) { + if let Some(selection) = &term.selection + && let Some(range) = selection.to_range(&term) + && range.contains(indexed.point) { //TODO: better handling of selection mem::swap(&mut fg, &mut bg); } - } - } // Convert foreground to linear attrs = attrs.color(fg); @@ -878,11 +876,10 @@ impl Terminal { let mut flags = indexed.cell.flags; - if let Some(active_match) = &self.active_regex_match { - if active_match.contains(&indexed.point) { + if let Some(active_match) = &self.active_regex_match + && active_match.contains(&indexed.point) { flags |= Flags::UNDERLINE; } - } if let Some(active_id) = &self.active_hyperlink_id { let mut matches_active = indexed .cell @@ -1190,14 +1187,13 @@ impl<'a, T> Iterator for HintPostProcessor<'a, T> { fn next(&mut self) -> Option { let next_match = self.next_match.take()?; - if self.start <= self.end { - if let Some(rm) = self + if self.start <= self.end + && let Some(rm) = self .term .regex_search_right(self.regex, self.start, self.end) { self.next_processed_match(rm); } - } Some(next_match) } diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 8f7460e..2f22912 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -26,10 +26,9 @@ use cosmic::{ iced::{ Color, Element, Length, Padding, Point, Rectangle, Size, Vector, advanced::graphics::text::Raw, - event::{Event, Status}, + event::Event, keyboard::{Event as KeyEvent, Key, Modifiers}, mouse::{self, Button, Event as MouseEvent, ScrollDelta}, - window::RedrawRequest, }, theme::Theme, }; @@ -863,8 +862,8 @@ where if is_mouse_mode { state.autoscroll.stop(); } else { - if let Some((pointer, multiplier)) = state.autoscroll.next_due() { - if update_buffer_drag( + if let Some((pointer, multiplier)) = state.autoscroll.next_due() + && update_buffer_drag( state, &mut terminal, buffer_size, @@ -875,7 +874,6 @@ where ) { shell.capture_event(); } - } if state.autoscroll.is_active() { shell.request_redraw(); } @@ -1319,8 +1317,8 @@ where } Event::Mouse(MouseEvent::ButtonReleased(Button::Left)) => { state.autoscroll.stop(); - if let Some(dragging) = state.dragging.take() { - if let Dragging::Buffer { + if let Some(dragging) = state.dragging.take() + && let Dragging::Buffer { last_point, last_side, .. @@ -1334,7 +1332,6 @@ where } terminal.needs_update = true; } - } if let Some(p) = cursor_position.position_in(layout.bounds()) { let x = p.x - self.padding.left; let y = p.y - self.padding.top; @@ -1344,14 +1341,12 @@ where let location = terminal .viewport_to_point(TermPoint::new(row as usize, TermColumn(col as usize))); - if state.modifiers.control() { - if let Some(on_open_hyperlink) = &self.on_open_hyperlink { - if let Some(hyperlink) = get_hyperlink(&terminal, location) { + if state.modifiers.control() + && let Some(on_open_hyperlink) = &self.on_open_hyperlink + && let Some(hyperlink) = get_hyperlink(&terminal, location) { shell.publish(on_open_hyperlink(hyperlink)); shell.capture_event(); } - } - } if is_mouse_mode { terminal.report_mouse( @@ -1655,11 +1650,10 @@ fn update_active_regex_match( .find(|bounds| bounds.contains(&location)) { 'update: { - if let Some(active_match) = &terminal.active_regex_match { - if active_match == match_ { + if let Some(active_match) = &terminal.active_regex_match + && active_match == match_ { break 'update; } - } terminal.active_regex_match = Some(match_.clone()); terminal.needs_update = true; } From 72a27129e32d4bf8c58036e8b4d9215fae76a9d8 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 18:32:09 +0200 Subject: [PATCH 17/28] Don't pass the large DialogMessage on the stack Instead, since the size of DialogMessage is allocated in the Message enum, pass it as a box, so that only the size of a pointer is allocated on the stack instead. --- src/main.rs | 259 +++++++++++++++++++++++++++------------------------- 1 file changed, 137 insertions(+), 122 deletions(-) diff --git a/src/main.rs b/src/main.rs index e1baa39..2347c32 100644 --- a/src/main.rs +++ b/src/main.rs @@ -375,7 +375,7 @@ pub enum Message { DefaultFontStretch(usize), DefaultFontWeight(usize), DefaultZoomStep(usize), - DialogMessage(DialogMessage), + DialogMessage(Box), // DialogMessage is huge, so we use a box to make the size of this enum smaller on the stack Drop(Option<(pane_grid::Pane, segmented_button::Entity, DndDrop)>), Find(bool), FindNext, @@ -557,13 +557,13 @@ impl App { color_scheme.into(), ) .is_some() - { - log::warn!( - "custom {:?} color scheme {:?} replaces builtin one", - color_scheme_kind, - color_scheme_name - ); - } + { + log::warn!( + "custom {:?} color scheme {:?} replaces builtin one", + color_scheme_kind, + color_scheme_name + ); + } } } @@ -694,20 +694,21 @@ impl App { if let Some(tab_model) = self.pane_model.active() { for entity in tab_model.iter() { if tab_model.is_active(entity) - && let Some(terminal) = tab_model.data::>(entity) { - let mut terminal = terminal.lock().unwrap(); - let current_zoom_adj = terminal.zoom_adj(); - match zoom_message { - Message::ZoomIn => { - terminal.set_zoom_adj(current_zoom_adj.saturating_add(1)) - } - Message::ZoomOut => { - terminal.set_zoom_adj(current_zoom_adj.saturating_sub(1)) - } - _ => {} + && let Some(terminal) = tab_model.data::>(entity) + { + let mut terminal = terminal.lock().unwrap(); + let current_zoom_adj = terminal.zoom_adj(); + match zoom_message { + Message::ZoomIn => { + terminal.set_zoom_adj(current_zoom_adj.saturating_add(1)) } - terminal.set_config(&self.config, &self.themes); + Message::ZoomOut => { + terminal.set_zoom_adj(current_zoom_adj.saturating_sub(1)) + } + _ => {} } + terminal.set_config(&self.config, &self.themes); + } } } Task::none() @@ -722,9 +723,10 @@ impl App { ColorSchemeKind::Light => "color_schemes_light", }, self.config.color_schemes(color_scheme_kind), - ) { - log::error!("failed to save config: {}", err); - } + ) + { + log::error!("failed to save config: {}", err); + } self.update_color_schemes(); Task::none() } @@ -1019,9 +1021,10 @@ impl App { for action in group.actions { let action_label = shortcuts::action_label(action); if let Some(regex) = &self.shortcut_search_regex - && regex.find(&action_label).is_none() { - continue; - } + && regex.find(&action_label).is_none() + { + continue; + } found_actions = true; let (bindings, changed) = self.shortcuts_config.bindings_for_action(action); @@ -1535,10 +1538,11 @@ impl App { let options = tty::Options { shell: startup_options.shell.or_else(|| { if let Some(mut args) = shlex::split(&profile.command) - && !args.is_empty() { - let command = args.remove(0); - return Some(tty::Shell::new(command, args)); - } + && !args.is_empty() + { + let command = args.remove(0); + return Some(tty::Shell::new(command, args)); + } None }), working_directory: startup_options.working_directory.or_else( @@ -1946,24 +1950,24 @@ impl Application for App { .get(&color_scheme_id) .map(|color_scheme| color_scheme.name.clone()), None => Some(format!("COSMIC {:?}", color_scheme_kind)), + } && self.dialog_opt.is_none() + { + let (dialog, command) = Dialog::new( + DialogSettings::new().kind(DialogKind::SaveFile { + filename: format!("{}.ron", color_scheme_name), + }), + |msg| Message::DialogMessage(Box::new(msg)), + move |result| { + Message::ColorSchemeExportResult( + color_scheme_kind, + color_scheme_id_opt, + result, + ) + }, + ); + self.dialog_opt = Some(dialog); + return command; } - && self.dialog_opt.is_none() { - let (dialog, command) = Dialog::new( - DialogSettings::new().kind(DialogKind::SaveFile { - filename: format!("{}.ron", color_scheme_name), - }), - Message::DialogMessage, - move |result| { - Message::ColorSchemeExportResult( - color_scheme_kind, - color_scheme_id_opt, - result, - ) - }, - ); - self.dialog_opt = Some(dialog); - return command; - } } Message::ColorSchemeExportResult(color_scheme_kind, color_scheme_id_opt, result) => { //TODO: show errors in UI @@ -2050,7 +2054,7 @@ impl Application for App { self.color_scheme_errors.clear(); let (dialog, command) = Dialog::new( DialogSettings::new().kind(DialogKind::OpenMultipleFiles), - Message::DialogMessage, + |msg| Message::DialogMessage(Box::new(msg)), move |result| Message::ColorSchemeImportResult(color_scheme_kind, result), ); self.dialog_opt = Some(dialog); @@ -2108,10 +2112,10 @@ impl Application for App { .config .color_schemes_mut(color_scheme_kind) .get_mut(&color_scheme_id) - { - color_scheme.name = color_scheme_name; - return self.save_color_schemes(color_scheme_kind); - } + { + color_scheme.name = color_scheme_name; + return self.save_color_schemes(color_scheme_kind); + } } Message::ColorSchemeTabActivate(entity) => { if let Some(color_scheme_kind) = @@ -2292,7 +2296,8 @@ impl Application for App { }, Message::DialogMessage(dialog_message) => { if let Some(dialog) = &mut self.dialog_opt { - return dialog.update(dialog_message); + // DialogMessage is boxed, so we need to dereference it before updating + return dialog.update(*dialog_message); } } Message::Drop(Some((pane, entity, data))) => { @@ -2332,26 +2337,28 @@ impl Application for App { } Message::FindNext => { if !self.find_search_value.is_empty() - && let Some(tab_model) = self.pane_model.active() { - let entity = tab_model.active(); - if let Some(terminal) = tab_model.data::>(entity) { - let mut terminal = terminal.lock().unwrap(); - terminal.search(&self.find_search_value, true); - } + && let Some(tab_model) = self.pane_model.active() + { + let entity = tab_model.active(); + if let Some(terminal) = tab_model.data::>(entity) { + let mut terminal = terminal.lock().unwrap(); + terminal.search(&self.find_search_value, true); } + } // Focus correct input return self.update_focus(); } Message::FindPrevious => { if !self.find_search_value.is_empty() - && let Some(tab_model) = self.pane_model.active() { - let entity = tab_model.active(); - if let Some(terminal) = tab_model.data::>(entity) { - let mut terminal = terminal.lock().unwrap(); - terminal.search(&self.find_search_value, false); - } + && let Some(tab_model) = self.pane_model.active() + { + let entity = tab_model.active(); + if let Some(terminal) = tab_model.data::>(entity) { + let mut terminal = terminal.lock().unwrap(); + terminal.search(&self.find_search_value, false); } + } // Focus correct input return self.update_focus(); @@ -2447,9 +2454,10 @@ impl Application for App { let mut terminal = terminal.lock().unwrap(); if let Some(url) = terminal.context_menu.as_ref().and_then(|m| m.link.as_ref()) - && let Err(err) = open::that_detached(url) { - log::warn!("failed to open {:?}: {}", url, err); - } + && let Err(err) = open::that_detached(url) + { + log::warn!("failed to open {:?}: {}", url, err); + } terminal.context_menu = None; terminal.active_regex_match = None; terminal.needs_update = true; @@ -2813,21 +2821,22 @@ impl Application for App { } // Close terminal context menu state if let Some(tab_model) = self.pane_model.active() - && let Some(terminal) = tab_model.data::>(entity) { - let mut terminal = terminal.lock().unwrap(); - //Some actions need the menu_state, - //so only clear the position for them. - match action { - Action::LaunchUrlByMenu | Action::CopyUrlByMenu => { - if let Some(context_menu) = terminal.context_menu.as_mut() { - context_menu.position = None; - } - } - _ => { - terminal.context_menu = None; + && let Some(terminal) = tab_model.data::>(entity) + { + let mut terminal = terminal.lock().unwrap(); + //Some actions need the menu_state, + //so only clear the position for them. + match action { + Action::LaunchUrlByMenu | Action::CopyUrlByMenu => { + if let Some(context_menu) = terminal.context_menu.as_mut() { + context_menu.position = None; } } + _ => { + terminal.context_menu = None; + } } + } tasks.push(self.update(action.message(Some(entity)))); return cosmic::Task::batch(tasks); } @@ -2948,9 +2957,7 @@ impl Application for App { let pos = tab_model .position(tab_model.active()) .and_then(|i| (i as usize).checked_sub(1)) - .unwrap_or_else(|| { - tab_model.iter().count().saturating_sub(1) - }); + .unwrap_or_else(|| tab_model.iter().count().saturating_sub(1)); let entity = tab_model.iter().nth(pos); if let Some(entity) = entity { @@ -2990,12 +2997,13 @@ impl Application for App { }, TermEvent::ColorRequest(index, f) => { if let Some(tab_model) = self.pane_model.panes.get(pane) - && let Some(terminal) = tab_model.data::>(entity) { - let terminal = terminal.lock().unwrap(); - let rgb = terminal.colors()[index].unwrap_or_default(); - let text = f(rgb); - terminal.input_no_scroll(text.into_bytes()); - } + && let Some(terminal) = tab_model.data::>(entity) + { + let terminal = terminal.lock().unwrap(); + let rgb = terminal.colors()[index].unwrap_or_default(); + let text = f(rgb); + terminal.input_no_scroll(text.into_bytes()); + } } TermEvent::CursorBlinkingChange => { //TODO: should we blink the cursor? @@ -3005,10 +3013,11 @@ impl Application for App { } TermEvent::PtyWrite(text) => { if let Some(tab_model) = self.pane_model.panes.get(pane) - && let Some(terminal) = tab_model.data::>(entity) { - let terminal = terminal.lock().unwrap(); - terminal.input_no_scroll(text.into_bytes()); - } + && let Some(terminal) = tab_model.data::>(entity) + { + let terminal = terminal.lock().unwrap(); + terminal.input_no_scroll(text.into_bytes()); + } } TermEvent::ResetTitle => { if let Some(tab_model) = self.pane_model.panes.get_mut(pane) { @@ -3028,11 +3037,12 @@ impl Application for App { } TermEvent::TextAreaSizeRequest(f) => { if let Some(tab_model) = self.pane_model.panes.get(pane) - && let Some(terminal) = tab_model.data::>(entity) { - let terminal = terminal.lock().unwrap(); - let text = f(terminal.size().into()); - terminal.input_no_scroll(text.into_bytes()); - } + && let Some(terminal) = tab_model.data::>(entity) + { + let terminal = terminal.lock().unwrap(); + let text = f(terminal.size().into()); + terminal.input_no_scroll(text.into_bytes()); + } } TermEvent::Title(title) => { if let Some(tab_model) = self.pane_model.panes.get_mut(pane) { @@ -3051,10 +3061,11 @@ impl Application for App { } TermEvent::MouseCursorDirty | TermEvent::Wakeup => { if let Some(tab_model) = self.pane_model.panes.get(pane) - && let Some(terminal) = tab_model.data::>(entity) { - let mut terminal = terminal.lock().unwrap(); - terminal.needs_update = true; - } + && let Some(terminal) = tab_model.data::>(entity) + { + let mut terminal = terminal.lock().unwrap(); + terminal.needs_update = true; + } } TermEvent::ChildExit(_error_code) => { //Ignore this for now @@ -3191,17 +3202,19 @@ impl Application for App { } Message::ContextMenuPopupClosed(id) => { if let Some((popup_id, pane, entity, _, _, _)) = &self.context_menu_popup - && id == *popup_id { - // Clear link underline on the terminal - if let Some(tab_model) = self.pane_model.panes.get(*pane) - && let Some(terminal) = tab_model.data::>(*entity) { - let mut terminal = terminal.lock().unwrap(); - terminal.context_menu = None; - terminal.active_regex_match = None; - terminal.needs_update = true; - } - self.context_menu_popup = None; + && id == *popup_id + { + // Clear link underline on the terminal + if let Some(tab_model) = self.pane_model.panes.get(*pane) + && let Some(terminal) = tab_model.data::>(*entity) + { + let mut terminal = terminal.lock().unwrap(); + terminal.context_menu = None; + terminal.active_regex_match = None; + terminal.needs_update = true; } + self.context_menu_popup = None; + } } Message::Surface(a) => { return cosmic::task::message(cosmic::Action::Cosmic( @@ -3311,22 +3324,24 @@ impl Application for App { fn on_close_requested(&self, id: window::Id) -> Option { if let Some((popup_id, _, _, _, _, _)) = &self.context_menu_popup - && id == *popup_id { - return Some(Message::ContextMenuPopupClosed(id)); - } + && id == *popup_id + { + return Some(Message::ContextMenuPopupClosed(id)); + } None } fn view_window(&self, window_id: window::Id) -> Element<'_, Message> { if let Some((popup_id, _pane, entity, ref link, ref autosize_id, _)) = self.context_menu_popup - && window_id == popup_id { - return widget::autosize::autosize( - menu::context_menu(&self.config, &self.key_binds, entity, link.clone()), - autosize_id.clone(), - ) - .into(); - } + && window_id == popup_id + { + return widget::autosize::autosize( + menu::context_menu(&self.config, &self.key_binds, entity, link.clone()), + autosize_id.clone(), + ) + .into(); + } match &self.dialog_opt { Some(dialog) => dialog.view(window_id), None => widget::text("Unknown window ID").into(), From eca9421e87f19bd4e8af5f834a5d961c7ed9b841 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 18:36:16 +0200 Subject: [PATCH 18/28] We don't need to match for only one case Instead, let's use a simple if statement. If in the future we need to care about other cases, we can introduce a match statement again. --- src/main.rs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main.rs b/src/main.rs index 2347c32..3e815a1 100644 --- a/src/main.rs +++ b/src/main.rs @@ -748,16 +748,16 @@ impl App { if self.find { widget::text_input::focus(self.find_search_id.clone()) } else if self.core.window.show_context { - match self.context_page { - ContextPage::KeyboardShortcuts => { - if self.shortcut_search_focus.get() { - self.shortcut_search_focus.set(false); - return widget::text_input::focus(self.shortcut_search_id.clone()); - } - } - // TODO focus for other context pages? - _ => {} + // Right now we only care about the KeyboardShortcuts context page, so we use a simple if. + // In the future if we are to care about other conext pages, we could switch this to a match + // statement instead to be cleaner. + if self.context_page == ContextPage::KeyboardShortcuts + && self.shortcut_search_focus.get() + { + self.shortcut_search_focus.set(false); + return widget::text_input::focus(self.shortcut_search_id.clone()); } + Task::none() } else if let Some(terminal_id) = self.terminal_ids.get(&self.pane_model.focused()).cloned() { From b654808734778ef53343a6990c15110b9cae9886 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 18:40:26 +0200 Subject: [PATCH 19/28] Ingore clippy warnings about too many arguments --- src/terminal.rs | 23 +++++++++++++---------- src/terminal_box.rs | 36 ++++++++++++++++++++---------------- 2 files changed, 33 insertions(+), 26 deletions(-) diff --git a/src/terminal.rs b/src/terminal.rs index ce7d6d3..2dd8343 100644 --- a/src/terminal.rs +++ b/src/terminal.rs @@ -264,6 +264,7 @@ pub struct Terminal { impl Terminal { //TODO: error handling + #[allow(clippy::too_many_arguments)] pub fn new( pane: pane_grid::Pane, entity: segmented_button::Entity, @@ -860,10 +861,11 @@ impl Terminal { // Change color if selected if let Some(selection) = &term.selection && let Some(range) = selection.to_range(&term) - && range.contains(indexed.point) { - //TODO: better handling of selection - mem::swap(&mut fg, &mut bg); - } + && range.contains(indexed.point) + { + //TODO: better handling of selection + mem::swap(&mut fg, &mut bg); + } // Convert foreground to linear attrs = attrs.color(fg); @@ -877,9 +879,10 @@ impl Terminal { let mut flags = indexed.cell.flags; if let Some(active_match) = &self.active_regex_match - && active_match.contains(&indexed.point) { - flags |= Flags::UNDERLINE; - } + && active_match.contains(&indexed.point) + { + flags |= Flags::UNDERLINE; + } if let Some(active_id) = &self.active_hyperlink_id { let mut matches_active = indexed .cell @@ -1191,9 +1194,9 @@ impl<'a, T> Iterator for HintPostProcessor<'a, T> { && let Some(rm) = self .term .regex_search_right(self.regex, self.start, self.end) - { - self.next_processed_match(rm); - } + { + self.next_processed_match(rm); + } Some(next_match) } diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 2f22912..6b3a969 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -871,9 +871,10 @@ where layout.bounds(), self.padding, multiplier, - ) { - shell.capture_event(); - } + ) + { + shell.capture_event(); + } if state.autoscroll.is_active() { shell.request_redraw(); } @@ -1323,15 +1324,15 @@ where last_side, .. } = dragging + { { - { - let mut term = terminal.term.lock(); - if let Some(selection) = &mut term.selection { - selection.update(last_point, last_side); - } + let mut term = terminal.term.lock(); + if let Some(selection) = &mut term.selection { + selection.update(last_point, last_side); } - terminal.needs_update = true; } + terminal.needs_update = true; + } if let Some(p) = cursor_position.position_in(layout.bounds()) { let x = p.x - self.padding.left; let y = p.y - self.padding.top; @@ -1343,10 +1344,11 @@ where .viewport_to_point(TermPoint::new(row as usize, TermColumn(col as usize))); if state.modifiers.control() && let Some(on_open_hyperlink) = &self.on_open_hyperlink - && let Some(hyperlink) = get_hyperlink(&terminal, location) { - shell.publish(on_open_hyperlink(hyperlink)); - shell.capture_event(); - } + && let Some(hyperlink) = get_hyperlink(&terminal, location) + { + shell.publish(on_open_hyperlink(hyperlink)); + shell.capture_event(); + } if is_mouse_mode { terminal.report_mouse( @@ -1651,9 +1653,10 @@ fn update_active_regex_match( { 'update: { if let Some(active_match) = &terminal.active_regex_match - && active_match == match_ { - break 'update; - } + && active_match == match_ + { + break 'update; + } terminal.active_regex_match = Some(match_.clone()); terminal.needs_update = true; } @@ -1713,6 +1716,7 @@ enum EdgeScrollDirection { Bottom, } +#[allow(clippy::too_many_arguments)] fn edge_scroll_adjustment( y: f32, buffer_height: f32, From 14ec8d6760e1e93846a9b666517c3db2c7906242 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 18:42:34 +0200 Subject: [PATCH 20/28] Add a github action checking for clippy --- .github/workflows/rust-checks.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.github/workflows/rust-checks.yml b/.github/workflows/rust-checks.yml index b29c7d4..c3032c0 100644 --- a/.github/workflows/rust-checks.yml +++ b/.github/workflows/rust-checks.yml @@ -24,3 +24,18 @@ jobs: - name: Check formatting run: cargo fmt --all -- --check + + clippy: + name: Clippy + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Install Rust + uses: dtolnay/rust-toolchain@stable + with: + components: clippy + + - name: Run Clippy + run: cargo clippy --all-targets --all-features -- -D warnings From a747b03c17a74c116bcda70467ebb4cc2270eb86 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 19:00:25 +0200 Subject: [PATCH 21/28] Bonus: reduce size of Message further Turns out we can reduce the size of Message even further by also boxing the Config variant. The size of the Message enum has now dropped from 900+ bytes to 64 bytes. --- src/main.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main.rs b/src/main.rs index 3e815a1..fbcda25 100644 --- a/src/main.rs +++ b/src/main.rs @@ -363,7 +363,7 @@ pub enum Message { ColorSchemeRename(ColorSchemeKind, ColorSchemeId, String), ColorSchemeRenameSubmit, ColorSchemeTabActivate(widget::segmented_button::Entity), - Config(Config), + Config(Box), Copy(Option), CopyOrSigint(Option), CopyPrimary(Option), @@ -2128,11 +2128,11 @@ impl Application for App { } } Message::Config(config) => { - if config != self.config { + if *config != self.config { let shortcuts_changed = config.shortcuts_custom != self.config.shortcuts_custom; log::info!("update config"); //TODO: update syntax theme by clearing tabs, only if needed - self.config = config; + self.config = *config; if shortcuts_changed { self.shortcuts_config = shortcuts::ShortcutsConfig::new(self.config.shortcuts_custom.clone()); @@ -3596,7 +3596,7 @@ impl Application for App { update.errors ); } - Message::Config(update.config) + Message::Config(Box::new(update.config)) }), match &self.dialog_opt { Some(dialog) => dialog.subscription(), From 27e2d682a507a42282052ee63ecaa7b29de3ae2f Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 19:06:54 +0200 Subject: [PATCH 22/28] Cargo fmt --- src/password_manager.rs | 123 +++++++++++++++++++--------------------- src/shortcuts.rs | 9 +-- 2 files changed, 64 insertions(+), 68 deletions(-) diff --git a/src/password_manager.rs b/src/password_manager.rs index 5ebecbb..a52bd53 100644 --- a/src/password_manager.rs +++ b/src/password_manager.rs @@ -235,9 +235,10 @@ impl PasswordManager { // Don't do anything if nothing have changed if let Some(original) = &original - && original == &input_state.input { - return Task::none(); - } + && original == &input_state.input + { + return Task::none(); + } cosmic::task::future(async move { if let Err(err) = store::add_password(identifier.clone(), password.clone()).await { @@ -247,16 +248,13 @@ impl PasswordManager { } else { if let Some(original) = original && original.identifier != identifier - && let Err(err) = - store::delete_password(original.identifier.clone()).await - { - return Message::PasswordManager(PasswordManagerMessage::Error( - format!( - "Failed to delete password {}: {err}", - original.identifier - ), - )); - } + && let Err(err) = store::delete_password(original.identifier.clone()).await + { + return Message::PasswordManager(PasswordManagerMessage::Error(format!( + "Failed to delete password {}: {err}", + original.identifier + ))); + } Message::PasswordManager(PasswordManagerMessage::None) } }) @@ -312,72 +310,69 @@ impl PasswordManager { .spacing(space_xxs), ); - if expanded - && let Some(input_state) = &self.input_state { - let expanded_section: Section<'_, Message> = widget::settings::section().add( + if expanded && let Some(input_state) = &self.input_state { + let expanded_section: Section<'_, Message> = widget::settings::section().add( + widget::column::with_children(vec![ widget::column::with_children(vec![ - widget::column::with_children(vec![ - widget::text(fl!("password-input-description")).into(), - widget::text_input("", input_state.input.identifier.clone()) - .on_input(move |text| { - Message::PasswordManager( - PasswordManagerMessage::DescriptionInput(text), - ) - }) - .on_submit(move |text| { - Message::PasswordManager( - PasswordManagerMessage::DescriptionInputAndUpdate(text), - ) - }) - .on_unfocus(Message::PasswordManager( - PasswordManagerMessage::Update, - )) - .into(), - ]) - .spacing(space_xxxs) - .into(), - widget::column::with_children(vec![ - widget::text(fl!("password-input")).into(), - widget::secure_input( - "", - input_state.input.password.clone(), - Some(Message::PasswordManager( - PasswordManagerMessage::ToggleShowPassword, - )), - !input_state.show_password, - ) + widget::text(fl!("password-input-description")).into(), + widget::text_input("", input_state.input.identifier.clone()) .on_input(move |text| { - Message::PasswordManager(PasswordManagerMessage::PasswordInput( - text, - )) + Message::PasswordManager( + PasswordManagerMessage::DescriptionInput(text), + ) }) .on_submit(move |text| { Message::PasswordManager( - PasswordManagerMessage::PasswordInputAndUpdate(text), + PasswordManagerMessage::DescriptionInputAndUpdate(text), ) }) .on_unfocus(Message::PasswordManager( PasswordManagerMessage::Update, )) .into(), - ]) - .spacing(space_xxxs) + ]) + .spacing(space_xxxs) + .into(), + widget::column::with_children(vec![ + widget::text(fl!("password-input")).into(), + widget::secure_input( + "", + input_state.input.password.clone(), + Some(Message::PasswordManager( + PasswordManagerMessage::ToggleShowPassword, + )), + !input_state.show_password, + ) + .on_input(move |text| { + Message::PasswordManager(PasswordManagerMessage::PasswordInput( + text, + )) + }) + .on_submit(move |text| { + Message::PasswordManager( + PasswordManagerMessage::PasswordInputAndUpdate(text), + ) + }) + .on_unfocus(Message::PasswordManager(PasswordManagerMessage::Update)) .into(), ]) - .padding([0, space_s]) - .spacing(space_xs), - ); + .spacing(space_xxxs) + .into(), + ]) + .padding([0, space_s]) + .spacing(space_xs), + ); - let padding = Padding { - top: 0.0, - bottom: 0.0, - left: space_s.into(), - right: space_s.into(), - }; + let padding = Padding { + top: 0.0, + bottom: 0.0, + left: space_s.into(), + right: space_s.into(), + }; - passwords_section = - passwords_section.add(widget::container(expanded_section).padding(padding)) - } + passwords_section = + passwords_section.add(widget::container(expanded_section).padding(padding)) + } } sections.push(passwords_section.into()); diff --git a/src/shortcuts.rs b/src/shortcuts.rs index aaa8897..237ff3d 100644 --- a/src/shortcuts.rs +++ b/src/shortcuts.rs @@ -246,10 +246,11 @@ impl ShortcutsConfig { return false; } if let Some(default_action) = self.defaults.0.get(binding) - && *default_action == reset_action { - // Remove binding that overrode a default - return false; - } + && *default_action == reset_action + { + // Remove binding that overrode a default + return false; + } true }); } From 6ba1ab9e446556a8b2f85e33fefb2bf68808ac28 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 19:10:56 +0200 Subject: [PATCH 23/28] Update the clippy github action to install deps Unlike cargo format, clippy needs to actually build the project. --- .github/workflows/rust-checks.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/rust-checks.yml b/.github/workflows/rust-checks.yml index c3032c0..c4a8f91 100644 --- a/.github/workflows/rust-checks.yml +++ b/.github/workflows/rust-checks.yml @@ -32,6 +32,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 + - name: Install system dependencies + run: | + sudo apt-get update + sudo apt-get install -y pkg-config libxkbcommon-dev libfontconfig1-dev libfreetype6-dev libglvnd-dev libinput-dev libvulkan-dev libwayland-dev libx11-dev libxcursor-dev libxi-dev libxrandr-dev libasound2-dev libdbus-1-dev + - name: Install Rust uses: dtolnay/rust-toolchain@stable with: From cadbde034bded956990866a29205efd817badd57 Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Fri, 10 Apr 2026 19:23:56 +0200 Subject: [PATCH 24/28] Bonus: run the tests if we are compiling for clippy --- .github/workflows/rust-checks.yml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/.github/workflows/rust-checks.yml b/.github/workflows/rust-checks.yml index c4a8f91..f9b27b0 100644 --- a/.github/workflows/rust-checks.yml +++ b/.github/workflows/rust-checks.yml @@ -11,7 +11,7 @@ env: jobs: fmt: - name: Rustfmt + name: Formatting Check runs-on: ubuntu-latest steps: - name: Checkout repository @@ -44,3 +44,23 @@ jobs: - name: Run Clippy run: cargo clippy --all-targets --all-features -- -D warnings + + test: + name: Test + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Install system dependencies + run: | + sudo apt-get update + sudo apt-get install -y pkg-config libxkbcommon-dev libfontconfig1-dev libfreetype6-dev libglvnd-dev libinput-dev libvulkan-dev libwayland-dev libx11-dev libxcursor-dev libxi-dev libxrandr-dev libasound2-dev libdbus-1-dev + + - name: Install Rust + uses: dtolnay/rust-toolchain@stable + with: + components: clippy + + - name: Run Tests + run: cargo test --all-targets --all-features From 724415b4505b80194882bdc5846675f6875252ad Mon Sep 17 00:00:00 2001 From: Chris Glass Date: Sat, 11 Apr 2026 09:06:39 +0200 Subject: [PATCH 25/28] Review fix: revert format step name change --- .github/workflows/rust-checks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust-checks.yml b/.github/workflows/rust-checks.yml index f9b27b0..ebcdd80 100644 --- a/.github/workflows/rust-checks.yml +++ b/.github/workflows/rust-checks.yml @@ -11,7 +11,7 @@ env: jobs: fmt: - name: Formatting Check + name: Rustfmt runs-on: ubuntu-latest steps: - name: Checkout repository From f501935393d59ab8d92e2053467a6be7cabcfb81 Mon Sep 17 00:00:00 2001 From: Hosted Weblate Date: Sun, 12 Apr 2026 18:50:10 +0200 Subject: [PATCH 26/28] i18n: translation updates from weblate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Academion Co-authored-by: Amadɣas Co-authored-by: Asier Saratsua Garmendia Co-authored-by: ButterflyOfFire Co-authored-by: Ettore Atalan Co-authored-by: Geeson Wan Co-authored-by: Hosted Weblate Co-authored-by: Jiri Grönroos Co-authored-by: Jun Hwi Ku Co-authored-by: Priit Jõerüüt Co-authored-by: Thomas Worofsky Co-authored-by: Tommi Nieminen Co-authored-by: Walter William Beckerleg Bruckman Co-authored-by: defaultUser822 Co-authored-by: jonnysemon Co-authored-by: lorduskordus Co-authored-by: oddib <60390653+oddib@users.noreply.github.com> Co-authored-by: taijuin Lee Co-authored-by: therealmate Co-authored-by: 麋麓 BigELK176 Co-authored-by: 김유빈 Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/ar/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/cs/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/de/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/fi/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/hu/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/kab/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/ko/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/nb_NO/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-term/zh_Hant/ Translation: Pop OS/COSMIC Term --- i18n/ar/cosmic_term.ftl | 4 +- i18n/cs/cosmic_term.ftl | 4 +- i18n/de/cosmic_term.ftl | 12 +++-- i18n/eu/cosmic_term.ftl | 0 i18n/fi/cosmic_term.ftl | 41 +++++++++----- i18n/hu/cosmic_term.ftl | 2 +- i18n/kab/cosmic_term.ftl | 107 +++++++++++++++++++++++++++++++++++++ i18n/ko/cosmic_term.ftl | 18 ++++++- i18n/nb-NO/cosmic_term.ftl | 1 + i18n/pt-BR/cosmic_term.ftl | 16 +++--- i18n/zh-CN/cosmic_term.ftl | 12 ++--- i18n/zh-TW/cosmic_term.ftl | 95 ++++++++++++++++++++++---------- 12 files changed, 248 insertions(+), 64 deletions(-) create mode 100644 i18n/eu/cosmic_term.ftl diff --git a/i18n/ar/cosmic_term.ftl b/i18n/ar/cosmic_term.ftl index b01fbd0..58fa284 100644 --- a/i18n/ar/cosmic_term.ftl +++ b/i18n/ar/cosmic_term.ftl @@ -30,7 +30,7 @@ tab-title-description = تجاوز عنوان اللسان المبدئي add-profile = أضف ملف تعريف new-profile = ملف تعريف جديد make-default = اجعله المبدئي -working-directory = مجلد العمل +working-directory = المجلَّد الحالي hold = التعليق remain-open = البقاء مفتوحًا بعد خروج العملية الفرعية. @@ -138,7 +138,7 @@ shortcut-group-clipboard = الحافظة shortcut-group-other = أخرى shortcut-group-tabs = ألسنة shortcut-group-window = نافذة -shortcut-group-zoom = كبِّر +shortcut-group-zoom = تكبير shortcut-replace-body = عُيِّن { $binding } بالفعل لـ { $existing }. أتريد استبداله بـ { $new_action }؟ shortcut-replace-title = استبدل الاختصار؟ tab-activate = نشّط لسان { $number } diff --git a/i18n/cs/cosmic_term.ftl b/i18n/cs/cosmic_term.ftl index 6e5784f..44d6b34 100644 --- a/i18n/cs/cosmic_term.ftl +++ b/i18n/cs/cosmic_term.ftl @@ -41,7 +41,7 @@ default-font-stretch = Šířka písma default-font-weight = Normální tloušťka písma default-dim-font-weight = Tenká tloušťka písma default-bold-font-weight = Tučná tloušťka písma -use-bright-bold = Zvýraznit tučný text +use-bright-bold = Světlejší tučný text splits = Rozdělení focus-follow-mouse = Zaměření psaní sleduje myš advanced = Pokročilé @@ -86,7 +86,7 @@ disable = Zakázat keyboard-shortcuts = Klávesové zkratky menu-keyboard-shortcuts = Klávesové zkratky... no-shortcuts = Žádné zkratky -password-manager = Manažer hesel +password-manager = Správce hesel replace = Nahradit reset-to-default = Obnovit výchozí shortcut-group-clipboard = Schránka diff --git a/i18n/de/cosmic_term.ftl b/i18n/de/cosmic_term.ftl index 5d7555b..c4fc698 100644 --- a/i18n/de/cosmic_term.ftl +++ b/i18n/de/cosmic_term.ftl @@ -28,7 +28,7 @@ new-profile = Neues Profil make-default = Als Standard festlegen working-directory = Arbeitsverzeichnis hold = Halten -remain-open = Nach Beendigung des Kindprozesses offen bleiben. +remain-open = Nach Beendigung des untergeordneten Prozesses geöffnet lassen. ## Einstellungen @@ -38,7 +38,7 @@ settings = Einstellungen appearance = Aussehen theme = Thema -match-desktop = An System anpassen +match-desktop = An Desktop anpassen dark = Dunkel light = Hell syntax-dark = Dunkles Farbschema @@ -67,7 +67,7 @@ focus-follow-mouse = Tippfokus folgt Maus advanced = Erweitert show-headerbar = Kopfzeile anzeigen -show-header-description = Kopfzeile über das Rechtsklickmenü einblenden. +show-header-description = Kopfzeile über das Rechtsklick-Menü aufzeigen # Suchen find-placeholder = Suchen... find-previous = Vorherigen suchen @@ -141,3 +141,9 @@ type-to-search = Zum Suchen tippen... close-window = Fenster schließen copy-or-sigint = Kopieren oder SIGINT toggle-fullscreen = Vollbild umschalten +shortcut-group-zoom = Zoom +comment = Terminalemulator für den COSMIC Desktop +paste-primary = Primär einfügen +add-another-keybinding = Weitere Tastenbelegung hinzufügen +shortcut-replace-body = { $binding } ist bereits { $existing } zugeordnet. Durch { $new_action } ersetzen? +keywords = Befehl;Shell;Terminal;CLI; diff --git a/i18n/eu/cosmic_term.ftl b/i18n/eu/cosmic_term.ftl new file mode 100644 index 0000000..e69de29 diff --git a/i18n/fi/cosmic_term.ftl b/i18n/fi/cosmic_term.ftl index f7e985e..3cbab75 100644 --- a/i18n/fi/cosmic_term.ftl +++ b/i18n/fi/cosmic_term.ftl @@ -14,7 +14,7 @@ rename = Nimeä uudelleen export = Vie delete = Poista import = Tuo -import-errors = Tuo virheet +import-errors = Tuotaessa tapahtuneet virheet ## Profiles @@ -26,9 +26,9 @@ tab-title-description = Ylikirjoita välilehden oletusotsikko add-profile = Lisää profiili new-profile = Uusi profiili make-default = Aseta oletukseksi -working-directory = Työkansio +working-directory = Työhakemisto hold = Pidä -remain-open = Pysy auki lapsiprosessin sulkeutumisen jälkeen. +remain-open = Pysy avoinna lapsiprosessin sulkeutumisen jälkeen. ## Settings @@ -38,13 +38,13 @@ settings = Asetukset appearance = Ulkoasu theme = Teema -match-desktop = Sovita työpöydän kanssa +match-desktop = Sovita työpöytään dark = Tumma light = Vaalea syntax-dark = Tumma väriteema syntax-light = Vaalea väriteema -default-zoom-step = Zoomausaskeleet -opacity = Taustan läpinäkyvyys +default-zoom-step = Zoomauksen askeleet +opacity = Taustan peittävyys ### Font @@ -52,11 +52,11 @@ font = Fontti advanced-font-settings = Fontin lisäasetukset default-font = Fontti default-font-size = Fontin koko -default-font-stretch = Kirjasimen venyvyys -default-font-weight = Oletuskirjasimen paino -default-dim-font-weight = Kirjasimen painon himmennys -default-bold-font-weight = Paksun kirjasimen paino -use-bright-bold = Näytä paksu kirjasin kirkkaana +default-font-stretch = Fontin venyvyys +default-font-weight = Fontin normaalipaino +default-dim-font-weight = Himmennetyn fontin paino +default-bold-font-weight = Lihavoidun fontin paino +use-bright-bold = Näytä lihavoitu teksti kirkkaampana ### Splits @@ -67,7 +67,7 @@ focus-follow-mouse = Kirjoituksen kohdistus seuraa hiirtä advanced = Lisäasetukset show-headerbar = Näytä otsake -show-header-description = Paljasta otsake hiiren oikean painikkeen valikosta. +show-header-description = Paljasta otsake hiiren oikean painikkeen valikosta # Find @@ -107,7 +107,7 @@ next-tab = Seuraava välilehti previous-tab = Edellinen välilehti split-horizontal = Halkaise näkymä vaakasuunnassa split-vertical = Halkaise näkymä pystysuunnassa -pane-toggle-maximize = Maksimointi päälle tai pois päältä +pane-toggle-maximize = Suurennus päällä tai pois menu-color-schemes = Väriteemat… menu-settings = Asetukset… menu-about = Tietoa COSMICin päätteestä… @@ -134,3 +134,18 @@ menu-keyboard-shortcuts = Pikanäppäimet… tab-activate = Aktivoi välilehti { $number } type-to-search = Etsi kirjoittamalla… password-manager = Salasanahallinta +reset-to-default = Palauta oletukseksi +menu-password-manager = Salasanat… +add-another-keybinding = Lisää toinen näppäinsidos +focus-pane-down = Kohdista alempaan ruutuun +focus-pane-left = Kohdista vasemmanpuoleiseen ruutuun +focus-pane-right = Kohdista oikeanpuoleiseen ruutuun +focus-pane-up = Kohdista ylempään ruutuun +paste-primary = Liitä ensisijainen +shortcut-capture-hint = Paina näppäinyhdistelmää +shortcut-replace-body = { $binding } on jo kytketty toimintoon { $existing }. Korvataanko se toiminnolla { $new_action }? +shortcut-replace-title = Korvataanko pikanäppäin? +copy-or-sigint = Kopioi tai SIGINT +shortcut-group-zoom = Lähennä +toggle-fullscreen = Koko näyttö päällä tai pois +shortcut-group-other = Muut diff --git a/i18n/hu/cosmic_term.ftl b/i18n/hu/cosmic_term.ftl index dcc4dc4..d104797 100644 --- a/i18n/hu/cosmic_term.ftl +++ b/i18n/hu/cosmic_term.ftl @@ -58,7 +58,7 @@ default-font = Betűtípus default-font-size = Betűméret default-font-stretch = Betűszélesség default-font-weight = Normál betűsúly -default-dim-font-weight = Halvány betűsúly +default-dim-font-weight = Vékony betűsúly default-bold-font-weight = Félkövér betűsúly use-bright-bold = Félkövér szöveg világosítása diff --git a/i18n/kab/cosmic_term.ftl b/i18n/kab/cosmic_term.ftl index e69de29..1761fee 100644 --- a/i18n/kab/cosmic_term.ftl +++ b/i18n/kab/cosmic_term.ftl @@ -0,0 +1,107 @@ +cancel = Sefsex +name = Isem +delete = kkes +rename = Snifel isem +quit = Tuffɣa +support = Tallalt +repository = Asarsay +settings = Iɣewwaṛen +appearance = Timeẓri +theme = Asentel +dark = Aɣmayan +light = Aceɛlal +paste = Senteḍ +select-all = Fren akk +view = Wali +menu-settings = Iɣewwaṛen… +match-desktop = Amṣada d tnarit +file = Afaylu +new-window = Asfaylu amaynut +edit = Ẓreg +copy = Nɣel +default-zoom-step = Isurifen n usemɣer +find = Af-d +find-placeholder = Af-d… +find-previous = Af-d uzwir +find-next = Af-d uḍfir +replace = Semselsi +keyboard-shortcuts = Inegzumen n unasiw +menu-keyboard-shortcuts = Inegzumen n unasiw… +new-tab = Iccer amaynut +close-tab = Mdel iccer +import = Kter +export = Sifeḍ +reset-to-default = Ales awennez ɣer umezwer +type-to-search = Aru iwakken ad tnadiḍ… +add-another-keybinding = Rnu yiwen n unegzum n unasiw nniḍen +font = Tasefsit +default-font = Tasefsit +password-input = Awal uffir +password-input-description = Aglam +close-window = Mdel asfaylu +copy-or-sigint = Nɣel neɣ SIGINT +disable = Kkes armad +no-shortcuts = Ulac inegzumen +password-manager = Amsefrak n wawal n uɛeddi +shortcut-group-other = Ayen nniḍen +shortcut-group-tabs = Iccaren +shortcut-group-window = Asfaylu +shortcut-replace-title = Semselsi anegzum? +toggle-fullscreen = Qluqel ɣer ugdil aččuran +shortcut-group-clipboard = Tacfawit +shortcut-group-zoom = Asimɣeṛ +show-header-description = Err-d inixef seg wumuɣ n usiti ayeffus +new-terminal = Ixf amaynut +color-schemes = Azenziɣ n yiniten +import-errors = Kter tuccḍiwin +profiles = imaɣnuten +command-line = Izirig n tladna +tab-title = Azwel n yiccer +tab-title-description = Snifel azwel n yiccer amezwer +add-profile = Rnu amaɣnu +new-profile = Amaɣnu amaynut +make-default = Err-it d amezwer +working-directory = Akaram n umahil +hold = Ṭṭef +syntax-dark = Azenziɣ n yini aɣmayan +syntax-light = Azenziɣ n yini aceɛlal +opacity = Tiḍullest n ugilal +advanced-font-settings = Iɣewwaṛen inaẓiyen n tsefsit +default-font-size = Tiddi n tsefsit +default-font-stretch = Ajbad n tsefsit +default-font-weight = Taẓeyt n tsefsit tamagnut +default-dim-font-weight = Taẓeyt n tsefsit tafessast +default-bold-font-weight = Taẓeyt n tsefsit n tira tazurant +use-bright-bold = Err aḍris azuran yettfeǧǧiǧ +show-headerbar = Sken inixef +profile = Amaɣnu +menu-profiles = imaɣnuten… +remain-open = Qqim teldiḍ deffir n tuffɣa n ukala aqrur. +focus-follow-mouse = Asaḍas n tira yettḍafar taɣerdayt +advanced = Leqqayen +clear-scrollback = Sfeḍ adrurem ɣer deffir +open-link = Ldi aseɣwen +zoom-in = Aḍris ahrawan +zoom-reset = Tiddi n uḍris amezwer +zoom-out = Aḍris wezzilen ugar +next-tab = Iccer uḍfir +previous-tab = Iccer uzwir +split-horizontal = Ẓun s wudem aglawan +split-vertical = Ẓun s wudem ubdid +pane-toggle-maximize = Qluqel asemɣer +menu-about = Ɣef ixf COSMIC… +menu-password-manager = Awalen uffiren... +passwords-title = Awalen uffiren +add-password = Rnu awal uffir +splits = Tiẓunin +menu-color-schemes = Azenziɣ n yini... +comment = Amtellal n yixef i tnarit COSMIC +keywords = Taladna; Ajeɣlal; Ixf; CLI; +focus-pane-down = Err asaḍas ɣer ugalis ukessar +focus-pane-left = Err asaḍas ɣer ugalis uzelmaḍ +focus-pane-right = Err asaḍas ɣer ugalis uyeffus +focus-pane-up = Err asaḍas ɣer ugalis uksawen +paste-primary = Senṭeḍ agejdan +shortcut-capture-hint = Sit ɣef usuddes n tqeffalin +tab-activate = Sermed iccer { $number } +copy-link = Nɣel aseɣwen diff --git a/i18n/ko/cosmic_term.ftl b/i18n/ko/cosmic_term.ftl index 45f7b6e..e8d5a9e 100644 --- a/i18n/ko/cosmic_term.ftl +++ b/i18n/ko/cosmic_term.ftl @@ -51,7 +51,7 @@ default-dim-font-weight = 희미한 글꼴 굵기 advanced = 고급 use-bright-bold = 굵은 텍스트를 더 밝게 표시 default-bold-font-weight = 굵은 글꼴 굵기 -show-header-description = 오른쪽 클릭 메뉴를 통해 헤더를 나타냅니다. +show-header-description = 우클릭 메뉴를 통해 헤더를 나타냅니다 password-input-description = 설명 default-font = 글꼴 paste = 붙여넣기 @@ -78,3 +78,19 @@ find = 찾기 profile = 프로필 new-tab = 새 탭 comment = COSMIC 데스크톱용 터미널 에뮬레이터 +menu-keyboard-shortcuts = 단축키... +keywords = 명령어;셸;터미널;CLI; +cancel = 취소 +close-window = 창 닫기 +disable = 비활성화 +keyboard-shortcuts = 단축키 +password-manager = 암호 관리자 +replace = 대체 +shortcut-group-clipboard = 클립보드 +shortcut-group-tabs = 탭 +shortcut-group-window = 창 +shortcut-replace-title = 단축키를 대체할까요? +tab-activate = 활성 탭 { $number } +toggle-fullscreen = 전체 화면 전환 +type-to-search = 입력하여 검색… +copy-link = 링크 복사 diff --git a/i18n/nb-NO/cosmic_term.ftl b/i18n/nb-NO/cosmic_term.ftl index e214d03..cd98862 100644 --- a/i18n/nb-NO/cosmic_term.ftl +++ b/i18n/nb-NO/cosmic_term.ftl @@ -71,3 +71,4 @@ syntax-light = Fargeskjema lyst default-zoom-step = Zoom steg focus-follow-mouse = Skrivefokus følger musen hold = Hold +cancel = Avbryt diff --git a/i18n/pt-BR/cosmic_term.ftl b/i18n/pt-BR/cosmic_term.ftl index 23a7ccd..b9955dd 100644 --- a/i18n/pt-BR/cosmic_term.ftl +++ b/i18n/pt-BR/cosmic_term.ftl @@ -113,10 +113,10 @@ pane-toggle-maximize = Alternar maximização menu-color-schemes = Esquemas de cores... menu-settings = Configurações... menu-about = Sobre o Terminal... -open-link = Abrir Link +open-link = Abrir link menu-password-manager = Senhas... passwords-title = Senhas -add-password = Adicionar Senha +add-password = Adicionar senha password-input = Senha password-input-description = Descrição add-another-keybinding = Adicionar outra combinação de teclas @@ -124,15 +124,15 @@ cancel = Cancelar close-window = Fechar janela copy-or-sigint = Copiar ou SIGINT disable = Desabilitar -focus-pane-down = Focar painel abaixo -focus-pane-left = Focar painel à esquerda -focus-pane-right = Focar painel à direita -focus-pane-up = Focar painel acima +focus-pane-down = Focar o quadro abaixo +focus-pane-left = Focar o quadro à esquerda +focus-pane-right = Focar o quadro à direita +focus-pane-up = Focar o quadro acima keyboard-shortcuts = Atalhos de teclado menu-keyboard-shortcuts = Atalhos de teclado... no-shortcuts = Sem atalhos password-manager = Gerenciador de senhas -paste-primary = Colar +paste-primary = Colar primário replace = Substituir reset-to-default = Restaurar padrão shortcut-capture-hint = Pressione a combinação de teclas @@ -146,4 +146,4 @@ shortcut-replace-title = Substituir atalho? tab-activate = Ativar aba { $number } toggle-fullscreen = Alternar para tela cheia type-to-search = Digite para pesquisar... -copy-link = Copiar Link +copy-link = Copiar link diff --git a/i18n/zh-CN/cosmic_term.ftl b/i18n/zh-CN/cosmic_term.ftl index d02065f..d2a05eb 100644 --- a/i18n/zh-CN/cosmic_term.ftl +++ b/i18n/zh-CN/cosmic_term.ftl @@ -69,7 +69,7 @@ advanced = 高级 show-headerbar = 显示标题栏 show-header-description = 右键菜单提供显示标题栏选项 # Find -find-placeholder = 查找... +find-placeholder = 查找… find-previous = 查找上一个 find-next = 查找下一个 @@ -82,7 +82,7 @@ file = 文件 new-tab = 新建标签 new-window = 新建窗口 profile = 配置 -menu-profiles = 配置文件... +menu-profiles = 配置文件… close-tab = 关闭标签 quit = 退出 @@ -106,9 +106,9 @@ previous-tab = 上一个标签 split-horizontal = 水平分割 split-vertical = 垂直分割 pane-toggle-maximize = 切换最大化 -menu-color-schemes = 配色方案... -menu-settings = 设置... -menu-about = 关于 COSMIC 终端... +menu-color-schemes = 配色方案… +menu-settings = 设置… +menu-about = 关于 COSMIC 终端… repository = 仓库 support = 支持 open-link = 打开链接 @@ -132,7 +132,7 @@ shortcut-group-clipboard = 剪切板 shortcut-group-other = 其他 shortcut-group-tabs = 标签 shortcut-group-zoom = 缩放 -type-to-search = 输入即可搜索... +type-to-search = 输入即可搜索… copy-or-sigint = 复制或 SIGINT focus-pane-down = 聚焦下方窗格 focus-pane-left = 聚焦左侧窗格 diff --git a/i18n/zh-TW/cosmic_term.ftl b/i18n/zh-TW/cosmic_term.ftl index d9a3caf..657d777 100644 --- a/i18n/zh-TW/cosmic_term.ftl +++ b/i18n/zh-TW/cosmic_term.ftl @@ -1,5 +1,5 @@ cosmic-terminal = COSMIC 終端機 -new-terminal = 新增 終端機 +new-terminal = 新建終端機 # Context Pages @@ -9,7 +9,7 @@ new-terminal = 新增 終端機 ## Color schemes -color-schemes = 主題 +color-schemes = 配色方案 rename = 重命名 export = 匯出 delete = 刪除 @@ -38,36 +38,36 @@ settings = 設定 appearance = 外觀 theme = 主題 -match-desktop = 配合桌面 -dark = 暗色 -light = 亮色 +match-desktop = 符合桌面 +dark = 深色 +light = 淺色 syntax-dark = 暗色調 syntax-light = 亮色調 default-zoom-step = 縮放步進 -opacity = 背景透明度 +opacity = 背景不透明度 ### Font -font = 字體 -advanced-font-settings = 進階字體設定 -default-font = 字體 -default-font-size = 字體大小 -default-font-stretch = 字體延伸 -default-font-weight = 字體粗細 -default-dim-font-weight = 淡色字體粗細 -default-bold-font-weight = 粗字體粗細 -use-bright-bold = 使粗體字更亮 +font = 字型 +advanced-font-settings = 進階字型設定 +default-font = 字型 +default-font-size = 字型大小 +default-font-stretch = 字型伸展 +default-font-weight = 正常字型粗細 +default-dim-font-weight = 黯淡字型粗細 +default-bold-font-weight = 粗體字型粗細 +use-bright-bold = 使粗體文字更亮 ### Splits -splits = 終端介面分割 -focus-follow-mouse = 滑鼠點擊選擇輸入窗口 +splits = 分割 +focus-follow-mouse = 輸入焦點追隨滑鼠 ### Advanced advanced = 進階 show-headerbar = 顯示標題列 -show-header-description = 右鍵選單提供標題列選項。 +show-header-description = 右鍵選單提供標題列選項 # Find find-placeholder = 尋找... find-previous = 上一個 @@ -79,12 +79,12 @@ find-next = 下一個 ## File file = 檔案 -new-tab = 新增分頁 -new-window = 新增視窗 -profile = 設定檔 -menu-profiles = 設定檔... +new-tab = 新建分頁 +new-window = 新建視窗 +profile = 設定檔案 +menu-profiles = 設定檔案... close-tab = 關閉分頁 -quit = 結束 +quit = 退出 ## Edit @@ -97,14 +97,53 @@ find = 尋找 ## View view = 檢視 -zoom-in = 放大文字 -zoom-reset = 重設文字大小 -zoom-out = 縮小文字 +zoom-in = 較大文字 +zoom-reset = 預設文字大小 +zoom-out = 較小文字 next-tab = 下個分頁 previous-tab = 上個分頁 split-horizontal = 水平分割 split-vertical = 垂直分割 pane-toggle-maximize = 切換最大化 -menu-color-schemes = 主題... +menu-color-schemes = 配色方案... menu-settings = 設定... -menu-about = 關於 COSMIC 終端機... +menu-about = 關於 COSMIC 終端機… +cancel = 取消 +repository = 軟體庫源 +support = 支援 +keyboard-shortcuts = 鍵盤快速鍵 +keywords = 指令;殼層;終端;指令行介面CLI; +add-another-keybinding = 添加另一個按鍵組合 +close-window = 關閉視窗 +copy-or-sigint = 複製或 SIGINT +disable = 停用 +menu-keyboard-shortcuts = 鍵盤快速鍵... +no-shortcuts = 無快速鍵 +password-manager = 密碼管理器 +paste-primary = 貼上主要 +replace = 取代 +reset-to-default = 重新設定至預設 +shortcut-capture-hint = 按下組合鍵 +shortcut-group-clipboard = 剪貼簿 +shortcut-group-other = 其它 +shortcut-group-tabs = 分頁 +shortcut-group-window = 視窗 +shortcut-group-zoom = 縮放 +focus-pane-down = 聚焦下方窗格 +focus-pane-left = 聚焦左側窗格 +focus-pane-right = 聚焦右側窗格 +focus-pane-up = 聚焦上方窗格 +open-link = 開啟連結 +menu-password-manager = 密碼… +passwords-title = 密碼 +add-password = 添增密碼 +password-input = 密碼 +password-input-description = 描述 +shortcut-replace-title = 取代快速鍵? +tab-activate = 啟用分頁 { $number } +toggle-fullscreen = 切換全螢幕 +type-to-search = 輸入進行搜尋... +copy-link = 複製連結 +shortcut-replace-body = { $binding } 已經分配至 { $existing }。 要取代它為 { $new_action }? +clear-scrollback = 清除捲動回朔 +comment = COSMIC 桌面終端機模擬器 From e37f73dcbb75cdf282981580c8d006177d6cdb2a Mon Sep 17 00:00:00 2001 From: KENZ Date: Thu, 16 Apr 2026 01:03:19 +0900 Subject: [PATCH 27/28] fix: don't capture all mouse events - this fixed find panel buttons - similar fix for cosmic-edit of: - https://github.com/pop-os/cosmic-edit/commit/6ea24b85185e85e925011d0768da55aa41d69c09 --- src/terminal_box.rs | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/terminal_box.rs b/src/terminal_box.rs index 6b3a969..e070498 100644 --- a/src/terminal_box.rs +++ b/src/terminal_box.rs @@ -1360,8 +1360,6 @@ where } else { shell.capture_event(); } - } else { - shell.capture_event(); } } Event::Mouse(MouseEvent::ButtonReleased(_button)) => { From 18f5f30673094025cbf810bd5858aa8843b4f00c Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Tue, 14 Apr 2026 11:11:11 -0600 Subject: [PATCH 28/28] Epoch 1.0.11 version update Generated by cosmic-epoch scripts/version-update.sh --- Cargo.lock | 344 ++++++++++++++++++++++++----------------------- Cargo.toml | 2 +- debian/changelog | 6 + 3 files changed, 182 insertions(+), 170 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index dd3d4e2..cb03881 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -147,7 +147,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46319972e74179d707445f64aaa2893bbf6a111de3a9af29b7eb382f8b39e282" dependencies = [ "base64", - "bitflags 2.11.0", + "bitflags 2.11.1", "home", "libc", "log", @@ -217,7 +217,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f2a1bb052857d5dd49572219344a7332b31b76405648eabac5bc68978251bcd" dependencies = [ "android-properties", - "bitflags 2.11.0", + "bitflags 2.11.1", "cc", "jni", "libc", @@ -386,7 +386,7 @@ dependencies = [ "enumflags2", "futures-channel", "futures-util", - "rand 0.9.2", + "rand 0.9.4", "raw-window-handle", "serde", "serde_repr", @@ -404,7 +404,7 @@ dependencies = [ "enumflags2", "futures-channel", "futures-util", - "rand 0.9.2", + "rand 0.9.4", "serde", "serde_repr", "tokio", @@ -704,9 +704,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.11.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" +checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" dependencies = [ "serde_core", ] @@ -896,7 +896,7 @@ version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4dbf9978365bac10f54d1d4b04f7ce4427e51f71d61f2fe15e3fed5166474df7" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "polling", "rustix 1.1.4", "slab", @@ -926,9 +926,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.59" +version = "1.2.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7a4d3ec6524d28a329fc53654bbadc9bdd7b0431f5d65f1a56ffb28a1ee5283" +checksum = "43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20" dependencies = [ "find-msvc-tools", "jobserver", @@ -1292,7 +1292,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "core-foundation 0.10.1", "libc", ] @@ -1331,7 +1331,7 @@ name = "cosmic-client-toolkit" version = "0.2.0" source = "git+https://github.com/pop-os/cosmic-protocols?rev=160b086#160b086abe03cd34a8a375d7fbe47b24308d1f38" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "cosmic-protocols", "libc", "smithay-client-toolkit", @@ -1342,7 +1342,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1363,7 +1363,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "quote", "syn", @@ -1372,7 +1372,7 @@ dependencies = [ [[package]] name = "cosmic-files" version = "1.0.9" -source = "git+https://github.com/pop-os/cosmic-files.git#b17f8889a8a350a9a07ab3e00155d9b35f136152" +source = "git+https://github.com/pop-os/cosmic-files.git#9a8910008819718f2c1f45a4f9270a96490ca4ef" dependencies = [ "anyhow", "compio", @@ -1426,7 +1426,7 @@ dependencies = [ [[package]] name = "cosmic-freedesktop-icons" version = "0.4.0" -source = "git+https://github.com/pop-os/freedesktop-icons#7a61a704f6d1ec41f71cbe766e3cc484858523fa" +source = "git+https://github.com/pop-os/freedesktop-icons#9c562fe3ecf03241a46a60c0078cd6ea10bd75ce" dependencies = [ "bstr", "btoi", @@ -1442,7 +1442,7 @@ name = "cosmic-protocols" version = "0.2.0" source = "git+https://github.com/pop-os/cosmic-protocols?rev=160b086#160b086abe03cd34a8a375d7fbe47b24308d1f38" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "wayland-backend", "wayland-client", "wayland-protocols", @@ -1474,7 +1474,7 @@ dependencies = [ [[package]] name = "cosmic-term" -version = "1.0.9" +version = "1.0.11" dependencies = [ "alacritty_terminal", "clap_lex", @@ -1485,7 +1485,7 @@ dependencies = [ "i18n-embed", "i18n-embed-fl", "icu", - "indexmap 2.13.1", + "indexmap 2.14.0", "libcosmic", "log", "open", @@ -1506,9 +1506,9 @@ dependencies = [ [[package]] name = "cosmic-text" version = "0.18.2" -source = "git+https://github.com/pop-os/cosmic-text.git#9a2ab09f06905e91f41d64ac6eee887726e7fd76" +source = "git+https://github.com/pop-os/cosmic-text.git#4d74f795cc771fdcc7ea0f9cacba63fcf036fad6" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "fontdb", "harfrust", "linebender_resource_handle", @@ -1529,7 +1529,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "almost", "configparser", @@ -1847,7 +1847,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.6.2", "libc", "objc2 0.6.4", @@ -1878,7 +1878,7 @@ name = "dnd" version = "0.1.0" source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "mime 0.1.0", "raw-window-handle", "smithay-client-toolkit", @@ -1903,7 +1903,7 @@ checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "dpi" version = "0.1.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" [[package]] name = "drm" @@ -1911,7 +1911,7 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "drm-ffi", "drm-fourcc", @@ -2296,9 +2296,9 @@ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" [[package]] name = "font-types" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d9237c6d82152100c691fb77ea18037b402bcc7257d2c876a4ffac81bc22a1c" +checksum = "5b38ad915f6dadd993ced50848a8291a543bd41ca62bc10740d5e64e2ab4cfd7" dependencies = [ "bytemuck", ] @@ -2401,7 +2401,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc6d3a3635983a889f065aa9ce760384713f23a9b4a04f696f86c39a5d7a6a5a" dependencies = [ - "indexmap 2.13.1", + "indexmap 2.14.0", "nom 8.0.0", ] @@ -2620,9 +2620,9 @@ dependencies = [ [[package]] name = "gif" -version = "0.14.1" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5df2ba84018d80c213569363bdcd0c64e6933c67fe4c1d60ecf822971a3c35e" +checksum = "ee8cfcc411d9adbbaba82fb72661cc1bcca13e8bba98b364e62b2dba8f960159" dependencies = [ "color_quant", "weezl", @@ -2691,7 +2691,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "gpu-alloc-types", ] @@ -2701,7 +2701,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", ] [[package]] @@ -2722,7 +2722,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b89c83349105e3732062a895becfc71a8f921bb71ecbbdd8ff99263e3b53a0ca" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "gpu-descriptor-types", "hashbrown 0.15.5", ] @@ -2733,7 +2733,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", ] [[package]] @@ -2770,7 +2770,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9da2e5ae821f6e96664977bf974d6d6a2d6682f9ccee23e62ec1d134246845f9" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "core_maths", "read-fonts", @@ -2801,6 +2801,12 @@ dependencies = [ "foldhash 0.2.0", ] +[[package]] +name = "hashbrown" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" + [[package]] name = "heck" version = "0.4.1" @@ -2963,7 +2969,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "dnd", "iced_accessibility", @@ -2984,7 +2990,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "accesskit", "accesskit_winit", @@ -2993,9 +2999,9 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytes", "cosmic-client-toolkit", "dnd", @@ -3017,7 +3023,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "iced_core", "iced_futures", @@ -3027,7 +3033,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "futures", "iced_core", @@ -3041,9 +3047,9 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "cosmic-text", "half", @@ -3062,7 +3068,7 @@ dependencies = [ [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "iced_graphics", "iced_runtime", @@ -3071,7 +3077,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -3083,7 +3089,7 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "bytes", "cosmic-client-toolkit", @@ -3098,7 +3104,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "bytemuck", "cosmic-text", @@ -3115,10 +3121,10 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "as-raw-xcb-connection", - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "cosmic-client-toolkit", "cryoglyph", @@ -3146,7 +3152,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "cosmic-client-toolkit", "dnd", @@ -3164,7 +3170,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "cosmic-client-toolkit", "cursor-icon", @@ -3651,7 +3657,7 @@ dependencies = [ "byteorder-lite", "color_quant", "exr", - "gif 0.14.1", + "gif 0.14.2", "image-webp", "moxcms", "num-traits", @@ -3700,12 +3706,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.13.1" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a8a2b9cb3e0b0c1803dbb0758ffac5de2f425b23c28f518faabd9d805342ff" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "serde", "serde_core", ] @@ -3725,7 +3731,7 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd5b3eaf1a28b758ac0faa5a4254e8ab2705605496f1b1f3fbbc3988ad73d199" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "inotify-sys", "libc", ] @@ -3947,9 +3953,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.94" +version = "0.3.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9" +checksum = "2964e92d1d9dc3364cae4d718d93f227e3abb088e747d92e0395bfdedf1c12ca" dependencies = [ "cfg-if", "futures-util", @@ -4152,7 +4158,7 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fbe853b403ae61a04233030ae8a79d94975281ed9770a1f9e246732b534b28d" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "serde", ] @@ -4249,14 +4255,14 @@ checksum = "2c4a545a15244c7d945065b5d392b2d2d7f21526fba56ce51467b06ed445e8f7" [[package]] name = "libc" -version = "0.2.184" +version = "0.2.185" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" +checksum = "52ff2c0fe9bc6cb6b14a0592c2ff4fa9ceb83eea9db979b0487cd054946a2b8f" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#a44cff8011d81209e18de86f24da248c88b5a28d" +source = "git+https://github.com/pop-os/libcosmic.git#0d69cd918374c5cccc2d9ce9ea37e0b322df463e" dependencies = [ "apply", "ashpd 0.12.3", @@ -4333,14 +4339,14 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ddbf48fd451246b1f8c2610bd3b4ac0cc6e149d89832867093ab69a17194f08" +checksum = "e02f3bb43d335493c96bf3fd3a321600bf6bd07ed34bc64118e9293bdffea46c" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "libc", "plain", - "redox_syscall 0.7.3", + "redox_syscall 0.7.4", ] [[package]] @@ -4441,9 +4447,9 @@ dependencies = [ [[package]] name = "lru" -version = "0.16.3" +version = "0.16.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" +checksum = "7f66e8d5d03f609abc3a39e6f08e4164ebf1447a732906d39eb9b99b7919ef39" [[package]] name = "lyon" @@ -4583,7 +4589,7 @@ version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00c15a6f673ff72ddcc22394663290f870fb224c1bfce55734a75c414150e605" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block", "core-graphics-types 0.2.0", "foreign-types", @@ -4677,14 +4683,14 @@ checksum = "066cf25f0e8b11ee0df221219010f213ad429855f57c494f995590c861a9a7d8" dependencies = [ "arrayvec", "bit-set", - "bitflags 2.11.0", + "bitflags 2.11.1", "cfg-if", "cfg_aliases", "codespan-reporting", "half", "hashbrown 0.16.1", "hexf-parse", - "indexmap 2.13.1", + "indexmap 2.14.0", "libm", "log", "num-traits", @@ -4701,7 +4707,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "jni-sys 0.3.1", "log", "ndk-sys", @@ -4762,7 +4768,7 @@ version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d3d07927151ff8575b7087f245456e549fea62edf0ec4e565a5ee50c8402bc3" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "fsevent-sys", "inotify", "kqueue", @@ -4793,7 +4799,7 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42b8cfee0e339a0337359f3c88165702ac6e600dc01c0cc9579a92d62b08477a" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", ] [[package]] @@ -4979,7 +4985,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.5.1", "libc", "objc2 0.5.2", @@ -4995,7 +5001,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.6.2", "objc2 0.6.4", "objc2-core-foundation", @@ -5008,7 +5014,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.5.1", "objc2 0.5.2", "objc2-foundation 0.2.2", @@ -5020,7 +5026,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.6.2", "dispatch2", "objc2 0.6.4", @@ -5032,7 +5038,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "libc", "objc2-core-foundation", ] @@ -5055,7 +5061,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d425caf1df73233f29fd8a5c3e5edbc30d2d4307870f802d18f00d83dc5141a6" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "objc2-core-foundation", "objc2-core-graphics", ] @@ -5072,7 +5078,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.5.1", "libc", "objc2 0.5.2", @@ -5084,7 +5090,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.6.2", "objc2 0.6.4", "objc2-core-foundation", @@ -5096,7 +5102,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.5.1", "objc2 0.5.2", "objc2-foundation 0.2.2", @@ -5108,7 +5114,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.5.1", "objc2 0.5.2", "objc2-foundation 0.2.2", @@ -5121,7 +5127,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "objc2 0.6.4", "objc2-core-foundation", "objc2-foundation 0.3.2", @@ -5196,11 +5202,11 @@ dependencies = [ [[package]] name = "ordermap" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfa78c92071bbd3628c22b1a964f7e0eb201dc1456555db072beb1662ecd6715" +checksum = "7f7476a5b122ff1fce7208e7ee9dccd0a516e835f5b8b19b8f3c98a34cf757c1" dependencies = [ - "indexmap 2.13.1", + "indexmap 2.14.0", "serde", "serde_core", ] @@ -5474,9 +5480,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.32" +version = "0.3.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" [[package]] name = "plain" @@ -5503,7 +5509,7 @@ version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "crc32fast", "fdeflate", "flate2", @@ -5652,7 +5658,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25485360a54d6861439d60facef26de713b1e126bf015ec8f98239467a2b82f7" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "chrono", "flate2", "procfs-core", @@ -5665,7 +5671,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6401bf7b6af22f78b563665d15a22e9aef27775b79b149a66ca022468a4e405" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "chrono", "hex", ] @@ -5773,9 +5779,9 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.2" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" +checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" dependencies = [ "rand_chacha 0.9.0", "rand_core 0.9.5", @@ -5858,7 +5864,7 @@ dependencies = [ "num-traits", "paste", "profiling", - "rand 0.9.2", + "rand 0.9.4", "rand_chacha 0.9.0", "simd_helpers", "thiserror 2.0.18", @@ -5889,9 +5895,9 @@ checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" [[package]] name = "rayon" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" +checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" dependencies = [ "either", "rayon-core", @@ -5940,16 +5946,16 @@ version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", ] [[package]] name = "redox_syscall" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce70a74e890531977d37e532c34d45e9055d2409ed08ddba14529471ed0be16" +checksum = "f450ad9c3b1da563fb6948a8e0fb0fb9269711c9c73d9ea1de5058c79c8d643a" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", ] [[package]] @@ -6086,7 +6092,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db09040cc89e461f1a265139777a2bde7f8d8c67c4936f700c63ce3e2904d468" dependencies = [ "base64", - "bitflags 2.11.0", + "bitflags 2.11.1", "serde", "serde_derive", "unicode-ident", @@ -6098,7 +6104,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4147b952f3f819eca0e99527022f7d6a8d05f111aeb0a62960c74eb283bec8fc" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "once_cell", "serde", "serde_derive", @@ -6173,7 +6179,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "errno", "libc", "linux-raw-sys 0.4.15", @@ -6186,7 +6192,7 @@ version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "errno", "libc", "linux-raw-sys 0.12.1", @@ -6216,7 +6222,7 @@ version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd3c7c96f8a08ee34eff8857b11b49b07d71d1c3f4e88f8a88d4c9e9f90b1702" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "core_maths", "log", @@ -6362,7 +6368,7 @@ version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ - "indexmap 2.13.1", + "indexmap 2.14.0", "itoa", "memchr", "serde", @@ -6391,7 +6397,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.13.1", + "indexmap 2.14.0", "schemars 0.9.0", "schemars 1.2.1", "serde_core", @@ -6552,7 +6558,7 @@ version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0512da38f5e2b31201a93524adb8d3136276fa4fe4aafab4e1f727a82b534cc0" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "calloop", "calloop-wayland-source", @@ -6652,7 +6658,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.11.0", + "bitflags 2.11.1", ] [[package]] @@ -7036,7 +7042,7 @@ version = "0.25.11+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b59c4d22ed448339746c59b905d24568fcbb3ab65a500494f7b8c3e97739f2b" dependencies = [ - "indexmap 2.13.1", + "indexmap 2.14.0", "toml_datetime", "toml_parser", "winnow 1.0.1", @@ -7392,7 +7398,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a5924018406ce0063cd67f8e008104968b74b563ee1b85dde3ed1f7cb87d3dbd" dependencies = [ "arrayvec", - "bitflags 2.11.0", + "bitflags 2.11.1", "cursor-icon", "log", "memchr", @@ -7435,9 +7441,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.117" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0" +checksum = "0bf938a0bacb0469e83c1e148908bd7d5a6010354cf4fb73279b7447422e3a89" dependencies = [ "cfg-if", "once_cell", @@ -7448,9 +7454,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.67" +version = "0.4.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03623de6905b7206edd0a75f69f747f134b7f0a2323392d664448bf2d3c5d87e" +checksum = "f371d383f2fb139252e0bfac3b81b265689bf45b6874af544ffa4c975ac1ebf8" dependencies = [ "js-sys", "wasm-bindgen", @@ -7458,9 +7464,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.117" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be" +checksum = "eeff24f84126c0ec2db7a449f0c2ec963c6a49efe0698c4242929da037ca28ed" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7468,9 +7474,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.117" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2" +checksum = "9d08065faf983b2b80a79fd87d8254c409281cf7de75fc4b773019824196c904" dependencies = [ "bumpalo", "proc-macro2", @@ -7481,9 +7487,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.117" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b" +checksum = "5fd04d9e306f1907bd13c6361b5c6bfc7b3b3c095ed3f8a9246390f8dbdee129" dependencies = [ "unicode-ident", ] @@ -7505,7 +7511,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" dependencies = [ "anyhow", - "indexmap 2.13.1", + "indexmap 2.14.0", "wasm-encoder", "wasmparser", ] @@ -7516,9 +7522,9 @@ version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "hashbrown 0.15.5", - "indexmap 2.13.1", + "indexmap 2.14.0", "semver", ] @@ -7556,7 +7562,7 @@ version = "0.31.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "645c7c96bb74690c3189b5c9cb4ca1627062bb23693a4fad9d8c3de958260144" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "rustix 1.1.4", "wayland-backend", "wayland-scanner", @@ -7568,7 +7574,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "cursor-icon", "wayland-backend", ] @@ -7590,7 +7596,7 @@ version = "0.32.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "563a85523cade2429938e790815fd7319062103b9f4a2dc806e9b53b95982d8f" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "wayland-backend", "wayland-client", "wayland-scanner", @@ -7603,7 +7609,7 @@ version = "20250721.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "40a1f863128dcaaec790d7b4b396cc9b9a7a079e878e18c47e6c2d2c5a8dcbb1" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "wayland-backend", "wayland-client", "wayland-protocols", @@ -7616,7 +7622,7 @@ version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e9567599ef23e09b8dad6e429e5738d4509dfc46b3b21f32841a304d16b29c8" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "wayland-backend", "wayland-client", "wayland-protocols", @@ -7629,7 +7635,7 @@ version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b6d8cf1eb2c1c31ed1f5643c88a6e53538129d4af80030c8cabd1f9fa884d91" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "wayland-backend", "wayland-client", "wayland-protocols", @@ -7642,7 +7648,7 @@ version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eb04e52f7836d7c7976c78ca0250d61e33873c34156a2a1fc9474828ec268234" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "wayland-backend", "wayland-client", "wayland-protocols", @@ -7667,7 +7673,7 @@ version = "0.31.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc1846eb04c49182e04f4a099e2a830a2b745610bbc1d61246e206f29c7000a0" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "downcast-rs", "rustix 1.1.4", "wayland-backend", @@ -7688,9 +7694,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.94" +version = "0.3.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd70027e39b12f0849461e08ffc50b9cd7688d942c1c8e3c7b22273236b4dd0a" +checksum = "4f2dfbb17949fa2088e5d39408c48368947b86f7834484e87b73de55bc14d97d" dependencies = [ "js-sys", "wasm-bindgen", @@ -7719,7 +7725,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfe68bac7cde125de7a731c3400723cadaaf1703795ad3f4805f187459cd7a77" dependencies = [ "arrayvec", - "bitflags 2.11.0", + "bitflags 2.11.1", "cfg-if", "cfg_aliases", "document-features", @@ -7750,12 +7756,12 @@ dependencies = [ "arrayvec", "bit-set", "bit-vec", - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "cfg_aliases", "document-features", "hashbrown 0.16.1", - "indexmap 2.13.1", + "indexmap 2.14.0", "log", "naga", "once_cell", @@ -7810,7 +7816,7 @@ dependencies = [ "arrayvec", "ash", "bit-set", - "bitflags 2.11.0", + "bitflags 2.11.1", "block", "bytemuck", "cfg-if", @@ -7855,7 +7861,7 @@ version = "27.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afdcf84c395990db737f2dd91628706cb31e86d72e53482320d368e52b5da5eb" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "js-sys", "log", @@ -8414,9 +8420,9 @@ checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winit" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "cfg_aliases", "cursor-icon", "dpi", @@ -8440,10 +8446,10 @@ dependencies = [ [[package]] name = "winit-android" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ "android-activity", - "bitflags 2.11.0", + "bitflags 2.11.1", "dpi", "ndk", "raw-window-handle", @@ -8455,9 +8461,9 @@ dependencies = [ [[package]] name = "winit-appkit" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.6.2", "dispatch2", "dpi", @@ -8477,7 +8483,7 @@ dependencies = [ [[package]] name = "winit-common" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ "memmap2 0.9.10", "objc2 0.6.4", @@ -8492,9 +8498,9 @@ dependencies = [ [[package]] name = "winit-core" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "cursor-icon", "dpi", "keyboard-types", @@ -8506,14 +8512,14 @@ dependencies = [ [[package]] name = "winit-orbital" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "dpi", "libredox", "orbclient", "raw-window-handle", - "redox_syscall 0.7.3", + "redox_syscall 0.7.4", "smol_str", "tracing", "winit-core", @@ -8522,9 +8528,9 @@ dependencies = [ [[package]] name = "winit-uikit" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "block2 0.6.2", "dispatch2", "dpi", @@ -8542,10 +8548,10 @@ dependencies = [ [[package]] name = "winit-wayland" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ "ahash", - "bitflags 2.11.0", + "bitflags 2.11.1", "calloop", "cursor-icon", "dpi", @@ -8568,10 +8574,10 @@ dependencies = [ [[package]] name = "winit-web" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ "atomic-waker", - "bitflags 2.11.0", + "bitflags 2.11.1", "concurrent-queue", "cursor-icon", "dpi", @@ -8590,9 +8596,9 @@ dependencies = [ [[package]] name = "winit-win32" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "cursor-icon", "dpi", "raw-window-handle", @@ -8606,9 +8612,9 @@ dependencies = [ [[package]] name = "winit-x11" version = "0.31.0-beta.2" -source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#a610ac9c7a72b39ff102ed4d946291618dc725b6" +source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "bytemuck", "calloop", "cursor-icon", @@ -8672,7 +8678,7 @@ checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" dependencies = [ "anyhow", "heck 0.5.0", - "indexmap 2.13.1", + "indexmap 2.14.0", "prettyplease", "syn", "wasm-metadata", @@ -8702,8 +8708,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" dependencies = [ "anyhow", - "bitflags 2.11.0", - "indexmap 2.13.1", + "bitflags 2.11.1", + "indexmap 2.14.0", "log", "serde", "serde_derive", @@ -8722,7 +8728,7 @@ checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" dependencies = [ "anyhow", "id-arena", - "indexmap 2.13.1", + "indexmap 2.14.0", "log", "semver", "serde", @@ -8865,7 +8871,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" dependencies = [ - "bitflags 2.11.0", + "bitflags 2.11.1", "dlib", "log", "once_cell", @@ -9149,7 +9155,7 @@ dependencies = [ "flate2", "getrandom 0.4.2", "hmac", - "indexmap 2.13.1", + "indexmap 2.14.0", "lzma-rust2", "memchr", "pbkdf2", diff --git a/Cargo.toml b/Cargo.toml index 25d4315..1db1107 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-term" -version = "1.0.9" +version = "1.0.11" authors = ["Jeremy Soller "] edition = "2024" license = "GPL-3.0-only" diff --git a/debian/changelog b/debian/changelog index bd25c91..146a837 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cosmic-term (1.0.11) noble; urgency=medium + + * Epoch 1.0.11 version update + + -- Jeremy Soller Tue, 14 Apr 2026 11:11:05 -0600 + cosmic-term (1.0.9) noble; urgency=medium * Epoch 1.0.9 version update