cosmic-applets/cosmic-applet-audio/src/config.rs

32 lines
980 B
Rust
Raw Normal View History

2024-05-06 15:39:04 +02:00
// Copyright 2023 System76 <info@system76.com>
// SPDX-License-Identifier: GPL-3.0-only
use cosmic::cosmic_config::{
self, Config, ConfigGet, CosmicConfigEntry, cosmic_config_derive::CosmicConfigEntry,
};
2023-10-23 21:12:35 -04:00
use serde::{Deserialize, Serialize};
const AUDIO_CONFIG: &str = "com.system76.CosmicAudio";
const AMPLIFICATION_SINK: &str = "amplification_sink";
const AMPLIFICATION_SOURCE: &str = "amplification_source";
pub fn amplification_sink() -> bool {
Config::new(AUDIO_CONFIG, 1)
.ok()
.and_then(|config| config.get::<bool>(AMPLIFICATION_SINK).ok())
.unwrap_or(true)
}
pub fn amplification_source() -> bool {
Config::new(AUDIO_CONFIG, 1)
.ok()
.and_then(|config| config.get::<bool>(AMPLIFICATION_SOURCE).ok())
.unwrap_or(false)
}
2023-10-23 21:12:35 -04:00
#[derive(Default, Debug, Clone, Serialize, Deserialize, CosmicConfigEntry, PartialEq, Eq)]
2024-03-07 20:57:56 -05:00
#[version = 1]
2023-10-23 21:12:35 -04:00
pub struct AudioAppletConfig {
pub show_media_controls_in_top_panel: bool,
}