diff --git a/Cargo.toml b/Cargo.toml index a88dbed..e13e3c5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -142,9 +142,6 @@ mpris = { version = "2.0.1", optional = true } # networkmanager futures-signals = { version = "0.3.33", optional = true } -# schema -schemars = { version = "0.8.21", optional = true } - # sys_info sysinfo = { version = "0.29.11", optional = true } @@ -168,3 +165,6 @@ regex = { version = "1.10.4", default-features = false, features = [ "std", ], optional = true } # music, sys_info zbus = { version = "3.15.2", default-features = false, features = ["tokio"], optional = true } # networkmanager, notifications, upower + +# schema +schemars = { version = "0.8.21", optional = true } diff --git a/src/modules/networkmanager.rs b/src/modules/networkmanager.rs index 16e8239..a4404a9 100644 --- a/src/modules/networkmanager.rs +++ b/src/modules/networkmanager.rs @@ -3,6 +3,7 @@ use futures_lite::StreamExt; use futures_signals::signal::SignalExt; use gtk::prelude::ContainerExt; use gtk::{Box as GtkBox, Image, Orientation}; +use schemars::JsonSchema; use serde::Deserialize; use tokio::sync::mpsc::Receiver; @@ -14,6 +15,7 @@ use crate::modules::{Module, ModuleInfo, ModuleParts, ModuleUpdateEvent, WidgetC use crate::{glib_recv, module_impl, send_async, spawn}; #[derive(Debug, Deserialize, Clone)] +#[cfg_attr(feature = "schema", derive(JsonSchema))] pub struct NetworkManagerModule { #[serde(default = "default_icon_size")] icon_size: i32,