From 544cdaa1b82623c1550332f4b484bfe12a141ef9 Mon Sep 17 00:00:00 2001 From: Jackson Goode Date: Mon, 19 Feb 2024 13:15:04 -0800 Subject: [PATCH] Remove dbus by using zbus variant --- Cargo.lock | 45 +++++++++------------------------- psst-gui/Cargo.toml | 28 ++++++++++++++------- psst-gui/src/cmd.rs | 4 ++- psst-gui/src/ui/preferences.rs | 8 ++++-- 4 files changed, 40 insertions(+), 45 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 02288e90..e9b6f0d5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -840,26 +840,6 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f" -[[package]] -name = "dbus" -version = "0.9.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b" -dependencies = [ - "libc", - "libdbus-sys", - "winapi", -] - -[[package]] -name = "dbus-crossroads" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a4c83437187544ba5142427746835061b330446ca8902eabd70e4afb8f76de0" -dependencies = [ - "dbus", -] - [[package]] name = "dconf_rs" version = "0.3.0" @@ -2265,15 +2245,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libdbus-sys" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72" -dependencies = [ - "pkg-config", -] - [[package]] name = "libloading" version = "0.8.1" @@ -2926,6 +2897,12 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "pollster" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2" + [[package]] name = "powerfmt" version = "0.2.0" @@ -3529,18 +3506,20 @@ dependencies = [ [[package]] name = "souvlaki" -version = "0.6.1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "951a075f224d8c87bb62a08c9c27a373fd6d453407e89cae00a25e2eac74ef51" +checksum = "ea4544ba17df4ac03d6503ae8abba19adad3ae89203a425945dc4c12d7790bfa" dependencies = [ "block", "cocoa", "core-graphics", - "dbus", - "dbus-crossroads", "dispatch", "objc", + "pollster", + "thiserror", "windows 0.44.0", + "zbus", + "zvariant", ] [[package]] diff --git a/psst-gui/Cargo.toml b/psst-gui/Cargo.toml index 320aac93..3debd8ce 100644 --- a/psst-gui/Cargo.toml +++ b/psst-gui/Cargo.toml @@ -36,13 +36,23 @@ ureq = { version = "2.8.0", features = ["json", "socks-proxy"] } url = { version = "2.4.1" } # GUI -druid = { git = "https://github.com/jpochyla/druid", branch = "psst", features = ["im", "image", "jpeg", "png", "serde"] } +druid = { git = "https://github.com/jpochyla/druid", branch = "psst", features = [ + "im", + "image", + "jpeg", + "png", + "serde", +] } druid-enums = { git = "https://github.com/jpochyla/druid-enums" } -druid-shell = { git = "https://github.com/jpochyla/druid", branch = "psst", features = ["raw-win-handle"] } +druid-shell = { git = "https://github.com/jpochyla/druid", branch = "psst", features = [ + "raw-win-handle", +] } open = { version = "5.0.0" } raw-window-handle = { version = "0.5.2" } # Must stay compatible with Druid -souvlaki = { version = "0.6.1" } -webbrowser = {version = "0.8.11"} +souvlaki = { version = "0.7.3", default-features = false, features = [ + "use_zbus", +] } +webbrowser = { version = "0.8.11" } dark-light = "1.0.0" [target.'cfg(windows)'.build-dependencies] winres = { version = "0.1.12" } @@ -52,11 +62,11 @@ image = { version = "0.24.7" } name = "Psst" identifier = "com.jpochyla.psst" icon = [ - "assets/logo_32.png", - "assets/logo_64.png", - "assets/logo_128.png", - "assets/logo_256.png", - "assets/logo_512.png", + "assets/logo_32.png", + "assets/logo_64.png", + "assets/logo_128.png", + "assets/logo_256.png", + "assets/logo_512.png", ] version = "0.1.0" resources = [] diff --git a/psst-gui/src/cmd.rs b/psst-gui/src/cmd.rs index 2073cbca..c5860367 100644 --- a/psst-gui/src/cmd.rs +++ b/psst-gui/src/cmd.rs @@ -60,11 +60,13 @@ pub const PLAY_QUEUE_BEHAVIOR: Selector = Selector::new("app.play pub const PLAY_SEEK: Selector = Selector::new("app.play-seek"); // Sorting control + pub const SORT_BY_DATE_ADDED: Selector = Selector::new("app.sort-by-date-added"); pub const SORT_BY_TITLE: Selector = Selector::new("app.sort-by-title"); pub const SORT_BY_ARTIST: Selector = Selector::new("app.sort-by-artist"); pub const SORT_BY_ALBUM: Selector = Selector::new("app.sort-by-album"); pub const SORT_BY_DURATION: Selector = Selector::new("app.sort-by-duration"); -//Sort direction control +// Sort direction control + pub const TOGGLE_SORT_ORDER: Selector = Selector::new("app.toggle-sort-order"); diff --git a/psst-gui/src/ui/preferences.rs b/psst-gui/src/ui/preferences.rs index 449c32eb..7f8ef4a0 100644 --- a/psst-gui/src/ui/preferences.rs +++ b/psst-gui/src/ui/preferences.rs @@ -157,8 +157,12 @@ fn general_tab_widget() -> impl Widget { .with_child(Label::new("Theme").with_font(theme::UI_FONT_MEDIUM)) .with_spacer(theme::grid(2.0)) .with_child( - RadioGroup::column(vec![("Light", Theme::Light), ("Dark", Theme::Dark), ("System", Theme::System)]) - .lens(AppState::config.then(Config::theme)), + RadioGroup::column(vec![ + ("Light", Theme::Light), + ("Dark", Theme::Dark), + ("System", Theme::System), + ]) + .lens(AppState::config.then(Config::theme)), ); col = col.with_spacer(theme::grid(1.5));