cosmic_comp_config: Some trait implementations and re-exports

This commit is contained in:
Ian Douglas Scott 2023-08-31 13:57:57 -07:00
parent 56467755a8
commit 8c3a3a9d1a

View file

@ -2,10 +2,10 @@
#![allow(non_snake_case)] #![allow(non_snake_case)]
use input::{AccelProfile, ClickMethod, ScrollMethod, TapButtonMap}; pub use input::{AccelProfile, ClickMethod, ScrollMethod, TapButtonMap};
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
#[derive(Debug, Default, Deserialize, Serialize)] #[derive(Clone, Debug, Default, Deserialize, Serialize)]
pub struct InputConfig { pub struct InputConfig {
pub state: DeviceState, pub state: DeviceState,
#[serde(skip_serializing_if = "Option::is_none", default)] #[serde(skip_serializing_if = "Option::is_none", default)]
@ -29,14 +29,14 @@ pub struct InputConfig {
pub tap_config: Option<TapConfig>, pub tap_config: Option<TapConfig>,
} }
#[derive(Debug, Deserialize, Serialize)] #[derive(Clone, Debug, Default, Deserialize, Serialize)]
pub struct AccelConfig { pub struct AccelConfig {
#[serde(with = "AccelProfileDef")] #[serde(with = "AccelProfileDef")]
pub profile: Option<AccelProfile>, pub profile: Option<AccelProfile>,
pub speed: f64, pub speed: f64,
} }
#[derive(Debug, Deserialize, Serialize)] #[derive(Clone, Debug, Default, Deserialize, Serialize)]
pub struct ScrollConfig { pub struct ScrollConfig {
#[serde(with = "ScrollMethodDef")] #[serde(with = "ScrollMethodDef")]
pub method: Option<ScrollMethod>, pub method: Option<ScrollMethod>,
@ -57,7 +57,7 @@ impl Default for DeviceState {
} }
} }
#[derive(Debug, Serialize, Deserialize)] #[derive(Clone, Debug, Serialize, Deserialize)]
pub struct TapConfig { pub struct TapConfig {
pub enabled: bool, pub enabled: bool,
#[serde(with = "TapButtonMapDef")] #[serde(with = "TapButtonMapDef")]