From c5ef072cffec6e97777ae66f1ee8edaaf7a7d84d Mon Sep 17 00:00:00 2001 From: MaxVerevkin Date: Wed, 1 Feb 2023 17:32:45 +0200 Subject: add position config option --- src/config.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/config.rs') diff --git a/src/config.rs b/src/config.rs index a20f60e..9770858 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,4 +1,5 @@ use crate::color::Color; +use crate::protocol::zwlr_layer_surface_v1; use anyhow::{Context, Result}; use dirs_next::config_dir; use pangocairo::pango::FontDescription; @@ -33,6 +34,7 @@ pub struct Config { // command pub command: Option, // misc + pub position: Position, pub hide_inactive_tags: bool, pub invert_touchpad_scrolling: bool, pub show_layout_name: bool, @@ -61,6 +63,7 @@ impl Default for Config { blocks_r: 0.0, blocks_overlap: 0.0, command: None, + position: Position::Top, hide_inactive_tags: true, invert_touchpad_scrolling: true, show_layout_name: true, @@ -92,6 +95,22 @@ impl Config { } } +#[derive(Deserialize, Debug, Clone, Copy)] +#[serde(rename_all = "lowercase")] +pub enum Position { + Top, + Bottom, +} + +impl From for zwlr_layer_surface_v1::Anchor { + fn from(position: Position) -> Self { + match position { + Position::Top => Self::Top | Self::Left | Self::Right, + Position::Bottom => Self::Bottom | Self::Left | Self::Right, + } + } +} + #[derive(Debug)] pub struct Font(pub FontDescription); -- cgit v1.3.1