From d00c76fa9ee0315adb9e35358bc58de18a82317b Mon Sep 17 00:00:00 2001 From: Fabio Lenherr / DashieTM Date: Fri, 10 Nov 2023 22:00:39 +0100 Subject: [PATCH] feat: Add inbuilt daemon and create preference/shorcut window shell --- Cargo.toml | 14 ++++++++++-- src/components/window/window.rs | 12 +++++++++++ src/components/window/windowImpl.rs | 10 ++++++--- src/main.rs | 33 ++++++++++++++++++++++------- 4 files changed, 56 insertions(+), 13 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 9427eff..453c19f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,11 +5,21 @@ edition = "2021" description = "A wip universal Linux settings application." [dependencies] +reset_daemon = "0.1.0" ReSet-Lib = "0.2.3" -adw = { version = "0.5.3", package = "libadwaita", features = ["v1_4"]} +adw = { version = "0.5.3", package = "libadwaita", features = ["v1_4"] } dbus = "0.9.7" -gtk = { version = "0.7.3", package = "gtk4", features = ["v4_12"]} +gtk = { version = "0.7.3", package = "gtk4", features = ["v4_12"] } glib = "0.18.3" +tokio = { version = "1.33.0", features = [ + "rt", + "time", + "net", + "macros", + "rt-multi-thread", + "sync", +] } +fork = "0.1.22" [build-dependencies] glib-build-tools = "0.18.0" diff --git a/src/components/window/window.rs b/src/components/window/window.rs index b097f40..e3e341b 100644 --- a/src/components/window/window.rs +++ b/src/components/window/window.rs @@ -262,5 +262,17 @@ impl Window { dialog.present(); })); + selfImp + .resetPreferenceButton + .connect_clicked(clone!(@weak self as window => move |_| { + let preferences = adw::PreferencesWindow::builder().build(); + preferences.present(); + })); + selfImp + .resetShortcutsButton + .connect_clicked(clone!(@weak self as window => move |_| { + let shortcuts = gtk::ShortcutsWindow::builder().build(); + shortcuts.present(); + })); } } diff --git a/src/components/window/windowImpl.rs b/src/components/window/windowImpl.rs index b4b2de1..eda7bcd 100644 --- a/src/components/window/windowImpl.rs +++ b/src/components/window/windowImpl.rs @@ -1,15 +1,15 @@ use std::cell::RefCell; -use adw::{Breakpoint, OverlaySplitView}; use adw::glib::StaticTypeExt; use adw::subclass::prelude::AdwApplicationWindowImpl; +use adw::{Breakpoint, OverlaySplitView}; use glib::subclass::InitializingObject; -use gtk::{Box, Button, CompositeTemplate, FlowBox, glib, ListBox, PopoverMenu, SearchEntry}; use gtk::subclass::prelude::*; +use gtk::{glib, Box, Button, CompositeTemplate, FlowBox, ListBox, PopoverMenu, SearchEntry}; use crate::components::wifi::wifiBox::WifiBox; -use crate::components::window::window; use crate::components::window::sidebarEntry::SidebarEntry; +use crate::components::window::window; #[allow(non_snake_case)] #[derive(CompositeTemplate, Default)] @@ -35,6 +35,10 @@ pub struct Window { pub resetClose: TemplateChild