diff --git a/gui/Cargo.lock b/gui/Cargo.lock index 3b6366d6..0ba3aaa9 100644 --- a/gui/Cargo.lock +++ b/gui/Cargo.lock @@ -144,7 +144,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd74315dfee3384712b3f22849db68c6f4e77b86a483c57630abcd05eaba9a62" dependencies = [ "async-trait", - "base64", + "base64 0.13.1", "bitcoin", "futures", "hidapi", @@ -195,6 +195,12 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" + [[package]] name = "base64-compat" version = "1.0.0" @@ -248,7 +254,7 @@ version = "0.29.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0694ea59225b0c5f3cb405ff3f670e4828358ed26aec49dc352f730f0cb1a8a3" dependencies = [ - "base64", + "base64 0.13.1", "bech32", "bitcoin_hashes", "core2", @@ -342,12 +348,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -[[package]] -name = "cfg_aliases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" - [[package]] name = "cgl" version = "0.3.2" @@ -475,6 +475,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" +[[package]] +name = "com-rs" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf43edc576402991846b093a7ca18a3477e0ef9c588cde84964b5d3e43016642" + [[package]] name = "const_panic" version = "0.2.7" @@ -676,9 +682,9 @@ dependencies = [ [[package]] name = "d3d12" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "827914e1f53b1e0e025ecd3d967a7836b7bcb54520f90e21ef8df7b4d88a2759" +checksum = "d8f0de2f5a8e7bd4a9eec0e3c781992a4ce1724f68aec7d7a3715344de8b39da" dependencies = [ "bitflags", "libloading", @@ -722,12 +728,9 @@ dependencies = [ [[package]] name = "data-url" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a30bfce702bcfa94e906ef82421f2c0e61c076ad76030c16ee5d2e9a32fe193" -dependencies = [ - "matches", -] +checksum = "8d7439c3735f405729d52c3fbbe4de140eaf938a1fe47d227c27f8254d4302a5" [[package]] name = "dirs" @@ -968,14 +971,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] -name = "fontdb" -version = "0.6.2" +name = "fontconfig-parser" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d66551cc28351f0bc6a73da86459ee7765caaad03ce284f2dc36472dbf539cd" +checksum = "4ab2e12762761366dcb876ab8b6e0cfa4797ddcd890575919f008b5ba655672a" dependencies = [ + "roxmltree", +] + +[[package]] +name = "fontdb" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff20bef7942a72af07104346154a70a70b089c572e454b41bef6eb6cb10e9c06" +dependencies = [ + "fontconfig-parser", "log", - "memmap2 0.3.1", - "ttf-parser 0.12.3", + "memmap2", + "ttf-parser", ] [[package]] @@ -1209,6 +1222,18 @@ dependencies = [ "web-sys", ] +[[package]] +name = "glow" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e007a07a24de5ecae94160f141029e9a347282cfe25d1d58d85d845cf3130f1" +dependencies = [ + "js-sys", + "slotmap", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "glow_glyph" version = "0.5.1" @@ -1216,7 +1241,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f4e62c64947b9a24fe20e2bba9ad819ecb506ef5c8df7ffc4737464c6df9510" dependencies = [ "bytemuck", - "glow", + "glow 0.11.2", "glyph_brush", "log", ] @@ -1343,6 +1368,19 @@ dependencies = [ "bitflags", ] +[[package]] +name = "gpu-allocator" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce95f9e2e11c2c6fadfce42b5af60005db06576f231f5c92550fdded43c423e8" +dependencies = [ + "backtrace", + "log", + "thiserror", + "winapi", + "windows 0.44.0", +] + [[package]] name = "gpu-descriptor" version = "0.2.3" @@ -1419,6 +1457,21 @@ dependencies = [ "hashbrown 0.11.2", ] +[[package]] +name = "hassle-rs" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90601c6189668c7345fc53842cb3f3a3d872203d523be1b3cb44a36a3e62fb85" +dependencies = [ + "bitflags", + "com-rs", + "libc", + "libloading", + "thiserror", + "widestring", + "winapi", +] + [[package]] name = "heck" version = "0.4.1" @@ -1469,7 +1522,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows", + "windows 0.48.0", ] [[package]] @@ -1484,9 +1537,9 @@ dependencies = [ [[package]] name = "iced" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df71e87f8211b57a439d0764131d2c421a9195036dd4b6608033b05f2f16c196" +checksum = "efbddf356d01e9d41cd394a9d04d62bfd89650a30f12fda5839cabb8c4591c88" dependencies = [ "iced_core", "iced_futures", @@ -1502,9 +1555,9 @@ dependencies = [ [[package]] name = "iced_core" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ade666613eb8b621971a59cfae9e11ec051f32afc5ed4d8e8915d5abfaf2cee" +checksum = "11e1942e28dedee756cc27e67e7a838cdc1e59fb6bf9627ec9f709ab3b135782" dependencies = [ "bitflags", "instant", @@ -1513,9 +1566,9 @@ dependencies = [ [[package]] name = "iced_futures" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cc3a9fd79b857228dde2a3e923a04ade4095abeda33248c6230e8c909749366" +checksum = "215d51fa4f70dbb63775d7141243c4d98d4d525d8949695601f8fbac7dcbc04e" dependencies = [ "futures", "log", @@ -1526,13 +1579,13 @@ dependencies = [ [[package]] name = "iced_glow" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95755f62fec2ec2c8f8bc2c0be5072b1d0dfed8db250686059ddcce5da530acf" +checksum = "adc5b081015f5c75777c96ad75e2288916e7d444c97396d6d136517877ef9129" dependencies = [ "bytemuck", "euclid", - "glow", + "glow 0.11.2", "glow_glyph", "glyph_brush", "iced_graphics", @@ -1542,9 +1595,9 @@ dependencies = [ [[package]] name = "iced_glutin" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccd8dd58586541b300b280b6fe8605add7a90283dfb8e622adc96cc545f5fa61" +checksum = "5c427ca018d29508512581d832fbaa7b6c8ec34c39d438f35f59e363a6419953" dependencies = [ "glutin", "iced_graphics", @@ -1555,9 +1608,9 @@ dependencies = [ [[package]] name = "iced_graphics" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54177b85fdae36a8a1a4f052a5c65c5006565dc27f1feead13eeeed10fd0975a" +checksum = "338a6aff7db906537074ad0fe8b720cfdb9512cdfea43c628c76bd1cf50fdcc0" dependencies = [ "bitflags", "bytemuck", @@ -1572,15 +1625,13 @@ dependencies = [ "raw-window-handle 0.5.2", "resvg", "thiserror", - "tiny-skia 0.6.6", - "usvg", ] [[package]] name = "iced_lazy" -version = "0.4.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79aeddab3c88af853769fc025e4f4cf76fa5980e31572791d14858575da4a675" +checksum = "bdf1cb6b8cd90488d3a03fbf438ad42038cb83c81a0d61f3692c51875efdb818" dependencies = [ "iced_native", "ouroboros", @@ -1588,23 +1639,24 @@ dependencies = [ [[package]] name = "iced_native" -version = "0.8.0" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79d57c8e8672e90c55d4f9f55511b03e5a74af9d296be9693e9c07cd9eed4563" +checksum = "d012eb06da490fe46a695b39721c20da9643f35cf2ecb9d30618fdeb96170616" dependencies = [ "iced_core", "iced_futures", "iced_style", "num-traits", + "thiserror", "twox-hash", "unicode-segmentation", ] [[package]] name = "iced_style" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b992f5e1828c61af3661fc0e7bf141ef5284007a41fa6667c5e79d047a03daf4" +checksum = "0e37333dc2991201140302cd0d4cea051bd37ca3671d5008ec85df86d232ff30" dependencies = [ "iced_core", "once_cell", @@ -1613,9 +1665,9 @@ dependencies = [ [[package]] name = "iced_wgpu" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4bb296363d1b18d4f57e1c69bb19591405e61d47764e43078bba31c6689fca5" +checksum = "478803c56061f567ce5ddf223b20d11d3c118cc46bb0d0552370dc65cdc4cb9c" dependencies = [ "bitflags", "bytemuck", @@ -1634,9 +1686,9 @@ dependencies = [ [[package]] name = "iced_winit" -version = "0.7.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d528f882781c5594cb3d2416fe18787b4364e0cdd39f03d077ccc0becac1f9bd" +checksum = "8a59ea3a85149a6a1f9e92b6c740ce90f04e5c7d848cfd05742336863fceb955" dependencies = [ "iced_futures", "iced_graphics", @@ -1666,7 +1718,7 @@ dependencies = [ "color_quant", "exr", "gif", - "jpeg-decoder 0.3.0", + "jpeg-decoder", "num-rational", "num-traits", "png", @@ -1674,6 +1726,12 @@ dependencies = [ "tiff", ] +[[package]] +name = "imagesize" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b72ad49b554c1728b1e83254a1b1565aea4161e28dabbfa171fc15fe62299caf" + [[package]] name = "indexmap" version = "1.9.3" @@ -1708,12 +1766,6 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" -[[package]] -name = "jpeg-decoder" -version = "0.1.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2" - [[package]] name = "jpeg-decoder" version = "0.3.0" @@ -1779,6 +1831,15 @@ dependencies = [ "arrayvec 0.5.2", ] +[[package]] +name = "kurbo" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d676038719d1c892f91e6e85121550143c75880b42f7feff6d413a078cf91fb3" +dependencies = [ + "arrayvec 0.7.2", +] + [[package]] name = "lazy_static" version = "1.4.0" @@ -1844,7 +1905,7 @@ version = "0.4.0" source = "git+https://github.com/wizardsardine/liana?branch=master#9a78b8cfffd5075dea3a041a9e661c27b14c57a2" dependencies = [ "backtrace", - "base64", + "base64 0.13.1", "bip39", "dirs 5.0.0", "fern", @@ -1865,7 +1926,7 @@ version = "1.0.0" dependencies = [ "async-hwi", "backtrace", - "base64", + "base64 0.13.1", "chrono", "dirs 3.0.2", "iced", @@ -2060,27 +2121,12 @@ dependencies = [ "libc", ] -[[package]] -name = "matches" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" - [[package]] name = "memchr" version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" -[[package]] -name = "memmap2" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b6c2ebff6180198788f5db08d7ce3bc1d0b617176678831a7510825973e357" -dependencies = [ - "libc", -] - [[package]] name = "memmap2" version = "0.5.10" @@ -2188,9 +2234,9 @@ checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b" [[package]] name = "naga" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "262d2840e72dbe250e8cf2f522d080988dfca624c4112c096238a4845f591707" +checksum = "5eafe22a23b797c9bc227c6c896419b26b5bb88fa903417a3adaed08778850d5" dependencies = [ "bit-set", "bitflags", @@ -2521,7 +2567,7 @@ version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e25e9fb15717794fae58ab55c26e044103aad13186fbb625893f9a3bbcc24228" dependencies = [ - "ttf-parser 0.18.1", + "ttf-parser", ] [[package]] @@ -2646,9 +2692,9 @@ dependencies = [ [[package]] name = "pico-args" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8bcd96cb740d03149cbad5518db9fd87126a10ab519c011893b1754134c468" +checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" [[package]] name = "pin-project" @@ -2867,9 +2913,9 @@ dependencies = [ [[package]] name = "rctree" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ae028b272a6e99d9f8260ceefa3caa09300a8d6c8d2b2001316474bc52122e9" +checksum = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f" [[package]] name = "rdrand" @@ -2925,18 +2971,21 @@ checksum = "f1382d1f0a252c4bf97dc20d979a2fdd05b024acd7c2ed0f7595d7817666a157" [[package]] name = "resvg" -version = "0.18.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608c6e8aa6fb2c13bc06e4184d7c7b2cc1b7c138f88a539da8be55c3c033d7f4" +checksum = "76888219c0881e22b0ceab06fddcfe83163cd81642bd60c7842387f9c968a72e" dependencies = [ - "jpeg-decoder 0.1.22", + "gif", + "jpeg-decoder", "log", "pico-args", "png", "rgb", "svgfilters", - "tiny-skia 0.6.6", + "svgtypes 0.10.0", + "tiny-skia 0.8.4", "usvg", + "usvg-text-layout", ] [[package]] @@ -2949,10 +2998,23 @@ dependencies = [ ] [[package]] -name = "roxmltree" -version = "0.14.1" +name = "rosvgtree" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "921904a62e410e37e215c40381b7117f830d9d89ba60ab5236170541dd25646b" +checksum = "bdc23d1ace03d6b8153c7d16f0708cd80b61ee8e80304954803354e67e40d150" +dependencies = [ + "log", + "roxmltree", + "simplecss", + "siphasher", + "svgtypes 0.9.0", +] + +[[package]] +name = "roxmltree" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8f595a457b6b8c6cda66a48503e92ee8d19342f905948f29c383200ec9eb1d8" dependencies = [ "xmlparser", ] @@ -2986,14 +3048,14 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustybuzz" -version = "0.4.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44561062e583c4873162861261f16fd1d85fe927c4904d71329a4fe43dc355ef" +checksum = "162bdf42e261bee271b3957691018634488084ef577dddeb6420a9684cab2a6a" dependencies = [ "bitflags", "bytemuck", "smallvec", - "ttf-parser 0.12.3", + "ttf-parser", "unicode-bidi-mirroring", "unicode-ccc", "unicode-general-category", @@ -3218,7 +3280,7 @@ dependencies = [ "dlib", "lazy_static", "log", - "memmap2 0.5.10", + "memmap2", "nix 0.24.3", "pkg-config", "wayland-client", @@ -3305,6 +3367,15 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0" +[[package]] +name = "strict-num" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9df65f20698aeed245efdde3628a6b559ea1239bbb871af1b6e3b58c413b2bd1" +dependencies = [ + "float-cmp", +] + [[package]] name = "strsim" version = "0.10.0" @@ -3329,10 +3400,21 @@ dependencies = [ [[package]] name = "svgtypes" -version = "0.8.2" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22975e8a2bac6a76bb54f898a6b18764633b00e780330f0b689f65afb3975564" +checksum = "c9ee29c1407a5b18ccfe5f6ac82ac11bab3b14407e09c209a6c1a32098b19734" dependencies = [ + "kurbo 0.8.0", + "siphasher", +] + +[[package]] +name = "svgtypes" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98ffacedcdcf1da6579c907279b4f3c5492fbce99fbbf227f5ed270a589c2765" +dependencies = [ + "kurbo 0.9.4", "siphasher", ] @@ -3404,7 +3486,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7449334f9ff2baf290d55d73983a7d6fa15e01198faef72af07e2a8db851e471" dependencies = [ "flate2", - "jpeg-decoder 0.3.0", + "jpeg-decoder", "weezl", ] @@ -3419,20 +3501,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "tiny-skia" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d049bfef0eaa2521e75d9ffb5ce86ad54480932ae19b85f78bec6f52c4d30d78" -dependencies = [ - "arrayref", - "arrayvec 0.5.2", - "bytemuck", - "cfg-if", - "png", - "safe_arch", -] - [[package]] name = "tiny-skia" version = "0.7.0" @@ -3445,7 +3513,21 @@ dependencies = [ "cfg-if", "png", "safe_arch", - "tiny-skia-path", + "tiny-skia-path 0.7.0", +] + +[[package]] +name = "tiny-skia" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df8493a203431061e901613751931f047d1971337153f96d0e5e363d6dbf6a67" +dependencies = [ + "arrayref", + "arrayvec 0.7.2", + "bytemuck", + "cfg-if", + "png", + "tiny-skia-path 0.8.4", ] [[package]] @@ -3458,6 +3540,17 @@ dependencies = [ "bytemuck", ] +[[package]] +name = "tiny-skia-path" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adbfb5d3f3dd57a0e11d12f4f13d4ebbbc1b5c15b7ab0a156d030b21da5f677c" +dependencies = [ + "arrayref", + "bytemuck", + "strict-num", +] + [[package]] name = "tinyvec" version = "1.6.0" @@ -3599,12 +3692,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "ttf-parser" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ae2f58a822f08abdaf668897e96a5656fe72f5a9ce66422423e8849384872e6" - [[package]] name = "ttf-parser" version = "0.18.1" @@ -3642,9 +3729,9 @@ checksum = "cc2520efa644f8268dce4dcd3050eaa7fc044fca03961e9998ac7e2e92b77cf1" [[package]] name = "unicode-general-category" -version = "0.4.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07547e3ee45e28326cc23faac56d44f58f16ab23e413db526debce3b0bfd2742" +checksum = "2281c8c1d221438e373249e065ca4989c4c36952c211ff21a0ee91c44a3869e7" [[package]] name = "unicode-ident" @@ -3693,29 +3780,35 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "usvg" -version = "0.18.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4058e0bd091a56f905e6963e40776ce6880b271275f0b493bff951433e303071" +checksum = "63b6bb4e62619d9f68aa2d8a823fea2bff302340a1f2d45c264d5b0be170832e" dependencies = [ - "base64", + "base64 0.21.0", "data-url", "flate2", - "float-cmp", - "fontdb", - "kurbo", + "imagesize", + "kurbo 0.9.4", "log", - "pico-args", "rctree", - "roxmltree", + "rosvgtree", + "strict-num", +] + +[[package]] +name = "usvg-text-layout" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "195386e01bc35f860db024de275a76e7a31afdf975d18beb6d0e44764118b4db" +dependencies = [ + "fontdb", + "kurbo 0.9.4", + "log", "rustybuzz", - "simplecss", - "siphasher", - "svgtypes", - "ttf-parser 0.12.3", "unicode-bidi", "unicode-script", "unicode-vo", - "xmlwriter", + "usvg", ] [[package]] @@ -3936,15 +4029,17 @@ checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb" [[package]] name = "wgpu" -version = "0.14.2" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81f643110d228fd62a60c5ed2ab56c4d5b3704520bd50561174ec4ec74932937" +checksum = "d745a1b6d91d85c33defbb29f0eee0450e1d2614d987e14bf6baf26009d132d7" dependencies = [ "arrayvec 0.7.2", + "cfg-if", "js-sys", "log", "naga", "parking_lot 0.12.1", + "profiling", "raw-window-handle 0.5.2", "smallvec", "static_assertions", @@ -3958,14 +4053,13 @@ dependencies = [ [[package]] name = "wgpu-core" -version = "0.14.2" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6000d1284ef8eec6076fd5544a73125fd7eb9b635f18dceeb829d826f41724ca" +checksum = "7131408d940e335792645a98f03639573b0480e9e2e7cddbbab74f7c6d9f3fff" dependencies = [ "arrayvec 0.7.2", "bit-vec", "bitflags", - "cfg_aliases", "codespan-reporting", "fxhash", "log", @@ -3982,9 +4076,9 @@ dependencies = [ [[package]] name = "wgpu-hal" -version = "0.14.1" +version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cc320a61acb26be4f549c9b1b53405c10a223fbfea363ec39474c32c348d12f" +checksum = "bdcf61a283adc744bb5453dd88ea91f3f86d5ca6b027661c6c73c7734ae0288b" dependencies = [ "android_system_properties", "arrayvec 0.7.2", @@ -3996,11 +4090,14 @@ dependencies = [ "d3d12", "foreign-types 0.3.2", "fxhash", - "glow", + "glow 0.12.1", "gpu-alloc", + "gpu-allocator", "gpu-descriptor", + "hassle-rs", "js-sys", "khronos-egl", + "libc", "libloading", "log", "metal", @@ -4021,18 +4118,20 @@ dependencies = [ [[package]] name = "wgpu-types" -version = "0.14.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb6b28ef22cac17b9109b25b3bf8c9a103eeb293d7c5f78653979b09140375f6" +checksum = "32444e121b0bd00cb02c0de32fde457a9491bd44e03e7a5db6df9b1da2f6f110" dependencies = [ "bitflags", + "js-sys", + "web-sys", ] [[package]] name = "wgpu_glyph" -version = "0.18.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cafb82773e0f124a33674dab5de4dff73175aeb921949047ab014efb58fb446" +checksum = "e25440d5f32ec39de49c57c15c2d3f9133a7939b069b5ad07e5afd8b78fb8adc" dependencies = [ "bytemuck", "glyph_brush", @@ -4040,6 +4139,12 @@ dependencies = [ "wgpu", ] +[[package]] +name = "widestring" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17882f045410753661207383517a6f62ec3dbeb6a4ed2acce01f0728238d1983" + [[package]] name = "winapi" version = "0.3.9" @@ -4094,6 +4199,15 @@ dependencies = [ "thiserror", ] +[[package]] +name = "windows" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b" +dependencies = [ + "windows-targets 0.42.2", +] + [[package]] name = "windows" version = "0.48.0" @@ -4370,12 +4484,6 @@ version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d25c75bf9ea12c4040a97f829154768bbbce366287e2dc044af160cd79a13fd" -[[package]] -name = "xmlwriter" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9" - [[package]] name = "zune-inflate" version = "0.2.53" diff --git a/gui/Cargo.toml b/gui/Cargo.toml index 7a46a7ec..df739fdf 100644 --- a/gui/Cargo.toml +++ b/gui/Cargo.toml @@ -20,9 +20,9 @@ liana_ui = { path = "ui" } backtrace = "0.3" base64 = "0.13" -iced = { version = "0.7", default-features= false, features = ["tokio", "glow", "svg", "qr_code", "image"] } -iced_native = "0.8" -iced_lazy = { version = "0.4"} +iced = { version = "0.9", default-features= false, features = ["tokio", "glow", "svg", "qr_code", "image"] } +iced_native = "0.10" +iced_lazy = { version = "0.6"} tokio = {version = "1.21.0", features = ["signal"]} serde = { version = "1.0", features = ["derive"] } diff --git a/gui/src/app/view/coins.rs b/gui/src/app/view/coins.rs index 7a9e219d..484e4d9e 100644 --- a/gui/src/app/view/coins.rs +++ b/gui/src/app/view/coins.rs @@ -180,7 +180,7 @@ pub fn coin_sequence_label<'a, T: 'a>(seq: u32, timelock: u32) -> Container<'a, Container::new( Row::new() .spacing(5) - .push(icon::clock_icon().width(Length::Units(20))) + .push(icon::clock_icon().width(Length::Fixed(20.0))) .push(p2_regular("Expired")) .align_items(Alignment::Center), ) @@ -190,7 +190,7 @@ pub fn coin_sequence_label<'a, T: 'a>(seq: u32, timelock: u32) -> Container<'a, Container::new( Row::new() .spacing(5) - .push(icon::clock_icon().width(Length::Units(20))) + .push(icon::clock_icon().width(Length::Fixed(20.0))) .push(p2_regular(expire_message(seq))) .align_items(Alignment::Center), ) @@ -200,7 +200,7 @@ pub fn coin_sequence_label<'a, T: 'a>(seq: u32, timelock: u32) -> Container<'a, Container::new( Row::new() .spacing(5) - .push(icon::clock_icon().width(Length::Units(20))) + .push(icon::clock_icon().width(Length::Fixed(20.0))) .push(p2_regular(expire_message(seq)).style(color::GREY_3)) .align_items(Alignment::Center), ) diff --git a/gui/src/app/view/home.rs b/gui/src/app/view/home.rs index 0b043310..7e59e74e 100644 --- a/gui/src/app/view/home.rs +++ b/gui/src/app/view/home.rs @@ -65,7 +65,7 @@ pub fn home_view<'a>( icon::tooltip_icon() .size(20) .style(color::GREY_3) - .width(Length::Units(20)), + .width(Length::Fixed(20.0)), ) .width(Length::Fill), ) diff --git a/gui/src/app/view/mod.rs b/gui/src/app/view/mod.rs index 6844e035..8d606e24 100644 --- a/gui/src/app/view/mod.rs +++ b/gui/src/app/view/mod.rs @@ -35,8 +35,8 @@ use liana_ui::{ use crate::app::{cache::Cache, error::Error, menu::Menu}; fn menu_green_bar<'a, T: 'a>() -> Container<'a, T> { - Container::new(Space::with_width(Length::Units(2))) - .height(Length::Units(50)) + Container::new(Space::with_width(Length::Fixed(2.0))) + .height(Length::Fixed(50.0)) .style(theme::Container::Custom(color::GREEN)) } @@ -140,8 +140,8 @@ pub fn sidebar<'a>(menu: &Menu, cache: &'a Cache) -> Container<'a, Message> { .push( Container::new( liana_grey_logo() - .height(Length::Units(120)) - .width(Length::Units(60)), + .height(Length::Fixed(120.0)) + .width(Length::Fixed(60.0)), ) .padding(10), ) @@ -188,7 +188,7 @@ pub fn dashboard<'a, T: Into>>( .push( Container::new(scrollable(row!( Space::with_width(Length::FillPortion(1)), - column!(Space::with_height(Length::Units(150)), content.into()) + column!(Space::with_height(Length::Fixed(150.0)), content.into()) .width(Length::FillPortion(8)) .max_width(1500), Space::with_width(Length::FillPortion(1)), diff --git a/gui/src/app/view/psbt.rs b/gui/src/app/view/psbt.rs index 8866e6fd..6b1c0240 100644 --- a/gui/src/app/view/psbt.rs +++ b/gui/src/app/view/psbt.rs @@ -78,7 +78,7 @@ pub fn psbt_view<'a>( Row::new() .push( button::secondary(None, "Delete") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::Spend(SpendTxMessage::Delete)), ) .width(Length::Fill) @@ -87,7 +87,7 @@ pub fn psbt_view<'a>( .push(Space::with_width(Length::Fill)) .push( button::secondary(None, "Save") - .width(Length::Units(150)) + .width(Length::Fixed(150.0)) .on_press(Message::Spend(SpendTxMessage::Save)), ) .width(Length::Fill) @@ -98,7 +98,7 @@ pub fn psbt_view<'a>( pub fn save_action<'a>(warning: Option<&Error>, saved: bool) -> Element<'a, Message> { if saved { card::simple(text("Transaction is saved")) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .align_x(iced::alignment::Horizontal::Center) .into() } else { @@ -117,7 +117,7 @@ pub fn save_action<'a>(warning: Option<&Error>, saved: bool) -> Element<'a, Mess ), ), ) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .into() } } @@ -125,7 +125,7 @@ pub fn save_action<'a>(warning: Option<&Error>, saved: bool) -> Element<'a, Mess pub fn broadcast_action<'a>(warning: Option<&Error>, saved: bool) -> Element<'a, Message> { if saved { card::simple(text("Transaction is broadcast")) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .align_x(iced::alignment::Horizontal::Center) .into() } else { @@ -141,7 +141,7 @@ pub fn broadcast_action<'a>(warning: Option<&Error>, saved: bool) -> Element<'a, ), ), ) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .into() } } @@ -156,7 +156,7 @@ pub fn delete_action<'a>(warning: Option<&Error>, deleted: bool) -> Element<'a, .push(button::primary(None, "Go back to PSBTs").on_press(Message::Close)), ) .align_x(iced::alignment::Horizontal::Center) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .into() } else { card::simple( @@ -177,7 +177,7 @@ pub fn delete_action<'a>(warning: Option<&Error>, deleted: bool) -> Element<'a, ), ), ) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .into() } } @@ -269,13 +269,13 @@ pub fn spend_overview_view<'a>( Some( button::primary(None, "Sign") .on_press(Message::Spend(SpendTxMessage::Sign)) - .width(Length::Units(150)), + .width(Length::Fixed(150.0)), ) } else { Some( button::primary(None, "Broadcast") .on_press(Message::Spend(SpendTxMessage::Broadcast)) - .width(Length::Units(150)), + .width(Length::Fixed(150.0)), ) }) .align_items(Alignment::Center) @@ -419,7 +419,7 @@ pub fn path_view<'a>( } else { icon::circle_cross_icon().style(color::GREY_3) }) - .push(Space::with_width(Length::Units(20))), + .push(Space::with_width(Length::Fixed(20.0))), ) .push( p1_regular(format!( @@ -740,7 +740,7 @@ pub fn sign_action<'a>( .width(Length::Fill) .align_items(Alignment::Center), )) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) .into() } @@ -801,7 +801,7 @@ pub fn update_spend_success_view<'a>() -> Element<'a, Message> { )) .padding(50), ) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .align_items(Alignment::Center) .into() } diff --git a/gui/src/app/view/psbts.rs b/gui/src/app/view/psbts.rs index 75972228..e7d08f35 100644 --- a/gui/src/app/view/psbts.rs +++ b/gui/src/app/view/psbts.rs @@ -54,7 +54,7 @@ pub fn import_psbt_success_view<'a>() -> Element<'a, Message> { .push( card::simple(Container::new(text("PSBT is imported").style(color::GREEN))).padding(50), ) - .width(Length::Units(400)) + .width(Length::Fixed(400.0)) .align_items(Alignment::Center) .into() } diff --git a/gui/src/app/view/receive.rs b/gui/src/app/view/receive.rs index eaed0259..e0f5cb2c 100644 --- a/gui/src/app/view/receive.rs +++ b/gui/src/app/view/receive.rs @@ -45,14 +45,14 @@ pub fn receive<'a>( Container::new( scrollable( Column::new() - .push(Space::with_height(Length::Units(10))) + .push(Space::with_height(Length::Fixed(10.0))) .push( p2_regular(address.to_string()) .small() .style(color::GREY_3), ) // Space between the address and the scrollbar - .push(Space::with_height(Length::Units(10))), + .push(Space::with_height(Length::Fixed(10.0))), ) .horizontal_scroll( scrollable::Properties::new().scroller_width(5), @@ -76,7 +76,7 @@ pub fn receive<'a>( .padding(10) .style(theme::Container::QrCode) } else { - Container::new(Space::with_width(Length::Fill)).width(Length::Units(200)) + Container::new(Space::with_width(Length::Fill)).width(Length::Fixed(200.0)) }), ) .spacing(20) diff --git a/gui/src/app/view/recovery.rs b/gui/src/app/view/recovery.rs index 96ef4ac7..ad7f2aa0 100644 --- a/gui/src/app/view/recovery.rs +++ b/gui/src/app/view/recovery.rs @@ -58,7 +58,7 @@ pub fn recovery<'a>( .on_press(Message::Menu(Menu::Recovery)), ), ) - .push(Space::with_height(Length::Units(20))) + .push(Space::with_height(Length::Fixed(20.0))) .push( Row::new() .spacing(20) @@ -88,7 +88,7 @@ pub fn recovery<'a>( .size(20) .padding(10), ) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ), ) .push(if no_recovery_paths { @@ -121,9 +121,9 @@ pub fn recovery<'a>( { button::primary(None, "Next") .on_press(Message::Next) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) }, ) .spacing(20) diff --git a/gui/src/app/view/settings.rs b/gui/src/app/view/settings.rs index a2641368..fcf3dd95 100644 --- a/gui/src/app/view/settings.rs +++ b/gui/src/app/view/settings.rs @@ -187,7 +187,7 @@ pub fn about_section<'a>( .width(Length::Fill), ) .push(separation().width(Length::Fill)) - .push(Space::with_height(Length::Units(10))) + .push(Space::with_height(Length::Fixed(10.0))) .push( Row::new().push(Space::with_width(Length::Fill)).push( Column::new() @@ -568,7 +568,7 @@ pub fn wallet_settings<'a>( scrollable( Column::new() .push(text(descriptor.to_owned()).small()) - .push(Space::with_height(Length::Units(5))), + .push(Space::with_height(Length::Fixed(5.0))), ) .horizontal_scroll( scrollable::Properties::new().width(5).scroller_width(5), @@ -603,7 +603,7 @@ pub fn wallet_settings<'a>( Row::new() .spacing(10) .align_items(Alignment::Center) - .push(text(fg.to_string()).bold().width(Length::Units(100))) + .push(text(fg.to_string()).bold().width(Length::Fixed(100.0))) .push( form::Form::new("Alias", name, move |msg| { Message::Settings( @@ -683,6 +683,6 @@ pub fn register_wallet_modal<'a>( .width(Length::Fill) .align_items(Alignment::Center), )) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) .into() } diff --git a/gui/src/app/view/spend/mod.rs b/gui/src/app/view/spend/mod.rs index ee5823a5..99ead23e 100644 --- a/gui/src/app/view/spend/mod.rs +++ b/gui/src/app/view/spend/mod.rs @@ -57,7 +57,7 @@ pub fn spend_view<'a>( Row::new() .push( button::secondary(None, "Delete") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::Spend(SpendTxMessage::Delete)), ) .width(Length::Fill) @@ -65,13 +65,13 @@ pub fn spend_view<'a>( Row::new() .push( button::secondary(None, "< Previous") - .width(Length::Units(150)) + .width(Length::Fixed(150.0)) .on_press(Message::Previous), ) .push(Space::with_width(Length::Fill)) .push( button::secondary(None, "Save") - .width(Length::Units(150)) + .width(Length::Fixed(150.0)) .on_press(Message::Spend(SpendTxMessage::Save)), ) .width(Length::Fill) @@ -217,7 +217,7 @@ pub fn create_spend_tx<'a>( .push( button::primary(None, "Clear") .on_press(Message::Menu(Menu::CreateSpendTx)) - .width(Length::Units(100)), + .width(Length::Fixed(100.0)), ) .push( if is_valid @@ -227,13 +227,13 @@ pub fn create_spend_tx<'a>( { button::primary(None, "Next") .on_press(Message::CreateSpend(CreateSpendMessage::Generate)) - .width(Length::Units(100)) + .width(Length::Fixed(100.0)) } else { - button::primary(None, "Next").width(Length::Units(100)) + button::primary(None, "Next").width(Length::Fixed(100.0)) }, ), ) - .push(Space::with_height(Length::Units(20))) + .push(Space::with_height(Length::Fixed(20.0))) .spacing(20), ) } @@ -262,7 +262,7 @@ pub fn recipient_view<'a>( Container::new(p1_bold("Pay to")) .align_x(alignment::Horizontal::Right) .padding(10) - .width(Length::Units(80)), + .width(Length::Fixed(80.0)), ) .push( form::Form::new("Address", address, move |msg| { @@ -281,7 +281,7 @@ pub fn recipient_view<'a>( Container::new(p1_bold("Amount")) .padding(10) .align_x(alignment::Horizontal::Right) - .width(Length::Units(80)), + .width(Length::Fixed(80.0)), ) .push( form::Form::new("0.001 (in BTC)", amount, move |msg| { @@ -328,7 +328,7 @@ fn coin_list_view<'a>( ) .push(amount(&coin.amount)) // give some space for the scroll bar without using padding - .push(Space::with_width(Length::Units(0))) + .push(Space::with_width(Length::Fixed(0.0))) .align_items(Alignment::Center) .spacing(20) .into() diff --git a/gui/src/installer/mod.rs b/gui/src/installer/mod.rs index 9fc7cc2a..3f2ff41a 100644 --- a/gui/src/installer/mod.rs +++ b/gui/src/installer/mod.rs @@ -150,7 +150,8 @@ impl Installer { Command::none() } Message::Install => { - self.steps + let _cmd = self + .steps .get_mut(self.current) .expect("There is always a step") .update(message); @@ -180,8 +181,7 @@ impl Installer { self.steps .get_mut(self.current) .expect("There is always a step") - .update(Message::Installed(Err(e))); - Command::none() + .update(Message::Installed(Err(e))) } _ => self .steps diff --git a/gui/src/installer/view.rs b/gui/src/installer/view.rs index 48361372..af1de2a8 100644 --- a/gui/src/installer/view.rs +++ b/gui/src/installer/view.rs @@ -78,7 +78,9 @@ const NETWORKS: [Network; 4] = [ pub fn welcome<'a>() -> Element<'a, Message> { Container::new( Column::new() - .push(Container::new(image::liana_brand_grey().width(Length::Units(200))).padding(100)) + .push( + Container::new(image::liana_brand_grey().width(Length::Fixed(200.0))).padding(100), + ) .push( Container::new( Column::new() @@ -93,7 +95,7 @@ pub fn welcome<'a>() -> Element<'a, Message> { .align_items(Alignment::Center) .push( image::create_new_wallet_icon() - .width(Length::Units(100)), + .width(Length::Fixed(100.0)), ) .push( p1_regular("Create a new wallet") @@ -101,7 +103,7 @@ pub fn welcome<'a>() -> Element<'a, Message> { ) .push( button::secondary(None, "Select") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::CreateWallet), ) .align_items(Alignment::Center), @@ -115,7 +117,7 @@ pub fn welcome<'a>() -> Element<'a, Message> { .align_items(Alignment::Center) .push( image::participate_in_new_wallet_icon() - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) .push( p1_regular("Participate in new wallet") @@ -123,7 +125,7 @@ pub fn welcome<'a>() -> Element<'a, Message> { ) .push( button::secondary(None, "Select") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::ParticipateWallet), ) .align_items(Alignment::Center), @@ -137,14 +139,14 @@ pub fn welcome<'a>() -> Element<'a, Message> { .align_items(Alignment::Center) .push( image::restore_wallet_icon() - .width(Length::Units(100)), + .width(Length::Fixed(100.0)), ) .push( p1_regular("Restore a wallet").style(color::GREY_3), ) .push( button::secondary(None, "Select") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::ImportWallet), ) .align_items(Alignment::Center), @@ -152,7 +154,7 @@ pub fn welcome<'a>() -> Element<'a, Message> { .padding(20), ), ) - .push(Space::with_height(Length::Units(100))) + .push(Space::with_height(Length::Fixed(100.0))) .spacing(50) .align_items(Alignment::Center), ) @@ -228,13 +230,13 @@ pub fn define_descriptor<'a>( .push( Button::new( Container::new(icon::plus_icon().size(50)) - .width(Length::Units(150)) - .height(Length::Units(150)) + .width(Length::Fixed(150.0)) + .height(Length::Fixed(150.0)) .align_y(alignment::Vertical::Center) .align_x(alignment::Horizontal::Center), ) - .width(Length::Units(150)) - .height(Length::Units(150)) + .width(Length::Fixed(150.0)) + .height(Length::Fixed(150.0)) .style(theme::Button::TransparentBorder) .on_press( Message::DefineDescriptor( @@ -281,18 +283,18 @@ pub fn define_descriptor<'a>( .on_press(Message::DefineDescriptor( message::DefineDescriptor::AddRecoveryPath, )) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) .push(if !valid { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) } else { button::primary(None, "Next") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::Next) }), ) .push_maybe(error.map(|e| card::error("Failed to create descriptor", e.to_string()))) - .push(Space::with_height(Length::Units(20))) + .push(Space::with_height(Length::Fixed(20.0))) .spacing(50), false, ) @@ -328,13 +330,13 @@ pub fn recovery_path_view( .push( Button::new( Container::new(icon::plus_icon().size(50)) - .width(Length::Units(150)) - .height(Length::Units(150)) + .width(Length::Fixed(150.0)) + .height(Length::Fixed(150.0)) .align_y(alignment::Vertical::Center) .align_x(alignment::Horizontal::Center), ) - .width(Length::Units(150)) - .height(Length::Units(150)) + .width(Length::Fixed(150.0)) + .height(Length::Fixed(150.0)) .style(theme::Button::TransparentBorder) .on_press(message::DefinePath::AddKey), ) @@ -403,10 +405,10 @@ pub fn import_descriptor<'a>( .push(col_descriptor), ) .push(if imported_descriptor.value.is_empty() { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) } else { button::primary(None, "Next") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::Next) }) .push_maybe(error.map(|e| card::error("Invalid descriptor", e.to_string()))) @@ -636,10 +638,10 @@ pub fn participate_xpub<'a>( )) .push(if shared { button::primary(None, "Next") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(Message::Next) } else { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) }) .spacing(50), true @@ -719,9 +721,9 @@ pub fn register_descriptor<'a>( .push(if done && !processing { button::primary(None, "Next") .on_press(Message::Next) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) }) .spacing(50), true, @@ -786,9 +788,9 @@ pub fn backup_descriptor<'a>( .push(if done { button::primary(None, "Next") .on_press(Message::Next) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) }) .spacing(50), true, @@ -856,7 +858,7 @@ pub fn define_bitcoin<'a>( } }) } else { - Some(Container::new(Space::with_height(Length::Units(25)))) + Some(Container::new(Space::with_height(Length::Fixed(25.0)))) }) .push( Row::new() @@ -866,14 +868,14 @@ pub fn define_bitcoin<'a>( .on_press(Message::DefineBitcoind( message::DefineBitcoind::PingBitcoind, )) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), )) .push(if is_running.map(|res| res.is_ok()).unwrap_or(false) { button::primary(None, "Next") .on_press(Message::Next) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) }), ) .spacing(50), @@ -1007,10 +1009,10 @@ pub fn install<'a>( ) .max_width(1000), ) - .push(Space::with_height(Length::Units(50))) + .push(Space::with_height(Length::Fixed(50.0))) .push_maybe(warning.map(|e| card::invalid(text(e)))) .push(if generating { - Container::new(button::primary(None, "Installing ...").width(Length::Units(200))) + Container::new(button::primary(None, "Installing ...").width(Length::Fixed(200.0))) } else if let Some(path) = config_path { Container::new( Column::new() @@ -1018,7 +1020,7 @@ pub fn install<'a>( .push(Container::new( button::primary(None, "Start") .on_press(Message::Exit(path.clone())) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), )) .align_items(Alignment::Center) .spacing(20), @@ -1030,7 +1032,7 @@ pub fn install<'a>( Container::new( button::primary(None, "Finalize installation") .on_press(Message::Install) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) }) .spacing(10) @@ -1119,7 +1121,7 @@ pub fn undefined_descriptor_key<'a>() -> Element<'a, message::DefineKey> { Column::new() .spacing(15) .align_items(Alignment::Center) - .push(image::key_mark_icon().width(Length::Units(30))), + .push(image::key_mark_icon().width(Length::Fixed(30.0))), ) .height(Length::Fill) .align_y(alignment::Vertical::Center), @@ -1128,11 +1130,11 @@ pub fn undefined_descriptor_key<'a>() -> Element<'a, message::DefineKey> { button::secondary(Some(icon::pencil_icon()), "Set") .on_press(message::DefineKey::Edit), ) - .push(Space::with_height(Length::Units(5))), + .push(Space::with_height(Length::Fixed(5.0))), ) .padding(5) - .height(Length::Units(150)) - .width(Length::Units(150)) + .height(Length::Fixed(150.0)) + .width(Length::Fixed(150.0)) .into() } @@ -1164,12 +1166,12 @@ pub fn defined_descriptor_key( scrollable( Column::new() .push(text(name).bold()) - .push(Space::with_height(Length::Units(5))), + .push(Space::with_height(Length::Fixed(5.0))), ) .horizontal_scroll(Properties::new().width(5).scroller_width(5)), ) - .push(image::success_mark_icon().width(Length::Units(50))) - .push(Space::with_width(Length::Units(1))), + .push(image::success_mark_icon().width(Length::Fixed(50.0))) + .push(Space::with_width(Length::Fixed(1.0))), ) .height(Length::Fill) .align_y(alignment::Vertical::Center), @@ -1177,7 +1179,7 @@ pub fn defined_descriptor_key( .push( button::secondary(Some(icon::pencil_icon()), "Edit").on_press(message::DefineKey::Edit), ) - .push(Space::with_height(Length::Units(5))); + .push(Space::with_height(Length::Fixed(5.0))); if !valid { Column::new() @@ -1185,8 +1187,8 @@ pub fn defined_descriptor_key( .push( card::invalid(col) .padding(5) - .height(Length::Units(150)) - .width(Length::Units(150)), + .height(Length::Fixed(150.0)) + .width(Length::Fixed(150.0)), ) .push( text("Key is for a different network") @@ -1200,8 +1202,8 @@ pub fn defined_descriptor_key( .push( card::invalid(col) .padding(5) - .height(Length::Units(150)) - .width(Length::Units(150)), + .height(Length::Fixed(150.0)) + .width(Length::Fixed(150.0)), ) .push(text("Duplicate key").small().style(color::RED)) .into() @@ -1211,16 +1213,16 @@ pub fn defined_descriptor_key( .push( card::invalid(col) .padding(5) - .height(Length::Units(150)) - .width(Length::Units(150)), + .height(Length::Fixed(150.0)) + .width(Length::Fixed(150.0)), ) .push(text("Duplicate name").small().style(color::RED)) .into() } else { card::simple(col) .padding(5) - .height(Length::Units(150)) - .width(Length::Units(150)) + .height(Length::Fixed(150.0)) + .width(Length::Fixed(150.0)) .into() } } @@ -1372,14 +1374,14 @@ pub fn edit_key_modal<'a>( message::ImportKeyModal::ConfirmXpub, ), )) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Apply").width(Length::Units(100)) + button::primary(None, "Apply").width(Length::Fixed(100.0)) }, ) .align_items(Alignment::Center), )) - .width(Length::Units(600)) + .width(Length::Fixed(600.0)) .into() } @@ -1415,7 +1417,7 @@ pub fn edit_sequence_modal<'a>(sequence: &form::Value) -> Element<'a, Me }) .warning("Sequence must be superior to 0 and inferior to 65535"), ) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) .spacing(10) .push(text("blocks").bold()), @@ -1454,7 +1456,7 @@ pub fn edit_sequence_modal<'a>(sequence: &form::Value) -> Element<'a, Me }) .step(144), // 144 blocks per day ) - .width(Length::Units(500)), + .width(Length::Fixed(500.0)), ); } } @@ -1464,11 +1466,11 @@ pub fn edit_sequence_modal<'a>(sequence: &form::Value) -> Element<'a, Me .on_press(Message::DefineDescriptor( message::DefineDescriptor::SequenceModal(message::SequenceModal::ConfirmSequence), )) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Apply").width(Length::Units(200)) + button::primary(None, "Apply").width(Length::Fixed(200.0)) })) - .width(Length::Units(800)) + .width(Length::Fixed(800.0)) .into() } @@ -1530,7 +1532,7 @@ pub fn backup_mnemonic<'a>( .align_items(Alignment::End) .push( Container::new(text(format!("#{}", i + 1)).small()) - .width(Length::Units(50)), + .width(Length::Fixed(50.0)), ) .push(text(*w).bold()), ) @@ -1544,9 +1546,9 @@ pub fn backup_mnemonic<'a>( .push(if done { button::primary(None, "Next") .on_press(Message::Next) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) } else { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) }) .spacing(50), true, @@ -1586,7 +1588,7 @@ pub fn recover_mnemonic<'a>( Row::new() }) // Fixed height in order to not move words list - .height(Length::Units(50)), + .height(Length::Fixed(50.0)), ) .push(words.iter().enumerate().fold( Column::new().spacing(5), @@ -1597,13 +1599,13 @@ pub fn recover_mnemonic<'a>( .align_items(Alignment::Center) .push( Container::new(text(format!("#{}", i + 1)).small()) - .width(Length::Units(50)), + .width(Length::Fixed(50.0)), ) .push( - Container::new(TextInput::new("", word, move |msg| { - Message::MnemonicWord(i, msg) - })) - .width(Length::Units(100)), + Container::new(TextInput::new("", word).on_input( + move |msg| Message::MnemonicWord(i, msg), + )) + .width(Length::Fixed(100.0)), ) .push_maybe(if *valid { Some(icon::circle_check_icon().style(color::GREEN)) @@ -1613,7 +1615,7 @@ pub fn recover_mnemonic<'a>( ) }, )) - .push(Space::with_height(Length::Units(50))) + .push(Space::with_height(Length::Fixed(50.0))) .push_maybe(error.map(|e| card::invalid(text(e).style(color::RED)))), ) } else { @@ -1625,12 +1627,12 @@ pub fn recover_mnemonic<'a>( .push( button::secondary(None, "Import mnemonic") .on_press(Message::ImportMnemonic(true)) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) .push( button::primary(None, "Skip") .on_press(Message::Skip) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) } else { Row::new() @@ -1638,15 +1640,15 @@ pub fn recover_mnemonic<'a>( .push( button::secondary(None, "Cancel") .on_press(Message::ImportMnemonic(false)) - .width(Length::Units(200)), + .width(Length::Fixed(200.0)), ) .push( if words.iter().any(|(_, valid)| !valid) || error.is_some() { - button::primary(None, "Next").width(Length::Units(200)) + button::primary(None, "Next").width(Length::Fixed(200.0)) } else { button::primary(None, "Next") .on_press(Message::Next) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) }, ) }) @@ -1664,7 +1666,7 @@ fn layout<'a>( Container::new(scrollable( Column::new() .width(Length::Fill) - .push(Space::with_height(Length::Units(100))) + .push(Space::with_height(Length::Fixed(100.0))) .push( Row::new() .align_items(Alignment::Center) @@ -1689,7 +1691,7 @@ fn layout<'a>( .push( Container::new( Column::new() - .push(Space::with_height(Length::Units(100))) + .push(Space::with_height(Length::Fixed(100.0))) .push(content), ) .width(Length::FillPortion(if padding_left { @@ -1779,12 +1781,12 @@ mod threshsold_input { let button = |label, on_press| { Button::new(label) .style(theme::Button::Transparent) - .width(Length::Units(50)) + .width(Length::Fixed(50.0)) .on_press(on_press) }; Column::new() - .width(Length::Units(150)) + .width(Length::Fixed(150.0)) .push(button(icon::up_icon().size(30), Event::IncrementPressed)) .push(text("Threshold:").small().bold()) .push( diff --git a/gui/src/launcher.rs b/gui/src/launcher.rs index c8b0b8df..5867577f 100644 --- a/gui/src/launcher.rs +++ b/gui/src/launcher.rs @@ -78,7 +78,7 @@ impl Launcher { Into::>::into( Column::new() .push( - Container::new(image::liana_brand_grey().width(Length::Units(200))) + Container::new(image::liana_brand_grey().width(Length::Fixed(200.0))) .padding(100), ) .push( @@ -145,7 +145,7 @@ impl Launcher { .center_x() .center_y(), ) - .push(Space::with_height(Length::Units(100))), + .push(Space::with_height(Length::Fixed(100.0))), ) .map(Message::View) } diff --git a/gui/src/loader.rs b/gui/src/loader.rs index ed95c998..b35a3fc4 100644 --- a/gui/src/loader.rs +++ b/gui/src/loader.rs @@ -273,7 +273,7 @@ pub fn view(step: &Step) -> Element { .spacing(20) .width(Length::Fill) .align_items(Alignment::Center) - .push(icon::plug_icon().size(100).width(Length::Units(300))) + .push(icon::plug_icon().size(100).width(Length::Fixed(300.0))) .push( if matches!( error.as_ref(), @@ -293,7 +293,7 @@ pub fn view(step: &Step) -> Element { ) .push( button::primary(None, "Retry") - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .on_press(ViewMessage::Retry), ), ), diff --git a/gui/src/main.rs b/gui/src/main.rs index a6f93647..479d6a9a 100644 --- a/gui/src/main.rs +++ b/gui/src/main.rs @@ -388,7 +388,7 @@ fn main() -> Result<(), Box> { let mut settings = Settings::with_flags(config); settings.id = Some("liana-gui".to_string()); settings.window.icon = Some(image::liana_app_icon()); - settings.default_text_size = text::P1_SIZE; + settings.default_text_size = text::P1_SIZE.into(); settings.default_font = Some(font::REGULAR_BYTES); settings.exit_on_close_request = false; diff --git a/gui/ui/Cargo.toml b/gui/ui/Cargo.toml index 647eb492..19fb2205 100644 --- a/gui/ui/Cargo.toml +++ b/gui/ui/Cargo.toml @@ -6,8 +6,8 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -iced = { version = "0.7", default_features = false, features = ["svg", "image", "glow"] } -iced_native = "0.8" -iced_lazy = { version = "0.4"} +iced = { version = "0.9", default_features = false, features = ["svg", "image", "glow"] } +iced_native = "0.10" +iced_lazy = { version = "0.6"} bitcoin = "0.29" chrono = "0.4" diff --git a/gui/ui/examples/design-system/Cargo.toml b/gui/ui/examples/design-system/Cargo.toml index fc397025..8f6232da 100644 --- a/gui/ui/examples/design-system/Cargo.toml +++ b/gui/ui/examples/design-system/Cargo.toml @@ -6,8 +6,8 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -iced = "0.7" -iced_native = "0.8" +iced = "0.9" +iced_native = "0.10" web-sys = "0.3.61" chrono = "0.4" liana_ui = { path = "../.." } diff --git a/gui/ui/examples/design-system/src/main.rs b/gui/ui/examples/design-system/src/main.rs index 27b9d10a..696bfdb3 100644 --- a/gui/ui/examples/design-system/src/main.rs +++ b/gui/ui/examples/design-system/src/main.rs @@ -6,7 +6,7 @@ use liana_ui::{component::text::*, image, theme, widget::*}; pub fn main() -> iced::Result { let mut settings = Settings::with_flags(Config {}); - settings.default_text_size = P1_SIZE; + settings.default_text_size = P1_SIZE.into(); DesignSystem::run(settings) } @@ -102,7 +102,7 @@ impl Application for DesignSystem { let sidebar = container( column![ image::liana_grey_logo(), - Space::with_height(Length::Units(100)), + Space::with_height(Length::Fixed(100.0)), self.sections.iter().enumerate().fold( Column::new().spacing(10), |col, (i, section)| col.push( @@ -113,7 +113,7 @@ impl Application for DesignSystem { ) .style(theme::Button::Menu(i == self.current)) .on_press(Message::Section(i)) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) ) ) ] @@ -127,7 +127,7 @@ impl Application for DesignSystem { sidebar.width(Length::FillPortion(2)), Space::with_width(Length::FillPortion(1)), container(scrollable(column![ - Space::with_height(Length::Units(150)), + Space::with_height(Length::Fixed(150.0)), container(self.sections[self.current].view()).width(Length::Fill) ])) .width(Length::FillPortion(8)), diff --git a/gui/ui/examples/design-system/src/section.rs b/gui/ui/examples/design-system/src/section.rs index 7a5e57fc..4fb9c575 100644 --- a/gui/ui/examples/design-system/src/section.rs +++ b/gui/ui/examples/design-system/src/section.rs @@ -114,8 +114,8 @@ impl Section for Typography { fn color_row<'a, T: 'a>(color: iced::Color, label: &'static str) -> Element<'a, T> { row![ - container(Space::with_width(Length::Units(100))) - .height(Length::Units(100)) + container(Space::with_width(Length::Fixed(100.0))) + .height(Length::Fixed(100.0)) .style(theme::Container::Custom(color)), text(label) ] @@ -156,7 +156,7 @@ fn button_row(style: theme::Button, label: &'static str) -> Element { .width(Length::Fill) .align_x(alignment::Horizontal::Center), ) - .width(Length::Units(200)) + .width(Length::Fixed(200.0)) .padding(5) .style(style) .on_press(Message::Ignore) @@ -181,7 +181,7 @@ impl Section for HardwareWallets { "f123de", None:: ) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), @@ -192,7 +192,7 @@ impl Section for HardwareWallets { "f123de", Some("Edouard key") ) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), @@ -203,13 +203,13 @@ impl Section for HardwareWallets { "f123de", Some("Edouard key") ) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), button( hw::unsupported_hardware_wallet("ledger", Some("v2.1.0")) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), @@ -220,7 +220,7 @@ impl Section for HardwareWallets { "f123de", Some("Edouard key") ) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), @@ -231,7 +231,7 @@ impl Section for HardwareWallets { "f123de", Some("Edouard key") ) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), @@ -242,7 +242,7 @@ impl Section for HardwareWallets { "f123de", Some("Edouard key") ) - .width(Length::Units(500)) + .width(Length::Fixed(500.0)) ) .on_press(Message::Ignore) .style(theme::Button::Border), diff --git a/gui/ui/src/component/badge.rs b/gui/ui/src/component/badge.rs index ac3d77f2..199dc165 100644 --- a/gui/ui/src/component/badge.rs +++ b/gui/ui/src/component/badge.rs @@ -24,9 +24,9 @@ impl Badge { impl<'a, Message: 'a> From for Element<'a, Message> { fn from(badge: Badge) -> Element<'a, Message> { - Container::new(badge.icon.width(Length::Units(20))) - .width(Length::Units(40)) - .height(Length::Units(40)) + Container::new(badge.icon.width(Length::Fixed(20.0))) + .width(Length::Fixed(40.0)) + .height(Length::Fixed(40.0)) .style(theme::Container::Badge(badge.style)) .center_x() .center_y() @@ -35,27 +35,27 @@ impl<'a, Message: 'a> From for Element<'a, Message> { } pub fn receive() -> Container<'static, T> { - Container::new(icon::receive_icon().width(Length::Units(20))) - .width(Length::Units(40)) - .height(Length::Units(40)) + Container::new(icon::receive_icon().width(Length::Fixed(20.0))) + .width(Length::Fixed(40.0)) + .height(Length::Fixed(40.0)) .style(theme::Container::Badge(theme::Badge::Standard)) .center_x() .center_y() } pub fn cycle() -> Container<'static, T> { - Container::new(icon::arrow_repeat().width(Length::Units(20))) - .width(Length::Units(40)) - .height(Length::Units(40)) + Container::new(icon::arrow_repeat().width(Length::Fixed(20.0))) + .width(Length::Fixed(40.0)) + .height(Length::Fixed(40.0)) .style(theme::Container::Badge(theme::Badge::Standard)) .center_x() .center_y() } pub fn spend() -> Container<'static, T> { - Container::new(icon::send_icon().width(Length::Units(20))) - .width(Length::Units(40)) - .height(Length::Units(40)) + Container::new(icon::send_icon().width(Length::Fixed(20.0))) + .width(Length::Fixed(40.0)) + .height(Length::Fixed(40.0)) .style(theme::Container::Badge(theme::Badge::Standard)) .center_x() .center_y() @@ -64,11 +64,11 @@ pub fn spend() -> Container<'static, T> { pub fn coin() -> Container<'static, T> { Container::new( image::liana_grey_logo() - .height(Length::Units(25)) - .width(Length::Units(25)), + .height(Length::Fixed(25.0)) + .width(Length::Fixed(25.0)), ) - .width(Length::Units(40)) - .height(Length::Units(40)) + .width(Length::Fixed(40.0)) + .height(Length::Fixed(40.0)) .style(theme::Container::Badge(theme::Badge::Standard)) .center_x() .center_y() diff --git a/gui/ui/src/component/form.rs b/gui/ui/src/component/form.rs index 7c339f4a..d268d2f6 100644 --- a/gui/ui/src/component/form.rs +++ b/gui/ui/src/component/form.rs @@ -38,7 +38,7 @@ where F: 'static + Fn(String) -> Message, { Self { - input: text_input::TextInput::new(placeholder, &value.value, on_change), + input: text_input::TextInput::new(placeholder, &value.value).on_input(on_change), warning: None, valid: value.valid, } diff --git a/gui/ui/src/component/hw.rs b/gui/ui/src/component/hw.rs index b5f00c3c..1e4c5c98 100644 --- a/gui/ui/src/component/hw.rs +++ b/gui/ui/src/component/hw.rs @@ -121,7 +121,7 @@ pub fn selected_hardware_wallet<'a, T: 'a, K: Display, V: Display, F: Display>( ]) .width(Length::Fill) .into(), - image::success_mark_icon().width(Length::Units(50)).into(), + image::success_mark_icon().width(Length::Fixed(50.0)).into(), ]) .align_items(Alignment::Center), ) @@ -152,7 +152,7 @@ pub fn sign_success_hardware_wallet<'a, T: 'a, K: Display, V: Display, F: Displa .into(), row(vec![ text::p1_regular("Signed").style(color::GREEN).into(), - image::success_mark_icon().width(Length::Units(50)).into(), + image::success_mark_icon().width(Length::Fixed(50.0)).into(), ]) .align_items(Alignment::Center) .spacing(5) @@ -187,7 +187,7 @@ pub fn registration_success_hardware_wallet<'a, T: 'a, K: Display, V: Display, F .into(), row(vec![ text::p1_regular("Registered").style(color::GREEN).into(), - image::success_mark_icon().width(Length::Units(50)).into(), + image::success_mark_icon().width(Length::Fixed(50.0)).into(), ]) .align_items(Alignment::Center) .spacing(5) @@ -251,7 +251,7 @@ pub fn sign_success_hot_signer<'a, T: 'a, F: Display>( .into(), row(vec![ text::p1_regular("Signed").style(color::GREEN).into(), - image::success_mark_icon().width(Length::Units(50)).into(), + image::success_mark_icon().width(Length::Fixed(50.0)).into(), ]) .align_items(Alignment::Center) .spacing(5) @@ -284,7 +284,7 @@ pub fn selected_hot_signer<'a, T: 'a, F: Display>( ]) .width(Length::Fill) .into(), - image::success_mark_icon().width(Length::Units(50)).into(), + image::success_mark_icon().width(Length::Fixed(50.0)).into(), ]) .align_items(Alignment::Center), ) diff --git a/gui/ui/src/component/mod.rs b/gui/ui/src/component/mod.rs index c3252391..dc9d88b3 100644 --- a/gui/ui/src/component/mod.rs +++ b/gui/ui/src/component/mod.rs @@ -20,5 +20,5 @@ use crate::{theme, widget::*}; pub fn separation<'a, T: 'a>() -> Container<'a, T> { Container::new(Column::new().push(Text::new(" "))) .style(theme::Container::Border) - .height(Length::Units(1)) + .height(Length::Fixed(1.0)) } diff --git a/gui/ui/src/icon.rs b/gui/ui/src/icon.rs index 9ce74dab..3af76712 100644 --- a/gui/ui/src/icon.rs +++ b/gui/ui/src/icon.rs @@ -9,7 +9,7 @@ const BOOTSTRAP_ICONS: Font = Font::External { fn bootstrap_icon(unicode: char) -> Text<'static> { Text::new(unicode.to_string()) .font(BOOTSTRAP_ICONS) - .width(Length::Units(20)) + .width(Length::Fixed(20.0)) .horizontal_alignment(alignment::Horizontal::Center) .size(20) } @@ -126,7 +126,7 @@ const ICONEX_ICONS: Font = Font::External { fn iconex_icon(unicode: char) -> Text<'static> { Text::new(unicode.to_string()) .font(ICONEX_ICONS) - .width(Length::Units(20)) + .width(Length::Fixed(20.0)) .horizontal_alignment(alignment::Horizontal::Center) .size(20) } diff --git a/gui/ui/src/image.rs b/gui/ui/src/image.rs index 0d095bb6..f2ebffb5 100644 --- a/gui/ui/src/image.rs +++ b/gui/ui/src/image.rs @@ -6,7 +6,7 @@ const LIANA_LOGO_GREY: &[u8] = include_bytes!("../static/logos/LIANA_SYMBOL_Gray const LIANA_BRAND_GREY: &[u8] = include_bytes!("../static/logos/LIANA_BRAND_Gray.svg"); pub fn liana_app_icon() -> icon::Icon { - icon::Icon::from_file_data(LIANA_APP_ICON, None).unwrap() + icon::from_file_data(LIANA_APP_ICON, None).unwrap() } pub fn liana_grey_logo() -> Svg { diff --git a/gui/ui/src/theme.rs b/gui/ui/src/theme.rs index 184fb017..4d09261b 100644 --- a/gui/ui/src/theme.rs +++ b/gui/ui/src/theme.rs @@ -380,7 +380,7 @@ impl scrollable::StyleSheet for Theme { } } - fn hovered(&self, style: &Self::Style) -> scrollable::Scrollbar { + fn hovered(&self, style: &Self::Style, _is_hovered: bool) -> scrollable::Scrollbar { let active = self.active(style); scrollable::Scrollbar { ..active } } @@ -435,7 +435,7 @@ impl checkbox::StyleSheet for Theme { background: color::GREEN.into(), border_width: 0.0, border_color: iced::Color::TRANSPARENT, - checkmark_color: color::GREY_4, + icon_color: color::GREY_4, text_color: None, border_radius: 4.0, } @@ -444,7 +444,7 @@ impl checkbox::StyleSheet for Theme { background: color::GREY_4.into(), border_width: 0.0, border_color: iced::Color::TRANSPARENT, - checkmark_color: color::GREEN, + icon_color: color::GREEN, text_color: None, border_radius: 4.0, } @@ -609,12 +609,14 @@ impl text_input::StyleSheet for Theme { fn active(&self, style: &Self::Style) -> text_input::Appearance { match style { Form::Simple => text_input::Appearance { + icon_color: color::GREY_7, background: iced::Background::Color(iced::Color::TRANSPARENT), border_radius: 25.0, border_width: 1.0, border_color: color::GREY_7, }, Form::Invalid => text_input::Appearance { + icon_color: color::GREY_7, background: iced::Background::Color(iced::Color::TRANSPARENT), border_radius: 25.0, border_width: 1.0, @@ -623,12 +625,22 @@ impl text_input::StyleSheet for Theme { } } + fn disabled(&self, style: &Self::Style) -> text_input::Appearance { + text_input::Appearance { + ..self.active(style) + } + } + fn focused(&self, style: &Self::Style) -> text_input::Appearance { text_input::Appearance { ..self.active(style) } } + fn disabled_color(&self, _style: &Self::Style) -> iced::Color { + color::GREY_7 + } + fn placeholder_color(&self, _style: &Self::Style) -> iced::Color { color::GREY_7 } @@ -678,7 +690,10 @@ impl slider::StyleSheet for Theme { border_width: 1.0, }; slider::Appearance { - rail_colors: (color::GREEN, iced::Color::TRANSPARENT), + rail: slider::Rail { + colors: (color::GREEN, iced::Color::TRANSPARENT), + width: 2.0, + }, handle, } } @@ -693,7 +708,10 @@ impl slider::StyleSheet for Theme { border_width: 1.0, }; slider::Appearance { - rail_colors: (color::GREEN, iced::Color::TRANSPARENT), + rail: slider::Rail { + colors: (color::GREEN, iced::Color::TRANSPARENT), + width: 2.0, + }, handle, } } @@ -708,7 +726,10 @@ impl slider::StyleSheet for Theme { border_width: 1.0, }; slider::Appearance { - rail_colors: (color::GREEN, iced::Color::TRANSPARENT), + rail: slider::Rail { + colors: (color::GREEN, iced::Color::TRANSPARENT), + width: 2.0, + }, handle, } }