diff --git a/Cargo.lock b/Cargo.lock index 2903c4e..ce76f64 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -20,64 +20,75 @@ checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" [[package]] name = "accesskit" -version = "0.12.2" -source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#26f729169cd849970af02be62289606c63572d2d" +version = "0.16.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" + +[[package]] +name = "accesskit_atspi_common" +version = "0.9.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" +dependencies = [ + "accesskit", + "accesskit_consumer", + "atspi-common", + "serde", + "thiserror", + "zvariant 3.15.2", +] [[package]] name = "accesskit_consumer" -version = "0.17.0" -source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#26f729169cd849970af02be62289606c63572d2d" +version = "0.24.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" dependencies = [ "accesskit", + "immutable-chunkmap", ] [[package]] name = "accesskit_macos" -version = "0.11.0" -source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#26f729169cd849970af02be62289606c63572d2d" +version = "0.17.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" dependencies = [ "accesskit", "accesskit_consumer", - "icrate 0.1.2", - "objc2 0.5.2", + "objc2", + "objc2-app-kit", + "objc2-foundation", "once_cell", ] [[package]] name = "accesskit_unix" -version = "0.7.1" -source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#26f729169cd849970af02be62289606c63572d2d" +version = "0.12.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" dependencies = [ "accesskit", - "accesskit_consumer", - "async-channel", - "async-executor", - "async-task", + "accesskit_atspi_common", "atspi", "futures-lite 1.13.0", - "futures-util", - "once_cell", "serde", + "tokio", + "tokio-stream", "zbus 3.15.2", ] [[package]] name = "accesskit_windows" -version = "0.16.0" -source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#26f729169cd849970af02be62289606c63572d2d" +version = "0.22.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" dependencies = [ "accesskit", "accesskit_consumer", - "once_cell", "paste", "static_assertions", - "windows 0.48.0", + "windows 0.54.0", ] [[package]] name = "accesskit_winit" -version = "0.18.1" -source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#26f729169cd849970af02be62289606c63572d2d" +version = "0.22.0" +source = "git+https://github.com/wash2/accesskit?tag=iced-xdg-surface-0.13#956955342dadab7e588e21be726817fca39510f3" dependencies = [ "accesskit", "accesskit_macos", @@ -150,9 +161,9 @@ checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14" [[package]] name = "android-activity" -version = "0.5.2" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289" +checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" dependencies = [ "android-properties", "bitflags 2.6.0", @@ -164,7 +175,7 @@ dependencies = [ "log", "ndk", "ndk-context", - "ndk-sys", + "ndk-sys 0.6.0+11769913", "num_enum", "thiserror", ] @@ -192,9 +203,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.15" +version = "0.6.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" +checksum = "23a1e53f0f5d86382dafe1cf314783b2044280f406e7e1506368220ad11b1338" dependencies = [ "anstyle", "anstyle-parse", @@ -207,43 +218,43 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" +checksum = "8365de52b16c035ff4fcafe0092ba9390540e3e352870ac09933bebcaa2c8c56" [[package]] name = "anstyle-parse" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.4" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" +checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" dependencies = [ "anstyle", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "anyhow" -version = "1.0.89" +version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" +checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8" [[package]] name = "apply" @@ -286,11 +297,11 @@ checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b" [[package]] name = "ash" -version = "0.37.3+1.3.251" +version = "0.38.0+1.3.281" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a" +checksum = "0bb44936d800fea8f016d7f2311c6a4f97aebd5dc86f09906139ec848cf3a46f" dependencies = [ - "libloading 0.7.4", + "libloading", ] [[package]] @@ -299,7 +310,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd884d7c72877a94102c3715f3b1cd09ff4fac28221add3e57cfbe25c236d093" dependencies = [ - "async-fs 2.1.2", + "async-fs", "async-net", "enumflags2", "futures-channel", @@ -376,18 +387,6 @@ dependencies = [ "slab", ] -[[package]] -name = "async-fs" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" -dependencies = [ - "async-lock 2.8.0", - "autocfg", - "blocking", - "futures-lite 1.13.0", -] - [[package]] name = "async-fs" version = "2.1.2" @@ -513,7 +512,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -548,7 +547,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -674,18 +673,18 @@ dependencies = [ [[package]] name = "bit-set" -version = "0.5.3" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "f0481a0e032742109b1133a095184ee93d88f3dc9e0d28a5d033dc77a073f44f" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +checksum = "d2c54ff287cfc0a34f38a6b832ea1bd8e448a330b3e40a50859e6488bee07f22" [[package]] name = "bit_field" @@ -723,33 +722,13 @@ dependencies = [ "generic-array", ] -[[package]] -name = "block-sys" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae85a0696e7ea3b835a453750bf002770776609115e6d25c6d2ff28a8200f7e7" -dependencies = [ - "objc-sys", -] - -[[package]] -name = "block2" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b55663a85f33501257357e6421bb33e769d5c9ffb5ba0921c975a123e35e68" -dependencies = [ - "block-sys", - "objc2 0.4.1", -] - [[package]] name = "block2" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e58aa60e59d8dbfcc36138f5f18be5f24394d33b38b24f7fd0b1caa33095f22f" +checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" dependencies = [ - "block-sys", - "objc2 0.5.2", + "objc2", ] [[package]] @@ -794,7 +773,7 @@ checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -805,23 +784,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" - -[[package]] -name = "calloop" -version = "0.12.4" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298" -dependencies = [ - "bitflags 2.6.0", - "log", - "polling 3.7.3", - "rustix 0.38.37", - "slab", - "thiserror", -] +checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" [[package]] name = "calloop" @@ -837,25 +802,13 @@ dependencies = [ "thiserror", ] -[[package]] -name = "calloop-wayland-source" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02" -dependencies = [ - "calloop 0.12.4", - "rustix 0.38.37", - "wayland-backend", - "wayland-client", -] - [[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", + "calloop", "rustix 0.38.37", "wayland-backend", "wayland-client", @@ -863,9 +816,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.30" +version = "1.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" +checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" dependencies = [ "jobserver", "libc", @@ -922,7 +875,7 @@ dependencies = [ [[package]] name = "clipboard_macos" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-8#7c59b07b9172d8e0401f7e06609e1050575309c9" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265" dependencies = [ "objc", "objc-foundation", @@ -932,7 +885,7 @@ dependencies = [ [[package]] name = "clipboard_wayland" version = "0.2.2" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-8#7c59b07b9172d8e0401f7e06609e1050575309c9" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265" dependencies = [ "dnd", "mime 0.1.0", @@ -942,7 +895,7 @@ dependencies = [ [[package]] name = "clipboard_x11" version = "0.4.2" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-8#7c59b07b9172d8e0401f7e06609e1050575309c9" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265" dependencies = [ "thiserror", "x11rb", @@ -996,9 +949,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "colorchoice" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" [[package]] name = "com" @@ -1125,7 +1078,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1147,7 +1100,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "quote", "syn 1.0.109", @@ -1167,12 +1120,12 @@ version = "0.12.1" source = "git+https://github.com/pop-os/cosmic-text.git#4fe90bb6126c22f589b46768d7754d65ae300c5e" dependencies = [ "bitflags 2.6.0", - "fontdb", + "fontdb 0.16.2", "log", "rangemap", "rayon", - "rustc-hash", - "rustybuzz 0.14.1", + "rustc-hash 1.1.0", + "rustybuzz", "self_cell 1.0.4", "smol_str", "swash", @@ -1187,7 +1140,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "almost", "cosmic-config", @@ -1351,11 +1304,12 @@ checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991" [[package]] name = "d3d12" -version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdbd1f579714e3c809ebd822c81ef148b1ceaeb3d535352afc73fd0c4c6a0017" dependencies = [ "bitflags 2.6.0", - "libloading 0.8.5", + "libloading", "winapi", ] @@ -1380,7 +1334,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -1391,7 +1345,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -1454,7 +1408,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -1513,7 +1467,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -1522,7 +1476,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" dependencies = [ - "libloading 0.8.5", + "libloading", ] [[package]] @@ -1537,15 +1491,24 @@ dependencies = [ [[package]] name = "dnd" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-8#7c59b07b9172d8e0401f7e06609e1050575309c9" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265" dependencies = [ "bitflags 2.6.0", "mime 0.1.0", "raw-window-handle", - "smithay-client-toolkit 0.19.2", + "smithay-client-toolkit", "smithay-clipboard", ] +[[package]] +name = "document-features" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" +dependencies = [ + "litrs", +] + [[package]] name = "dotenvy" version = "0.15.7" @@ -1558,6 +1521,11 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" +[[package]] +name = "dpi" +version = "0.1.1" +source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13#b1852274c0251d7f24ba2cb32fa53812b37b1c79" + [[package]] name = "drm" version = "0.11.1" @@ -1608,9 +1576,9 @@ dependencies = [ [[package]] name = "encoding_rs" -version = "0.8.34" +version = "0.8.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" dependencies = [ "cfg-if", ] @@ -1639,7 +1607,7 @@ checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -1809,7 +1777,7 @@ checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" dependencies = [ "cfg-if", "libc", - "libredox 0.1.3", + "libredox", "windows-sys 0.59.0", ] @@ -1864,7 +1832,7 @@ dependencies = [ "fluent-syntax", "intl-memoizer", "intl_pluralrules", - "rustc-hash", + "rustc-hash 1.1.0", "self_cell 0.10.3", "smallvec", "unic-langid", @@ -1890,9 +1858,9 @@ dependencies = [ [[package]] name = "flume" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095" dependencies = [ "futures-core", "futures-sink", @@ -1905,12 +1873,6 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" -[[package]] -name = "foldhash" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" - [[package]] name = "font-types" version = "0.7.2" @@ -1926,7 +1888,7 @@ version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1fcfcd44ca6e90c921fee9fa665d530b21ef1327a4c1a6c5250ea44b776ada7" dependencies = [ - "roxmltree 0.20.0", + "roxmltree", ] [[package]] @@ -1943,6 +1905,20 @@ dependencies = [ "ttf-parser 0.20.0", ] +[[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.5", + "slotmap", + "tinyvec", + "ttf-parser 0.21.1", +] + [[package]] name = "foreign-types" version = "0.3.2" @@ -1970,7 +1946,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -2122,7 +2098,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -2186,16 +2162,6 @@ dependencies = [ "wasi", ] -[[package]] -name = "gif" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045" -dependencies = [ - "color_quant", - "weezl", -] - [[package]] name = "gif" version = "0.13.1" @@ -2225,9 +2191,9 @@ dependencies = [ [[package]] name = "glam" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5418c17512bdf42730f9032c74e1ae39afc408745ebb2acf72fbc4691c17945" +checksum = "151665d9be52f9bb40fc7966565d39666f2d1e69233571b71b87791c7e0528b3" [[package]] name = "glow" @@ -2243,24 +2209,13 @@ dependencies = [ [[package]] name = "glutin_wgl_sys" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead" +checksum = "0a4e1951bbd9434a81aa496fe59ccc2235af3820d27b85f9314e279609211e2c" dependencies = [ "gl_generator", ] -[[package]] -name = "glyphon" -version = "0.5.0" -source = "git+https://github.com/pop-os/glyphon.git?tag=v0.5.0#1b0646ff8f74da92d3be704dfc2257d7f4d7eed8" -dependencies = [ - "cosmic-text", - "etagere", - "lru", - "wgpu", -] - [[package]] name = "gpu-alloc" version = "0.6.0" @@ -2282,9 +2237,9 @@ dependencies = [ [[package]] name = "gpu-allocator" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f56f6318968d03c18e1bcf4857ff88c61157e9da8e47c5f29055d60e1228884" +checksum = "fdd4240fc91d3433d5e5b0fc5b67672d771850dc19bbee03c1381e19322803d7" dependencies = [ "log", "presser", @@ -2295,9 +2250,9 @@ dependencies = [ [[package]] name = "gpu-descriptor" -version = "0.2.4" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c" +checksum = "9c08c1f623a8d0b722b8b99f821eb0ba672a1618f0d3b16ddbee1cedd2dd8557" dependencies = [ "bitflags 2.6.0", "gpu-descriptor-types", @@ -2306,9 +2261,9 @@ dependencies = [ [[package]] name = "gpu-descriptor-types" -version = "0.1.2" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c" +checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91" dependencies = [ "bitflags 2.6.0", ] @@ -2373,11 +2328,6 @@ name = "hashbrown" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash", -] [[package]] name = "hashlink" @@ -2397,7 +2347,7 @@ dependencies = [ "bitflags 2.6.0", "com", "libc", - "libloading 0.8.5", + "libloading", "thiserror", "widestring", "winapi", @@ -2600,9 +2550,9 @@ dependencies = [ [[package]] name = "i18n-embed" -version = "0.15.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e901c87176ac0b615033c81dbe927c230f74700abfd60ed953a6f547c87bbe6d" +checksum = "a7839d8c7bb8da7bd58c1112d3a1aeb7f178ff3df4ae87783e758ca3bfb750b7" dependencies = [ "arc-swap", "fluent", @@ -2622,9 +2572,9 @@ dependencies = [ [[package]] name = "i18n-embed-fl" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d73fe51b9655599147183495551696628b335f75b2dbfa225196b16d69d7288e" +checksum = "f6e9571c3cba9eba538eaa5ee40031b26debe76f0c7e17bafc97ea57a76cd82e" dependencies = [ "dashmap", "find-crate", @@ -2633,25 +2583,25 @@ dependencies = [ "i18n-config", "i18n-embed", "lazy_static", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "strsim", - "syn 2.0.79", + "syn 2.0.85", "unic-langid", ] [[package]] name = "i18n-embed-impl" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81093c4701672f59416582fe3145676126fd23ba5db910acad0793c1108aaa58" +checksum = "0f2cc0e0523d1fe6fc2c6f66e5038624ea8091b3e7748b5e8e0c84b1698db6c2" dependencies = [ "find-crate", "i18n-config", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -2665,7 +2615,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows-core 0.52.0", ] [[package]] @@ -2679,8 +2629,8 @@ dependencies = [ [[package]] name = "iced" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "dnd", "iced_accessibility", @@ -2698,7 +2648,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "accesskit", "accesskit_winit", @@ -2706,46 +2656,61 @@ dependencies = [ [[package]] name = "iced_core" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "bitflags 2.6.0", + "bytes", "dnd", + "glam", "log", "mime 0.1.0", "num-traits", + "once_cell", "palette", "raw-window-handle", + "rustc-hash 2.0.0", "serde", "smol_str", "thiserror", "web-time", "window_clipboard", - "xxhash-rust", ] [[package]] name = "iced_futures" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "futures", "iced_core", "log", + "rustc-hash 2.0.0", "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.0.0", + "wgpu", +] + [[package]] name = "iced_graphics" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "bitflags 2.6.0", "bytemuck", "cosmic-text", - "glam", "half", "iced_core", "iced_futures", @@ -2755,16 +2720,15 @@ dependencies = [ "lyon_path", "once_cell", "raw-window-handle", - "rustc-hash", + "rustc-hash 2.0.0", "thiserror", "unicode-segmentation", - "xxhash-rust", ] [[package]] name = "iced_renderer" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -2775,67 +2739,60 @@ dependencies = [ [[package]] name = "iced_runtime" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ + "bytes", "dnd", "iced_core", "iced_futures", + "raw-window-handle", "thiserror", "window_clipboard", ] -[[package]] -name = "iced_style" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" -dependencies = [ - "iced_core", - "once_cell", - "palette", -] - [[package]] name = "iced_tiny_skia" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "bytemuck", "cosmic-text", "iced_graphics", - "kurbo", + "kurbo 0.10.4", "log", "resvg", - "rustc-hash", + "rustc-hash 2.0.0", "softbuffer", "tiny-skia", - "xxhash-rust", ] [[package]] name = "iced_wgpu" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "as-raw-xcb-connection", "bitflags 2.6.0", "bytemuck", "futures", "glam", - "glyphon", "guillotiere", + "iced_glyphon", "iced_graphics", "log", "lyon", "once_cell", "raw-window-handle", "resvg", + "rustc-hash 2.0.0", "rustix 0.38.37", - "smithay-client-toolkit 0.19.2", + "smithay-client-toolkit", + "thiserror", "tiny-xlib", "wayland-backend", "wayland-client", - "wayland-protocols 0.32.4", + "wayland-protocols", "wayland-sys", "wgpu", "x11rb", @@ -2843,15 +2800,16 @@ dependencies = [ [[package]] name = "iced_widget" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "dnd", "iced_renderer", "iced_runtime", - "iced_style", "num-traits", + "once_cell", "ouroboros", + "rustc-hash 2.0.0", "thiserror", "unicode-segmentation", "window_clipboard", @@ -2859,43 +2817,24 @@ dependencies = [ [[package]] name = "iced_winit" -version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +version = "0.14.0-dev" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "dnd", + "iced_futures", "iced_graphics", "iced_runtime", - "iced_style", "log", + "rustc-hash 2.0.0", "thiserror", "tracing", + "wasm-bindgen-futures", "web-sys", "winapi", "window_clipboard", "winit", ] -[[package]] -name = "icrate" -version = "0.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d3aaff8a54577104bafdf686ff18565c3b6903ca5782a2026ef06e2c7aa319" -dependencies = [ - "block2 0.3.0", - "dispatch", - "objc2 0.4.1", -] - -[[package]] -name = "icrate" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb69199826926eb864697bddd27f73d9fddcffc004f5733131e15b465e30642" -dependencies = [ - "block2 0.4.0", - "objc2 0.5.2", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -2922,7 +2861,7 @@ dependencies = [ "byteorder", "color_quant", "exr", - "gif 0.13.1", + "gif", "jpeg-decoder", "num-traits", "png", @@ -2936,6 +2875,15 @@ version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "029d73f573d8e8d63e6d5020011d3255b28c3ba85d6cf870a07184ed23de9284" +[[package]] +name = "immutable-chunkmap" +version = "2.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f97096f508d54f8f8ab8957862eee2ccd628847b6217af1a335e1c44dee578" +dependencies = [ + "arrayvec", +] + [[package]] name = "include_dir" version = "0.7.4" @@ -3055,6 +3003,15 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -3126,7 +3083,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" dependencies = [ "libc", - "libloading 0.8.5", + "libloading", "pkg-config", ] @@ -3167,11 +3124,22 @@ dependencies = [ [[package]] name = "kurbo" -version = "0.9.5" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1618d4ebd923e97d67e7cd363d80aef35fe961005cbbbb3d2dad8bdd1bc63440" +dependencies = [ + "arrayvec", + "smallvec", +] + +[[package]] +name = "kurbo" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd85a5776cd9500c2e2059c8c76c3b01528566b7fcbaf8098b55a33fc298849b" +checksum = "89234b2cc610a7dd927ebde6b41dd1a5d4214cffaef4cf1fb2195d592f92518f" dependencies = [ "arrayvec", + "smallvec", ] [[package]] @@ -3191,14 +3159,14 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8" [[package]] name = "libc" -version = "0.2.159" +version = "0.2.161" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" [[package]] name = "libcosmic" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#2006d138eb87d080b6c9886ef9aa8079ff533688" +source = "git+https://github.com/pop-os/libcosmic?rev=953685a88267894ea3fa40f2b99139c3c4e784d6#953685a88267894ea3fa40f2b99139c3c4e784d6" dependencies = [ "apply", "ashpd 0.9.2", @@ -3215,7 +3183,6 @@ dependencies = [ "iced_futures", "iced_renderer", "iced_runtime", - "iced_style", "iced_tiny_skia", "iced_wgpu", "iced_widget", @@ -3235,16 +3202,6 @@ dependencies = [ "zbus 4.4.0", ] -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - [[package]] name = "libloading" version = "0.8.5" @@ -3261,17 +3218,6 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" -[[package]] -name = "libredox" -version = "0.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" -dependencies = [ - "bitflags 2.6.0", - "libc", - "redox_syscall 0.4.1", -] - [[package]] name = "libredox" version = "0.1.3" @@ -3312,6 +3258,12 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a385b1be4e5c3e362ad2ffa73c392e53f031eaa5b7d648e64cd87f27f6063d7" +[[package]] +name = "litrs" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" + [[package]] name = "locale_config" version = "0.3.0" @@ -3346,9 +3298,6 @@ name = "lru" version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" -dependencies = [ - "hashbrown 0.15.0", -] [[package]] name = "lyon" @@ -3372,9 +3321,9 @@ dependencies = [ [[package]] name = "lyon_geom" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edecfb8d234a2b0be031ab02ebcdd9f3b9ee418fb35e265f7a540a48d197bff9" +checksum = "8af69edc087272df438b3ee436c4bb6d7c04aa8af665cfd398feae627dbd8570" dependencies = [ "arrayvec", "euclid", @@ -3383,9 +3332,9 @@ dependencies = [ [[package]] name = "lyon_path" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c08a606c7a59638d6c6aa18ac91a06aa9fb5f765a7efb27e6a4da58700740d7" +checksum = "8e0b8aec2f58586f6eef237985b9a9b7cb3a3aff4417c575075cf95bf925252e" dependencies = [ "lyon_geom", "num-traits", @@ -3465,9 +3414,9 @@ dependencies = [ [[package]] name = "metal" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25" +checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21" dependencies = [ "bitflags 2.6.0", "block", @@ -3481,7 +3430,7 @@ dependencies = [ [[package]] name = "mime" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-8#7c59b07b9172d8e0401f7e06609e1050575309c9" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265" dependencies = [ "smithay-clipboard", ] @@ -3549,18 +3498,19 @@ checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b" [[package]] name = "naga" -version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109" +version = "22.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bd5a652b6faf21496f2cfd88fc49989c8db0825d1f6746b1a71a6ede24a63ad" dependencies = [ "arrayvec", "bit-set", "bitflags 2.6.0", + "cfg_aliases 0.1.1", "codespan-reporting", "hexf-parse", "indexmap", "log", - "num-traits", - "rustc-hash", + "rustc-hash 1.1.0", "spirv", "termcolor", "thiserror", @@ -3586,14 +3536,14 @@ dependencies = [ [[package]] name = "ndk" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7" +checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" dependencies = [ "bitflags 2.6.0", "jni-sys", "log", - "ndk-sys", + "ndk-sys 0.6.0+11769913", "num_enum", "raw-window-handle", "thiserror", @@ -3614,6 +3564,15 @@ dependencies = [ "jni-sys", ] +[[package]] +name = "ndk-sys" +version = "0.6.0+11769913" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" +dependencies = [ + "jni-sys", +] + [[package]] name = "nix" version = "0.26.4" @@ -3793,7 +3752,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -3812,7 +3771,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" dependencies = [ "malloc_buf", - "objc_exception", ] [[package]] @@ -3834,29 +3792,89 @@ checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" [[package]] name = "objc2" -version = "0.4.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "559c5a40fdd30eb5e344fbceacf7595a81e242529fb4e21cf5f43fb4f11ff98d" +checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" dependencies = [ "objc-sys", - "objc2-encode 3.0.0", + "objc2-encode", ] [[package]] -name = "objc2" -version = "0.5.2" +name = "objc2-app-kit" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" +checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" dependencies = [ - "objc-sys", - "objc2-encode 4.0.3", + "bitflags 2.6.0", + "block2", + "libc", + "objc2", + "objc2-core-data", + "objc2-core-image", + "objc2-foundation", + "objc2-quartz-core", ] [[package]] -name = "objc2-encode" -version = "3.0.0" +name = "objc2-cloud-kit" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666" +checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-core-location", + "objc2-foundation", +] + +[[package]] +name = "objc2-contacts" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5ff520e9c33812fd374d8deecef01d4a840e7b41862d849513de77e44aa4889" +dependencies = [ + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-data" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-image" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80" +dependencies = [ + "block2", + "objc2", + "objc2-foundation", + "objc2-metal", +] + +[[package]] +name = "objc2-core-location" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "000cfee34e683244f284252ee206a27953279d370e309649dc3ee317b37e5781" +dependencies = [ + "block2", + "objc2", + "objc2-contacts", + "objc2-foundation", +] [[package]] name = "objc2-encode" @@ -3865,12 +3883,108 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8" [[package]] -name = "objc_exception" -version = "0.1.2" +name = "objc2-foundation" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" +checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" dependencies = [ - "cc", + "bitflags 2.6.0", + "block2", + "dispatch", + "libc", + "objc2", +] + +[[package]] +name = "objc2-link-presentation" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a1ae721c5e35be65f01a03b6d2ac13a54cb4fa70d8a5da293d7b0020261398" +dependencies = [ + "block2", + "objc2", + "objc2-app-kit", + "objc2-foundation", +] + +[[package]] +name = "objc2-metal" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-quartz-core" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-foundation", + "objc2-metal", +] + +[[package]] +name = "objc2-symbols" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a684efe3dec1b305badae1a28f6555f6ddd3bb2c2267896782858d5a78404dc" +dependencies = [ + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-ui-kit" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-cloud-kit", + "objc2-core-data", + "objc2-core-image", + "objc2-core-location", + "objc2-foundation", + "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", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-user-notifications" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" +dependencies = [ + "bitflags 2.6.0", + "block2", + "objc2", + "objc2-core-location", + "objc2-foundation", ] [[package]] @@ -3910,9 +4024,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.67" +version = "0.10.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b8cefcf97f41316955f9294cd61f639bdcfa9f2f230faac6cb896aa8ab64704" +checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" dependencies = [ "bitflags 2.6.0", "cfg-if", @@ -3931,7 +4045,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -3960,11 +4074,11 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "orbclient" -version = "0.3.47" +version = "0.3.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52f0d54bde9774d3a51dcf281a5def240c71996bc6ca05d2c847ec8b2b216166" +checksum = "ba0b26cec2e24f08ed8bb31519a9333140a6599b867dac464bb150bdb796fd43" dependencies = [ - "libredox 0.0.2", + "libredox", ] [[package]] @@ -3989,9 +4103,9 @@ dependencies = [ [[package]] name = "ouroboros" -version = "0.17.2" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2ba07320d39dfea882faa70554b4bd342a5f273ed59ba7c1c6b4c840492c954" +checksum = "944fa20996a25aded6b4795c6d63f10014a7a83f8be9828a11860b08c5fc4a67" dependencies = [ "aliasable", "ouroboros_macro", @@ -4000,15 +4114,16 @@ dependencies = [ [[package]] name = "ouroboros_macro" -version = "0.17.2" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec4c6225c69b4ca778c0aea097321a64c421cf4577b331c61b229267edabb6f8" +checksum = "39b0deead1528fd0e5947a8546a9642a9777c25f6e1e26f34c97b204bbb465bd" dependencies = [ "heck 0.4.1", - "proc-macro-error", + "itertools", "proc-macro2", + "proc-macro2-diagnostics", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -4042,7 +4157,7 @@ dependencies = [ "by_address", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -4156,7 +4271,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -4165,7 +4280,7 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" dependencies = [ - "siphasher", + "siphasher 0.3.11", ] [[package]] @@ -4174,11 +4289,31 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" +[[package]] +name = "pin-project" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", +] + [[package]] name = "pin-project-lite" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" [[package]] name = "pin-utils" @@ -4315,38 +4450,49 @@ dependencies = [ ] [[package]] -name = "proc-macro-error" -version = "1.0.4" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", - "version_check", ] [[package]] -name = "proc-macro-error-attr" -version = "1.0.4" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ + "proc-macro-error-attr2", "proc-macro2", "quote", - "version_check", + "syn 2.0.85", ] [[package]] name = "proc-macro2" -version = "1.0.88" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" +checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" dependencies = [ "unicode-ident", ] +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", + "version_check", + "yansi", +] + [[package]] name = "profiling" version = "1.0.16" @@ -4448,17 +4594,11 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "rctree" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f" - [[package]] name = "read-fonts" -version = "0.22.3" +version = "0.22.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb94d9ac780fdcf9b6b252253f7d8f221379b84bd3573131139b383df69f85e1" +checksum = "4a04b892cb6f91951f144c33321843790c8574c825aafdb16d815fd7183b5229" dependencies = [ "bytemuck", "font-types", @@ -4473,15 +4613,6 @@ dependencies = [ "bitflags 1.3.2", ] -[[package]] -name = "redox_syscall" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "redox_syscall" version = "0.4.1" @@ -4507,15 +4638,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", - "libredox 0.1.3", + "libredox", "thiserror", ] [[package]] name = "regex" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ "aho-corasick", "memchr", @@ -4591,15 +4722,14 @@ dependencies = [ [[package]] name = "resvg" -version = "0.37.0" +version = "0.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cadccb3d99a9efb8e5e00c16fbb732cbe400db2ec7fc004697ee7d97d86cf1f4" +checksum = "944d052815156ac8fa77eaac055220e95ba0b01fa8887108ca710c03805d9051" dependencies = [ - "gif 0.12.0", + "gif", "jpeg-decoder", "log", "pico-args", - "png", "rgb", "svgtypes", "tiny-skia", @@ -4665,12 +4795,6 @@ dependencies = [ "serde_derive", ] -[[package]] -name = "roxmltree" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f" - [[package]] name = "roxmltree" version = "0.20.0" @@ -4717,7 +4841,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.79", + "syn 2.0.85", "walkdir", ] @@ -4753,6 +4877,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hash" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" + [[package]] name = "rustix" version = "0.37.27" @@ -4825,22 +4955,6 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" -[[package]] -name = "rustybuzz" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0ae5692c5beaad6a9e22830deeed7874eae8a4e3ba4076fb48e12c56856222c" -dependencies = [ - "bitflags 2.6.0", - "bytemuck", - "smallvec", - "ttf-parser 0.20.0", - "unicode-bidi-mirroring 0.1.0", - "unicode-ccc 0.1.2", - "unicode-properties", - "unicode-script", -] - [[package]] name = "rustybuzz" version = "0.14.1" @@ -4852,8 +4966,8 @@ dependencies = [ "libm", "smallvec", "ttf-parser 0.21.1", - "unicode-bidi-mirroring 0.2.0", - "unicode-ccc 0.2.0", + "unicode-bidi-mirroring", + "unicode-ccc", "unicode-properties", "unicode-script", ] @@ -4896,14 +5010,14 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sctk-adwaita" -version = "0.8.3" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70b31447ca297092c5a9916fc3b955203157b37c19ca8edde4f52e9843e602c7" +checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec" dependencies = [ "ab_glyph", "log", "memmap2 0.9.5", - "smithay-client-toolkit 0.18.1", + "smithay-client-toolkit", "tiny-skia", ] @@ -4947,29 +5061,29 @@ checksum = "d369a96f978623eb3dc28807c4852d6cc617fed53da5d3c400feff1ef34a714a" [[package]] name = "serde" -version = "1.0.210" +version = "1.0.213" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +checksum = "3ea7893ff5e2466df8d720bb615088341b295f849602c6956047f8f80f0e9bc1" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.210" +version = "1.0.213" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +checksum = "7e85ad2009c50b58e87caa8cd6dac16bdf511bbfb7af6c33df902396aa480fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] name = "serde_json" -version = "1.0.128" +version = "1.0.132" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" dependencies = [ "indexmap", "itoa", @@ -4986,7 +5100,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -5069,6 +5183,12 @@ version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" +[[package]] +name = "siphasher" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" + [[package]] name = "skrifa" version = "0.22.3" @@ -5106,31 +5226,6 @@ dependencies = [ "serde", ] -[[package]] -name = "smithay-client-toolkit" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a" -dependencies = [ - "bitflags 2.6.0", - "calloop 0.12.4", - "calloop-wayland-source 0.2.0", - "cursor-icon", - "libc", - "log", - "memmap2 0.9.5", - "rustix 0.38.37", - "thiserror", - "wayland-backend", - "wayland-client", - "wayland-csd-frame", - "wayland-cursor", - "wayland-protocols 0.31.2", - "wayland-protocols-wlr 0.2.0", - "wayland-scanner", - "xkeysym", -] - [[package]] name = "smithay-client-toolkit" version = "0.19.2" @@ -5139,8 +5234,8 @@ checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" dependencies = [ "bitflags 2.6.0", "bytemuck", - "calloop 0.13.0", - "calloop-wayland-source 0.3.0", + "calloop", + "calloop-wayland-source", "cursor-icon", "libc", "log", @@ -5152,8 +5247,8 @@ dependencies = [ "wayland-client", "wayland-csd-frame", "wayland-cursor", - "wayland-protocols 0.32.4", - "wayland-protocols-wlr 0.3.4", + "wayland-protocols", + "wayland-protocols-wlr", "wayland-scanner", "xkbcommon", "xkeysym", @@ -5166,7 +5261,7 @@ source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-dnd-5#5a3007de dependencies = [ "libc", "raw-window-handle", - "smithay-client-toolkit 0.19.2", + "smithay-client-toolkit", "wayland-backend", ] @@ -5330,7 +5425,7 @@ dependencies = [ "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -5353,7 +5448,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.79", + "syn 2.0.85", "tempfile", "tokio", "url", @@ -5511,12 +5606,12 @@ checksum = "20e16a0f46cf5fd675563ef54f26e83e20f2366bcf027bcb3cc3ed2b98aaf2ca" [[package]] name = "svgtypes" -version = "0.13.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e44e288cd960318917cbd540340968b90becc8bc81f171345d706e7a89d9d70" +checksum = "794de53cc48eaabeed0ab6a3404a65f40b3e38c067e4435883a65d2aa4ca000e" dependencies = [ - "kurbo", - "siphasher", + "kurbo 0.11.1", + "siphasher 1.0.1", ] [[package]] @@ -5543,9 +5638,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.79" +version = "2.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +checksum = "5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56" dependencies = [ "proc-macro2", "quote", @@ -5626,22 +5721,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.64" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -5731,7 +5826,7 @@ checksum = "1d52f22673960ad13af14ff4025997312def1223bfa7c8e4949d099e6b3d5d1c" dependencies = [ "as-raw-xcb-connection", "ctor-lite", - "libloading 0.8.5", + "libloading", "pkg-config", "tracing", ] @@ -5762,9 +5857,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.40.0" +version = "1.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" +checksum = "145f3413504347a2be84393cc8a7d2fb4d863b375909ea59f2158261aa258bbb" dependencies = [ "backtrace", "bytes", @@ -5787,7 +5882,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -5898,7 +5993,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -5940,7 +6035,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "deb68604048ff8fa93347f02441e4487594adc20bb8a084f9e564d2b827a0a9f" dependencies = [ - "rustc-hash", + "rustc-hash 1.1.0", ] [[package]] @@ -5985,24 +6080,12 @@ version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" -[[package]] -name = "unicode-bidi-mirroring" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56d12260fb92d52f9008be7e4bca09f584780eb2266dc8fecc6a192bec561694" - [[package]] name = "unicode-bidi-mirroring" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86" -[[package]] -name = "unicode-ccc" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2520efa644f8268dce4dcd3050eaa7fc044fca03961e9998ac7e2e92b77cf1" - [[package]] name = "unicode-ccc" version = "0.2.0" @@ -6098,9 +6181,9 @@ checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" [[package]] name = "ustr" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e904a2279a4a36d2356425bb20be271029cc650c335bc82af8bfae30085a3d0" +checksum = "18b19e258aa08450f93369cf56dd78063586adf19e92a75b338a800f799a0208" dependencies = [ "ahash", "byteorder", @@ -6111,63 +6194,29 @@ dependencies = [ [[package]] name = "usvg" -version = "0.37.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b0a51b72ab80ca511d126b77feeeb4fb1e972764653e61feac30adc161a756" -dependencies = [ - "base64 0.21.7", - "log", - "pico-args", - "usvg-parser", - "usvg-text-layout", - "usvg-tree", - "xmlwriter", -] - -[[package]] -name = "usvg-parser" -version = "0.37.0" +version = "0.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd4e3c291f45d152929a31f0f6c819245e2921bfd01e7bd91201a9af39a2bdc" +checksum = "b84ea542ae85c715f07b082438a4231c3760539d902e11d093847a0b22963032" dependencies = [ + "base64 0.22.1", "data-url", "flate2", + "fontdb 0.18.0", "imagesize", - "kurbo", + "kurbo 0.11.1", "log", - "roxmltree 0.19.0", + "pico-args", + "roxmltree", + "rustybuzz", "simplecss", - "siphasher", + "siphasher 1.0.1", + "strict-num", "svgtypes", - "usvg-tree", -] - -[[package]] -name = "usvg-text-layout" -version = "0.37.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d383a3965de199d7f96d4e11a44dd859f46e86de7f3dca9a39bf82605da0a37c" -dependencies = [ - "fontdb", - "kurbo", - "log", - "rustybuzz 0.12.1", + "tiny-skia-path", "unicode-bidi", "unicode-script", "unicode-vo", - "usvg-tree", -] - -[[package]] -name = "usvg-tree" -version = "0.37.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ee3d202ebdb97a6215604b8f5b4d6ef9024efd623cf2e373a6416ba976ec7d3" -dependencies = [ - "rctree", - "strict-num", - "svgtypes", - "tiny-skia-path", + "xmlwriter", ] [[package]] @@ -6259,7 +6308,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", "wasm-bindgen-shared", ] @@ -6293,7 +6342,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6335,9 +6384,9 @@ dependencies = [ [[package]] name = "wayland-client" -version = "0.31.6" +version = "0.31.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3f45d1222915ef1fd2057220c1d9d9624b7654443ea35c3877f7a52bd0a5a2d" +checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280" dependencies = [ "bitflags 2.6.0", "rustix 0.38.37", @@ -6358,9 +6407,9 @@ dependencies = [ [[package]] name = "wayland-cursor" -version = "0.31.6" +version = "0.31.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a94697e66e76c85923b0d28a0c251e8f0666f58fc47d316c0f4da6da75d37cb" +checksum = "32b08bc3aafdb0035e7fe0fdf17ba0c09c268732707dca4ae098f60cb28c9e4c" dependencies = [ "rustix 0.38.37", "wayland-client", @@ -6369,21 +6418,9 @@ dependencies = [ [[package]] name = "wayland-protocols" -version = "0.31.2" +version = "0.32.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4" -dependencies = [ - "bitflags 2.6.0", - "wayland-backend", - "wayland-client", - "wayland-scanner", -] - -[[package]] -name = "wayland-protocols" -version = "0.32.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b5755d77ae9040bb872a25026555ce4cb0ae75fd923e90d25fba07d81057de0" +checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e" dependencies = [ "bitflags 2.6.0", "wayland-backend", @@ -6393,40 +6430,27 @@ dependencies = [ [[package]] name = "wayland-protocols-plasma" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479" -dependencies = [ - "bitflags 2.6.0", - "wayland-backend", - "wayland-client", - "wayland-protocols 0.31.2", - "wayland-scanner", -] - -[[package]] -name = "wayland-protocols-wlr" -version = "0.2.0" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6" +checksum = "9b31cab548ee68c7eb155517f2212049dc151f7cd7910c2b66abfd31c3ee12bd" dependencies = [ "bitflags 2.6.0", "wayland-backend", "wayland-client", - "wayland-protocols 0.31.2", + "wayland-protocols", "wayland-scanner", ] [[package]] name = "wayland-protocols-wlr" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dad87b5fd1b1d3ca2f792df8f686a2a11e3fe1077b71096f7a175ab699f89109" +checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022" dependencies = [ "bitflags 2.6.0", "wayland-backend", "wayland-client", - "wayland-protocols 0.32.4", + "wayland-protocols", "wayland-scanner", ] @@ -6465,9 +6489,9 @@ dependencies = [ [[package]] name = "web-time" -version = "0.2.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" dependencies = [ "js-sys", "wasm-bindgen", @@ -6481,12 +6505,13 @@ checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" [[package]] name = "wgpu" -version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109" +version = "22.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1d1c4ba43f80542cf63a0a6ed3134629ae73e8ab51e4b765a67f3aa062eb433" dependencies = [ "arrayvec", - "cfg-if", "cfg_aliases 0.1.1", + "document-features", "js-sys", "log", "naga", @@ -6505,14 +6530,15 @@ dependencies = [ [[package]] name = "wgpu-core" -version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109" +version = "22.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0348c840d1051b8e86c3bcd31206080c5e71e5933dabd79be1ce732b0b2f089a" dependencies = [ "arrayvec", "bit-vec", "bitflags 2.6.0", "cfg_aliases 0.1.1", - "codespan-reporting", + "document-features", "indexmap", "log", "naga", @@ -6520,18 +6546,18 @@ dependencies = [ "parking_lot 0.12.3", "profiling", "raw-window-handle", - "rustc-hash", + "rustc-hash 1.1.0", "smallvec", "thiserror", - "web-sys", "wgpu-hal", "wgpu-types", ] [[package]] name = "wgpu-hal" -version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6bbf4b4de8b2a83c0401d9e5ae0080a2792055f25859a02bf9be97952bbed4f" dependencies = [ "android_system_properties", "arrayvec", @@ -6551,10 +6577,11 @@ dependencies = [ "js-sys", "khronos-egl", "libc", - "libloading 0.8.5", + "libloading", "log", "metal", "naga", + "ndk-sys 0.5.0+25.2.9519653", "objc", "once_cell", "parking_lot 0.12.3", @@ -6562,7 +6589,7 @@ dependencies = [ "range-alloc", "raw-window-handle", "renderdoc-sys", - "rustc-hash", + "rustc-hash 1.1.0", "smallvec", "thiserror", "wasm-bindgen", @@ -6573,8 +6600,9 @@ dependencies = [ [[package]] name = "wgpu-types" -version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109" +version = "22.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9d91f0e2c4b51434dfa6db77846f2793149d8e73f800fa2e41f52b8eac3c5d" dependencies = [ "bitflags 2.6.0", "js-sys", @@ -6631,7 +6659,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "window_clipboard" version = "0.4.1" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-8#7c59b07b9172d8e0401f7e06609e1050575309c9" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265" dependencies = [ "clipboard-win", "clipboard_macos", @@ -6645,22 +6673,23 @@ dependencies = [ [[package]] name = "windows" -version = "0.48.0" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" dependencies = [ - "windows-implement", - "windows-interface", - "windows-targets 0.48.5", + "windows-core 0.52.0", + "windows-targets 0.52.6", ] [[package]] name = "windows" -version = "0.52.0" +version = "0.54.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49" dependencies = [ - "windows-core", + "windows-core 0.54.0", + "windows-implement", + "windows-interface", "windows-targets 0.52.6", ] @@ -6673,26 +6702,36 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-core" +version = "0.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65" +dependencies = [ + "windows-result 0.1.2", + "windows-targets 0.52.6", +] + [[package]] name = "windows-implement" -version = "0.48.0" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e2ee588991b9e7e6c8338edf3333fbe4da35dc72092643958ebb43f0ab2c49c" +checksum = "942ac266be9249c84ca862f0a164a39533dc2f6f33dc98ec89c8da99b82ea0bd" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.85", ] [[package]] name = "windows-interface" -version = "0.48.0" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6fb8df20c9bcaa8ad6ab513f7b40104840c8867d5751126e4df3b08388d0cc7" +checksum = "da33557140a288fae4e1d5f8873aaf9eb6613a9cf82c3e070223ff177f598b60" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.85", ] [[package]] @@ -6701,11 +6740,20 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" dependencies = [ - "windows-result", + "windows-result 0.2.0", "windows-strings", "windows-targets 0.52.6", ] +[[package]] +name = "windows-result" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +dependencies = [ + "windows-targets 0.52.6", +] + [[package]] name = "windows-result" version = "0.2.0" @@ -6721,7 +6769,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" dependencies = [ - "windows-result", + "windows-result 0.2.0", "windows-targets 0.52.6", ] @@ -6941,46 +6989,50 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winit" -version = "0.29.10" -source = "git+https://github.com/pop-os/winit.git?branch=winit-0.29#bdc66109acc85c912264c9e4b864520345bdb45f" +version = "0.30.5" +source = "git+https://github.com/pop-os/winit.git?tag=iced-xdg-surface-0.13#b1852274c0251d7f24ba2cb32fa53812b37b1c79" dependencies = [ "ahash", "android-activity", "atomic-waker", "bitflags 2.6.0", + "block2", "bytemuck", - "calloop 0.12.4", - "cfg_aliases 0.1.1", + "calloop", + "cfg_aliases 0.2.1", + "concurrent-queue", "core-foundation", "core-graphics", "cursor-icon", - "icrate 0.0.4", + "dpi", "js-sys", "libc", - "log", "memmap2 0.9.5", "ndk", - "ndk-sys", - "objc2 0.4.1", - "once_cell", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "objc2-ui-kit", "orbclient", "percent-encoding", + "pin-project", "raw-window-handle", - "redox_syscall 0.3.5", + "redox_syscall 0.4.1", "rustix 0.38.37", "sctk-adwaita", - "smithay-client-toolkit 0.18.1", + "smithay-client-toolkit", "smol_str", + "tracing", "unicode-segmentation", "wasm-bindgen", "wasm-bindgen-futures", "wayland-backend", "wayland-client", - "wayland-protocols 0.31.2", + "wayland-protocols", "wayland-protocols-plasma", "web-sys", "web-time", - "windows-sys 0.48.0", + "windows-sys 0.52.0", "x11-dl", "x11rb", "xkbcommon-dl", @@ -7024,7 +7076,7 @@ dependencies = [ "as-raw-xcb-connection", "gethostname", "libc", - "libloading 0.8.5", + "libloading", "once_cell", "rustix 0.38.37", "x11rb-protocol", @@ -7104,10 +7156,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9" [[package]] -name = "xxhash-rust" -version = "0.8.12" +name = "yansi" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a5cbf750400958819fb6178eaa83bee5cd9c29a26a40cc241df8c70fdd46984" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] name = "yazi" @@ -7122,15 +7174,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "675d170b632a6ad49804c8cf2105d7c31eddd3312555cffd4b740e08e97c25e6" dependencies = [ "async-broadcast 0.5.1", - "async-executor", - "async-fs 1.6.0", - "async-io 1.13.0", - "async-lock 2.8.0", "async-process 1.8.1", "async-recursion", - "async-task", "async-trait", - "blocking", "byteorder", "derivative", "enumflags2", @@ -7147,6 +7193,7 @@ dependencies = [ "serde_repr", "sha1", "static_assertions", + "tokio", "tracing", "uds_windows", "winapi", @@ -7164,7 +7211,7 @@ checksum = "bb97012beadd29e654708a0fdb4c84bc046f537aecfde2c3ee0a9e4b4d48c725" dependencies = [ "async-broadcast 0.7.1", "async-executor", - "async-fs 2.1.2", + "async-fs", "async-io 2.3.4", "async-lock 3.4.0", "async-process 2.3.0", @@ -7218,7 +7265,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", "zvariant_utils 2.1.0", ] @@ -7268,7 +7315,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] [[package]] @@ -7336,7 +7383,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", "zvariant_utils 2.1.0", ] @@ -7359,5 +7406,5 @@ checksum = "c51bcff7cc3dbb5055396bcf774748c3dab426b4b8659046963523cee4808340" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.85", ] diff --git a/Cargo.toml b/Cargo.toml index da8df7b..4a2093d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,9 +29,11 @@ version = "0.15" features = ["fluent-system", "desktop-requester"] [dependencies.libcosmic] -git = "https://github.com/pop-os/libcosmic.git" +git = "https://github.com/pop-os/libcosmic" default-features = false features = ["dbus-config", "tokio", "winit", "wgpu"] +rev = "953685a88267894ea3fa40f2b99139c3c4e784d6" +version = "0.1.0" [build-dependencies] vergen = { version = "8", features = ["git", "gitcl"] } diff --git a/README.md b/README.md index 50e3d73..7b95f07 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,11 @@ sudo just install ## Roadmap +### Known isuses + +- [Application] After updating to [libcosmic#953685a88267894ea3fa40f2b99139c3c4e784d6](https://github.com/pop-os/libcosmic/tree/953685a88267894ea3fa40f2b99139c3c4e784d6), + application title is not updated until navigrating manually to a page. + ### Future Potential improvements: diff --git a/i18n/en/cosmicding.ftl b/i18n/en/cosmicding.ftl index cf47266..adbd2ee 100644 --- a/i18n/en/cosmicding.ftl +++ b/i18n/en/cosmicding.ftl @@ -7,20 +7,20 @@ add-bookmark = Add Bookmark added-account = Added account {$acc} added-bookmark-to-account = Added bookmark {$bkmrk} to {$acc} api-key = API Key -app-title = cosmicding appearance = Appearance archived = Archived bookmarks = Bookmarks bookmarks-with-count = Bookmarks ({$count}) cancel = Cancel +cosmicding = cosmicding dark = Dark description = Description +disabled-public-sharing = Public bookmarks sharing disabled +disabled-sharing = Bookmarks sharing disabled display-name = Display Name edit = Edit edit-account = Edit Account edit-bookmark = Edit Bookmark -disabled-public-sharing = Public bookmarks sharing disabled -disabled-sharing = Bookmarks sharing disabled enabled-public-sharing = Public bookmarks sharing enabled enabled-sharing = Bookmarks sharing enabled failed-to-find-linkding-api-endpoint = Failed to find linkding API endpoint @@ -42,7 +42,7 @@ quit = Quit refresh = Refresh refresh-bookmarks = Refresh Bookmarks refreshed-all-bookmarks = Refreshed all bookmarks -refreshed-bookmarks-for-account = Refreshed bookmarks for account {$acc} +refreshed-bookmarks-for-account = Refreshed account {$acc} remove = Remove remove-account-confirm = Are you sure you wish to delete this account? remove-bookmark-confirm = Are you sure you wish to delete this bookmark? @@ -59,6 +59,7 @@ tags-helper = Enter any number of tags separated by space. theme = Theme title = Title tls = TLS +token = Token unexpected-http-return-code = Unexpected HTTP return code {$http_rc} unread = Unread updated-account = Updated account {$acc} diff --git a/src/app.rs b/src/app.rs index 7d1166a..9923d63 100644 --- a/src/app.rs +++ b/src/app.rs @@ -10,7 +10,7 @@ use crate::pages::accounts::{add_account, edit_account, AccountsMessage, Account use crate::pages::bookmarks::{ edit_bookmark, new_bookmark, view_notes, BookmarksMessage, BookmarksView, }; -use cosmic::app::{Command, Core}; +use cosmic::app::{Core, Task}; use cosmic::cosmic_config::{self, CosmicConfigEntry, Update}; use cosmic::cosmic_theme::{self, ThemeMode}; use cosmic::iced::{ @@ -127,7 +127,7 @@ impl Application for Cosmicding { type Message = Message; - const APP_ID: &'static str = "com.vkhitrin.cosmicding"; + const APP_ID: &'static str = APPID; fn core(&self) -> &Core { &self.core @@ -137,7 +137,7 @@ impl Application for Cosmicding { &mut self.core } - fn init(core: Core, flags: Self::Flags) -> (Self, Command) { + fn init(core: Core, flags: Self::Flags) -> (Self, Task) { let db = block_on(async { db::SqliteDatabase::create().await.unwrap() }); let mut nav = nav_bar::Model::default(); let app_themes = vec![fl!("match-desktop"), fl!("dark"), fl!("light")]; @@ -187,7 +187,7 @@ impl Application for Cosmicding { app.update(Message::StartupCompleted), ]; - (app, Command::batch(commands)) + (app, Task::batch(commands)) } fn header_start(&self) -> Vec> { @@ -202,14 +202,14 @@ impl Application for Cosmicding { Some(&self.nav) } - fn on_escape(&mut self) -> Command { + fn on_escape(&mut self) -> Task { if self.dialog_pages.pop_front().is_some() { - return Command::none(); + return Task::none(); } self.core.window.show_context = false; - Command::none() + Task::none() } fn context_drawer(&self) -> Option> { @@ -276,7 +276,7 @@ impl Application for Cosmicding { let nav_page = self.nav.data::(entity).unwrap_or_default(); widget::column::with_children(vec![ - (widget::toaster(&self.toasts, widget::horizontal_space(Length::Fill)).into()), + (widget::toaster(&self.toasts, widget::horizontal_space()).into()), nav_page.view(self), ]) .padding([ @@ -287,15 +287,15 @@ impl Application for Cosmicding { ]) .width(Length::Fill) .height(Length::Fill) - .align_items(Alignment::Center) .into() } fn subscription(&self) -> Subscription { struct ConfigSubscription; struct ThemeSubscription; + // FIXME: (vkhitrin) key bindings are not working properly let subscriptions = vec![ - event::listen_with(|event, status| match event { + event::listen_with(|event, status, _| match event { Event::Keyboard(KeyEvent::KeyPressed { key, modifiers, .. }) => match status { event::Status::Ignored => Some(Message::Key(modifiers, key)), event::Status::Captured => None, @@ -340,7 +340,7 @@ impl Application for Cosmicding { Subscription::batch(subscriptions) } - fn update(&mut self, message: Self::Message) -> Command { + fn update(&mut self, message: Self::Message) -> Task { let mut commands = vec![]; macro_rules! config_set { ($name: ident, $value: expr) => { @@ -359,6 +359,7 @@ impl Application for Cosmicding { }; } match message { + #![allow(non_snake_case)] Message::AppTheme(app_theme) => { config_set!(app_theme, app_theme); return self.update_config(); @@ -381,11 +382,7 @@ impl Application for Cosmicding { self.set_context_title(context_page.title()); } - Message::AccountsView(message) => commands.push( - self.accounts_view - .update(message) - .map(cosmic::app::Message::App), - ), + Message::AccountsView(message) => commands.push(self.accounts_view.update(message)), Message::LoadAccounts => { self.accounts_view.accounts = block_on(async { db::SqliteDatabase::fetch_accounts(&mut self.db).await }); @@ -518,18 +515,14 @@ impl Application for Cosmicding { commands.push(self.update(Message::LoadAccounts)); self.core.window.show_context = false; } - Message::BookmarksView(message) => commands.push( - self.bookmarks_view - .update(message) - .map(cosmic::app::Message::App), - ), + Message::BookmarksView(message) => commands.push(self.bookmarks_view.update(message)), Message::StartRefreshBookmarksForAllAccounts => { if !self.bookmarks_view.bookmarks.is_empty() { let message = |x: Vec| { cosmic::app::Message::App(Message::DoneRefreshBookmarksForAllAccounts(x)) }; if !self.accounts_view.accounts.is_empty() { - commands.push(Command::perform( + commands.push(Task::perform( http::fetch_bookmarks_from_all_accounts( self.accounts_view.accounts.clone(), ), @@ -553,15 +546,15 @@ impl Application for Cosmicding { let mut acc_vec = self.accounts_view.accounts.clone(); acc_vec.retain(|acc| acc.id == account.id); let borrowed_acc = acc_vec[0].clone(); - let message = |x: Vec| { + let message = move |x: Vec| { cosmic::app::Message::App(Message::DoneRefreshBookmarksForAccount( - borrowed_acc, + borrowed_acc.clone(), x, )) }; commands.push(self.update(Message::StartRefreshAccountProfile(account.clone()))); if !self.accounts_view.accounts.is_empty() { - commands.push(Command::perform( + commands.push(Task::perform( http::fetch_bookmarks_from_all_accounts(acc_vec.clone()), message, )); @@ -588,16 +581,13 @@ impl Application for Cosmicding { } Message::StartRefreshAccountProfile(account) => { let borrowed_acc = account.clone(); - let message = |r: Option| { + let message = move |r: Option| { cosmic::app::Message::App(Message::DoneRefreshAccountProfile( - borrowed_acc, + borrowed_acc.clone(), r.unwrap(), )) }; - commands.push(Command::perform( - http::fetch_account_details(account), - message, - )); + commands.push(Task::perform(http::fetch_account_details(account), message)); } Message::DoneRefreshAccountProfile(mut account, account_details) => { account.enable_sharing = account_details.enable_sharing; @@ -608,27 +598,30 @@ impl Application for Cosmicding { commands.push(self.update(Message::LoadAccounts)); } Message::AddBookmarkForm => { - self.placeholder_bookmark = Some(Bookmark::new( - None, - None, - "".to_owned(), - "".to_owned(), - "".to_owned(), - "".to_owned(), - "".to_owned(), - "".to_owned(), - "".to_owned(), - "".to_owned(), - "".to_owned(), - false, - false, - false, - Vec::new(), - None, - None, - )); - commands - .push(self.update(Message::ToggleContextPage(ContextPage::NewBookmarkForm))); + if !self.accounts_view.accounts.is_empty() { + self.placeholder_bookmark = Some(Bookmark::new( + None, + None, + "".to_owned(), + "".to_owned(), + "".to_owned(), + "".to_owned(), + "".to_owned(), + "".to_owned(), + "".to_owned(), + "".to_owned(), + "".to_owned(), + false, + false, + false, + Vec::new(), + None, + None, + )); + commands.push( + self.update(Message::ToggleContextPage(ContextPage::NewBookmarkForm)), + ); + } } Message::SetAccountDisplayName(name) => { if let Some(ref mut account_placeholder) = &mut self.placeholder_account { @@ -884,7 +877,7 @@ impl Application for Cosmicding { for account in self.accounts_view.accounts.clone() { commands.push(self.update(Message::StartRefreshAccountProfile(account))); } - commands.push(Command::perform( + commands.push(Task::perform( async { tokio::time::sleep(Duration::from_secs(1)).await; crate::app::Message::StartRefreshBookmarksForAllAccounts @@ -894,15 +887,14 @@ impl Application for Cosmicding { self.startup_completed = true; } Message::EmpptyMessage => { - commands.push(Command::none()); + commands.push(Task::none()); } } - Command::batch(commands) + Task::batch(commands) } - fn on_nav_select(&mut self, id: nav_bar::Id) -> Command { + fn on_nav_select(&mut self, id: nav_bar::Id) -> Task { self.nav.activate(id); - self.update_title() } } @@ -917,7 +909,7 @@ impl Cosmicding { let date = env!("VERGEN_GIT_COMMIT_DATE"); widget::column::with_children(vec![ - widget::text::title3(fl!("app-title")).into(), + widget::text::title3(fl!("cosmicding")).into(), widget::button::link(REPOSITORY) .on_press(Message::OpenExternalUrl(REPOSITORY.to_string())) .padding(spacing.space_none) @@ -934,48 +926,49 @@ impl Cosmicding { .into(), widget::text::caption(format!("v{release}")).into(), ]) - .align_items(Alignment::Center) + .align_x(Alignment::Center) .spacing(spacing.space_xxs) .width(Length::Fill) .into() } fn settings(&self) -> Element { - let app_theme_selected = match self.config.app_theme { - AppTheme::Dark => 1, - AppTheme::Light => 2, - AppTheme::System => 0, - }; - let appearance_section = widget::settings::section().title(fl!("appearance")).add( - widget::settings::item::builder(fl!("theme")).control(widget::dropdown( - &self.app_themes, - Some(app_theme_selected), - move |index| { - Message::AppTheme(match index { - 1 => AppTheme::Dark, - 2 => AppTheme::Light, - _ => AppTheme::System, - }) - }, - )), - ); - - widget::settings::view_column(vec![appearance_section.into()]).into() + widget::settings::view_column(vec![widget::settings::section() + .title(fl!("appearance")) + .add({ + let app_theme_selected = match self.config.app_theme { + AppTheme::Dark => 1, + AppTheme::Light => 2, + AppTheme::System => 0, + }; + widget::settings::item::builder(fl!("theme")).control(widget::dropdown( + &self.app_themes, + Some(app_theme_selected), + move |index| { + Message::AppTheme(match index { + 1 => AppTheme::Dark, + 2 => AppTheme::Light, + _ => AppTheme::System, + }) + }, + )) + }) + .into()]) + .into() } - fn update_config(&mut self) -> Command { + fn update_config(&mut self) -> Task { let theme = self.config.app_theme.theme(); cosmic::app::command::set_theme(theme) } - pub fn update_title(&mut self) -> Command { - let mut window_title = fl!("app-title"); - - if let Some(page) = self.nav.text(self.nav.active()) { - window_title.insert_str(0, " — "); - window_title.insert_str(0, page); - } - + // FIXME: (vkhitrin) title is not set on application startup + // it is updated when navigating between pages. + pub fn update_title(&mut self) -> Task { + let window_title = match self.nav.text(self.nav.active()) { + Some(page) => format!("{page} — {}", fl!("cosmicding")), + _ => fl!("cosmicding"), + }; self.set_window_title(window_title) } } diff --git a/src/pages/accounts.rs b/src/pages/accounts.rs index a9036e3..28b7127 100644 --- a/src/pages/accounts.rs +++ b/src/pages/accounts.rs @@ -4,11 +4,12 @@ use crate::models::account::Account; use cosmic::iced::Length; use cosmic::iced_widget::tooltip; use cosmic::{ + app::command::Task, cosmic_theme, iced::{self, Alignment}, theme, widget::{self}, - Apply, Command, Element, + Apply, Element, }; use iced::alignment::{Horizontal, Vertical}; @@ -46,13 +47,12 @@ impl AccountsView { .size(64) .into(), widget::text::title3(fl!("no-accounts")).into(), - widget::button::text(fl!("add-account")) - .style(widget::button::Style::Standard) + widget::button::standard(fl!("add-account")) .on_press(AccountsMessage::AddAccount) .into(), ]) .spacing(20) - .align_items(Alignment::Center), + .align_x(Alignment::Center), ) .align_y(Vertical::Center) .align_x(Horizontal::Center) @@ -75,7 +75,7 @@ impl AccountsView { widget::row::with_capacity(1) .spacing(spacing.space_xxs) .push(widget::text(item.display_name.clone())) - .push(widget::horizontal_space(Length::Fill)) + .push(widget::horizontal_space()) .push( widget::button::link(item.instance.clone()) .on_press(AccountsMessage::OpenExternalURL(item.instance.clone())), @@ -86,7 +86,7 @@ impl AccountsView { spacing.space_xxs, spacing.space_xxxs, ]) - .align_items(Alignment::Center) + .align_y(Alignment::Center) .into(), ); // Mandatory third row - actions @@ -129,7 +129,7 @@ impl AccountsView { widget::container( widget::column::with_children(vec![widget::row::with_capacity(2) - .align_items(Alignment::Center) + .align_y(Alignment::Center) .push(widget::text::title3(fl!( "accounts-with-count", count = self.accounts.len() @@ -141,11 +141,10 @@ impl AccountsView { spacing.space_s, spacing.space_none, ]) - .push(widget::horizontal_space(Length::Fill)) + .push(widget::horizontal_space()) .push( - widget::button::text(fl!("add-account")) - .on_press(AccountsMessage::AddAccount) - .style(theme::Button::Standard), + widget::button::standard(fl!("add-account")) + .on_press(AccountsMessage::AddAccount), ) .width(Length::Fill) .apply(widget::container) @@ -155,35 +154,39 @@ impl AccountsView { .into() } } - pub fn update(&mut self, message: AccountsMessage) -> Command { + pub fn update(&mut self, message: AccountsMessage) -> Task { let mut commands = Vec::new(); match message { AccountsMessage::AddAccount => { - commands.push(Command::perform(async {}, |_| Message::AddAccount)); + commands.push(Task::perform(async {}, |_| { + cosmic::app::Message::App(Message::AddAccount) + })); } AccountsMessage::EditAccount(account) => { self.account_placeholder = Some(account.clone()); - commands.push(Command::perform(async {}, move |_| { - Message::EditAccount(account) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::EditAccount(account.to_owned())) })); } AccountsMessage::DeleteAccount(account) => { - commands.push(Command::perform(async {}, move |_| { - Message::OpenRemoveAccountDialog(account) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::OpenRemoveAccountDialog(account.to_owned())) })); } AccountsMessage::RefreshBookmarksForAccount(account) => { - commands.push(Command::perform(async {}, move |_| { - Message::StartRefreshBookmarksForAccount(account) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::StartRefreshBookmarksForAccount( + account.to_owned(), + )) })); } AccountsMessage::OpenExternalURL(url) => { - commands.push(Command::perform(async {}, |_| { - Message::OpenExternalUrl(url) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::OpenExternalUrl(url.to_owned())) })); } } - Command::batch(commands) + Task::batch(commands) } } @@ -196,14 +199,13 @@ pub fn add_account<'a>(account: Account) -> Element<'a, Message> { let instance_widget_text_input = widget::text_input("Instance", account.instance.clone()) .on_input(Message::SetAccountInstance); let api_key_widget_title = widget::text::body(fl!("api-key")); - let api_key_widget_text_input = - widget::secure_input("Token", account.api_token.clone(), None, true) - .on_input(Message::SetAccountAPIKey); - let tls_widget_checkbox = widget::checkbox(fl!("tls"), account.tls, Message::SetAccountTLS); + let api_key_widget_text_input = widget::text_input(fl!("token"), account.api_token.clone()) + .on_input(Message::SetAccountAPIKey) + .password(); + let tls_widget_checkbox = + widget::checkbox(fl!("tls"), account.tls).on_toggle(Message::SetAccountTLS); let buttons_widget_container = widget::container( - widget::button::text(fl!("save")) - .style(widget::button::Style::Standard) - .on_press(Message::CompleteAddAccount(account)), + widget::button::standard(fl!("save")).on_press(Message::CompleteAddAccount(account)), ) .width(Length::Fill) .align_x(iced::alignment::Horizontal::Center); @@ -216,9 +218,9 @@ pub fn add_account<'a>(account: Account) -> Element<'a, Message> { .push(instance_widget_text_input) .push(api_key_widget_title) .push(api_key_widget_text_input) - .push(widget::vertical_space(Length::from(10))) + .push(widget::Space::new(0, 10)) .push(tls_widget_checkbox) - .push(widget::vertical_space(Length::from(10))) + .push(widget::Space::new(0, 10)) .push(buttons_widget_container) .into() } @@ -233,28 +235,31 @@ pub fn edit_account<'a>(account: Account) -> Element<'a, Message> { let instance_widget_text_input = widget::text_input("Instance", account.instance.clone()) .on_input(Message::SetAccountInstance); let api_key_widget_title = widget::text::body(fl!("api-key")); - let api_key_widget_text_input = - widget::secure_input("Token", account.api_token.clone(), None, true) - .on_input(Message::SetAccountAPIKey); - let tls_widget_checkbox = widget::checkbox(fl!("tls"), account.tls, Message::SetAccountTLS); + let api_key_widget_text_input = widget::text_input(fl!("token"), account.api_token.clone()) + .on_input(Message::SetAccountAPIKey) + .password(); + let tls_widget_checkbox = + widget::checkbox(fl!("tls"), account.tls).on_toggle(Message::SetAccountTLS); let enable_shared_widget_text = if account.enable_sharing { widget::tooltip( widget::row::with_capacity(2) .spacing(spacing.space_xxs) .push(widget::text::body(fl!("enabled-sharing"))) .push(widget::icon::from_name("dialog-information-symbolic").size(18)), - fl!("setting-managed-externally"), - tooltip::Position::Top, + widget::container(widget::text::body(fl!("setting-managed-externally"))), + tooltip::Position::FollowCursor, ) + .padding(10) } else { widget::tooltip( widget::row::with_capacity(2) .spacing(spacing.space_xxs) .push(widget::text::body(fl!("disabled-sharing"))) .push(widget::icon::from_name("dialog-information-symbolic").size(18)), - fl!("setting-managed-externally"), - tooltip::Position::Top, + widget::container(widget::text::body(fl!("setting-managed-externally"))), + tooltip::Position::FollowCursor, ) + .padding(10) }; let enable_public_shared_widget_text = if account.enable_sharing { widget::tooltip( @@ -262,23 +267,23 @@ pub fn edit_account<'a>(account: Account) -> Element<'a, Message> { .spacing(spacing.space_xxs) .push(widget::text::body(fl!("enabled-public-sharing"))) .push(widget::icon::from_name("dialog-information-symbolic").size(18)), - fl!("setting-managed-externally"), - tooltip::Position::Top, + widget::container(widget::text::body(fl!("setting-managed-externally"))), + tooltip::Position::FollowCursor, ) + .padding(10) } else { widget::tooltip( widget::row::with_capacity(2) .spacing(spacing.space_xxs) .push(widget::text::body(fl!("disabled-public-sharing"))) .push(widget::icon::from_name("dialog-information-symbolic").size(18)), - fl!("setting-managed-externally"), - tooltip::Position::Top, + widget::container(widget::text::body(fl!("setting-managed-externally"))), + tooltip::Position::FollowCursor, ) + .padding(10) }; let buttons_widget_container = widget::container( - widget::button::text(fl!("save")) - .style(widget::button::Style::Standard) - .on_press(Message::UpdateAccount(account)), + widget::button::standard(fl!("save")).on_press(Message::UpdateAccount(account)), ) .width(Length::Fill) .align_x(iced::alignment::Horizontal::Center); @@ -291,12 +296,12 @@ pub fn edit_account<'a>(account: Account) -> Element<'a, Message> { .push(instance_widget_text_input) .push(api_key_widget_title) .push(api_key_widget_text_input) - .push(widget::vertical_space(Length::from(10))) + .push(widget::Space::new(0, 10)) .push(tls_widget_checkbox) - .push(widget::vertical_space(Length::from(10))) + .push(widget::Space::new(0, 10)) .push(enable_shared_widget_text) .push(enable_public_shared_widget_text) - .push(widget::vertical_space(Length::from(10))) + .push(widget::Space::new(0, 10)) .push(buttons_widget_container) .into() } diff --git a/src/pages/bookmarks.rs b/src/pages/bookmarks.rs index 31d8f57..7caef95 100644 --- a/src/pages/bookmarks.rs +++ b/src/pages/bookmarks.rs @@ -3,23 +3,22 @@ use crate::fl; use crate::models::account::Account; use crate::models::bookmarks::Bookmark; use cosmic::iced::Length; -use cosmic::{cosmic_theme, theme}; use cosmic::{ + app::command::Task, iced::{self, Alignment}, widget::{self}, - Apply, Command, Element, + Apply, Element, }; +use cosmic::{cosmic_theme, theme}; use iced::alignment::{Horizontal, Vertical}; -use std::borrow::Cow; - #[derive(Debug, Clone)] pub struct BookmarksView { pub accounts: Vec, pub bookmarks: Vec, account_placeholder: Option, bookmark_placeholder: Option, - query_placeholder: Cow<'static, str>, + query_placeholder: String, } #[derive(Debug, Clone)] @@ -43,7 +42,7 @@ impl Default for BookmarksView { bookmarks: Vec::new(), account_placeholder: None, bookmark_placeholder: None, - query_placeholder: Cow::Owned("".to_string()), + query_placeholder: "".to_string(), } } } @@ -58,13 +57,12 @@ impl BookmarksView { .size(64) .into(), widget::text::title3(fl!("no-accounts")).into(), - widget::button::text(fl!("open-accounts-page")) - .style(widget::button::Style::Standard) + widget::button::standard(fl!("open-accounts-page")) .on_press(BookmarksMessage::OpenAccountsPage) .into(), ]) .spacing(20) - .align_items(Alignment::Center), + .align_x(Alignment::Center), ) .align_y(Vertical::Center) .align_x(Horizontal::Center) @@ -158,10 +156,11 @@ impl BookmarksView { } columns.push( actions_row - .push(widget::horizontal_space(Length::Fill)) - .push(widget::text( - "[".to_string() + &derived_account.display_name + "]", - )) + .push(widget::horizontal_space()) + .push(widget::text(format!( + "Account: {}", + derived_account.display_name + ))) .padding([ spacing.space_xxxs, spacing.space_xxs, @@ -186,7 +185,7 @@ impl BookmarksView { widget::container( widget::column::with_children(vec![widget::row::with_capacity(3) - .align_items(Alignment::Center) + .align_y(Alignment::Center) .push(widget::text::title3(fl!( "bookmarks-with-count", count = self.bookmarks.len() @@ -199,27 +198,21 @@ impl BookmarksView { spacing.space_none, ]) .push( - widget::search_input(fl!("search"), self.query_placeholder.as_ref()) + widget::search_input(fl!("search"), self.query_placeholder.clone()) .on_input(BookmarksMessage::SearchBookmarks) .on_clear(BookmarksMessage::ClearSearch), ) .push( - widget::button::text(fl!("refresh")) - .on_press(if !self.query_placeholder.is_empty() { - BookmarksMessage::EmptyMessage - } else { - BookmarksMessage::RefreshBookmarks - }) - .style(if !self.query_placeholder.is_empty() { - theme::Button::MenuItem - } else { - theme::Button::Standard - }), + if !self.query_placeholder.is_empty() || self.bookmarks.is_empty() { + widget::button::standard(fl!("refresh")) + } else { + widget::button::standard(fl!("refresh")) + .on_press(BookmarksMessage::RefreshBookmarks) + }, ) .push( - widget::button::text(fl!("add-bookmark")) - .on_press(BookmarksMessage::AddBookmark) - .style(theme::Button::Standard), + widget::button::standard(fl!("add-bookmark")) + .on_press(BookmarksMessage::AddBookmark), ) .width(Length::Fill) .apply(widget::container) @@ -229,57 +222,71 @@ impl BookmarksView { .into() } } - pub fn update(&mut self, message: BookmarksMessage) -> Command { + pub fn update(&mut self, message: BookmarksMessage) -> Task { let mut commands = Vec::new(); match message { BookmarksMessage::OpenAccountsPage => { - commands.push(Command::perform(async {}, |_| Message::OpenAccountsPage)); + commands.push(Task::perform(async {}, |_| { + cosmic::app::Message::App(Message::OpenAccountsPage) + })); } BookmarksMessage::RefreshBookmarks => { - commands.push(Command::perform(async {}, |_| { - Message::StartRefreshBookmarksForAllAccounts + commands.push(Task::perform(async {}, |_| { + cosmic::app::Message::App(Message::StartRefreshBookmarksForAllAccounts) })); } BookmarksMessage::AddBookmark => { - commands.push(Command::perform(async {}, |_| Message::AddBookmarkForm)); + commands.push(Task::perform(async {}, |_| { + cosmic::app::Message::App(Message::AddBookmarkForm) + })); } BookmarksMessage::DeleteBookmark(account, bookmark) => { - commands.push(Command::perform(async {}, move |_| { - Message::OpenRemoveBookmarkDialog(account, bookmark) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::OpenRemoveBookmarkDialog( + account.to_owned(), + bookmark.to_owned(), + )) })); } BookmarksMessage::EditBookmark(account, bookmark) => { self.account_placeholder = Some(account.clone()); self.bookmark_placeholder = Some(bookmark.clone()); - commands.push(Command::perform(async {}, move |_| { - Message::EditBookmark(account, bookmark) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::EditBookmark( + account.to_owned(), + bookmark.to_owned(), + )) })); } BookmarksMessage::SearchBookmarks(query) => { - self.query_placeholder = Cow::Owned(query.to_string()); - commands.push(Command::perform(async {}, move |_| { - Message::SearchBookmarks(query) + self.query_placeholder = query.clone(); + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::SearchBookmarks(query.to_owned())) })); } BookmarksMessage::ClearSearch => { - self.query_placeholder = Cow::Owned("".to_string()); - commands.push(Command::perform(async {}, |_| Message::LoadBookmarks)); + self.query_placeholder = "".to_string(); + commands.push(Task::perform(async {}, |_| { + cosmic::app::Message::App(Message::LoadBookmarks) + })); } BookmarksMessage::OpenExternalURL(url) => { - commands.push(Command::perform(async {}, |_| { - Message::OpenExternalUrl(url) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::OpenExternalUrl(url.to_owned())) })); } BookmarksMessage::ViewNotes(bookmark) => { - commands.push(Command::perform(async {}, |_| { - Message::ViewBookmarkNotes(bookmark) + commands.push(Task::perform(async {}, move |_| { + cosmic::app::Message::App(Message::ViewBookmarkNotes(bookmark.to_owned())) })); } BookmarksMessage::EmptyMessage => { - commands.push(Command::perform(async {}, |_| Message::EmpptyMessage)); + commands.push(Task::perform(async {}, |_| { + cosmic::app::Message::App(Message::EmpptyMessage) + })); } } - Command::batch(commands) + Task::batch(commands) } } @@ -314,25 +321,20 @@ where let tags_widget_subtext = widget::text::caption(fl!("tags-helper")); let tags_widget_text_input = widget::text_input("Tags", bookmark.tag_names.join(" ").clone()) .on_input(Message::SetBookmarkTags); - let archived_widget_checkbox = widget::checkbox( - fl!("archived"), - bookmark.is_archived, - Message::SetBookmarkArchived, - ); + let archived_widget_checkbox = widget::checkbox(fl!("archived"), bookmark.is_archived) + .on_toggle(Message::SetBookmarkArchived); let unread_widget_checkbox = - widget::checkbox(fl!("unread"), bookmark.unread, Message::SetBookmarkUnread); + widget::checkbox(fl!("unread"), bookmark.unread).on_toggle(Message::SetBookmarkUnread); let shared_widget_checkbox = if accounts[selected_account_index].clone().enable_sharing { - widget::checkbox(fl!("shared"), bookmark.shared, Message::SetBookmarkShared) + widget::checkbox(fl!("shared"), bookmark.shared).on_toggle(Message::SetBookmarkShared) } else { - widget::checkbox(fl!("shared-disabled"), false, |_| Message::EmpptyMessage) + widget::checkbox(fl!("shared-disabled"), false).on_toggle(|_| Message::EmpptyMessage) }; let buttons_widget_container = widget::container( - widget::button::text(fl!("save")) - .style(widget::button::Style::Standard) - .on_press(Message::AddBookmark( - accounts[selected_account_index].clone(), - bookmark, - )), + widget::button::standard(fl!("save")).on_press(Message::AddBookmark( + accounts[selected_account_index].clone(), + bookmark, + )), ) .width(Length::Fill) .align_x(iced::alignment::Horizontal::Center); @@ -352,11 +354,9 @@ where .push(tags_widget_title) .push(tags_widget_subtext) .push(tags_widget_text_input) - .push(widget::vertical_space(Length::from(10))) .push(archived_widget_checkbox) .push(unread_widget_checkbox) .push(shared_widget_checkbox) - .push(widget::vertical_space(Length::from(10))) .push(buttons_widget_container) .into() } @@ -387,21 +387,17 @@ where let tags_widget_subtext = widget::text::caption(fl!("tags-helper")); let tags_widget_text_input = widget::text_input("Tags", bookmark.tag_names.join(" ").clone()) .on_input(Message::SetBookmarkTags); - let archived_widget_checkbox = widget::checkbox( - fl!("archived"), - bookmark.is_archived, - Message::SetBookmarkArchived, - ); + let archived_widget_checkbox = widget::checkbox(fl!("archived"), bookmark.is_archived) + .on_toggle(Message::SetBookmarkArchived); let unread_widget_checkbox = - widget::checkbox(fl!("unread"), bookmark.unread, Message::SetBookmarkUnread); + widget::checkbox(fl!("unread"), bookmark.unread).on_toggle(Message::SetBookmarkUnread); let shared_widget_checkbox = if account.clone().unwrap().enable_sharing { - widget::checkbox(fl!("shared"), bookmark.shared, Message::SetBookmarkShared) + widget::checkbox(fl!("shared"), bookmark.shared).on_toggle(Message::SetBookmarkShared) } else { - widget::checkbox(fl!("shared-disabled"), false, |_| Message::EmpptyMessage) + widget::checkbox(fl!("shared-disabled"), false).on_toggle(|_| Message::EmpptyMessage) }; let buttons_widget_container = widget::container( - widget::button::text(fl!("save")) - .style(widget::button::Style::Standard) + widget::button::standard(fl!("save")) .on_press(Message::UpdateBookmark(account.unwrap(), bookmark)), ) .width(Length::Fill) @@ -420,11 +416,9 @@ where .push(tags_widget_title) .push(tags_widget_subtext) .push(tags_widget_text_input) - .push(widget::vertical_space(Length::from(10))) .push(archived_widget_checkbox) .push(unread_widget_checkbox) .push(shared_widget_checkbox) - .push(widget::vertical_space(Length::from(10))) .push(buttons_widget_container) .into() }