leftwm_core/config/
window_hiding_strategy.rs

1use serde::{Deserialize, Serialize};
2
3/// The stategy used to hide windows when switching tags in the backend
4#[derive(Serialize, Deserialize, Debug, Default, Clone, Copy, PartialEq, Eq)]
5pub enum WindowHidingStrategy {
6    /// The common behaviour for a window manager, but it prevents hidden windows from being
7    /// captured by other applications
8    Unmap,
9    /// Move the windows out of the visible area, so it can still be captured by some applications.
10    /// We still inform the window that it is in a "minimized"-like state, so it can probably
11    /// decide to not render its content as if it was focused.
12    MoveMinimize,
13    /// Move the windows out of the visible area and don't minilize them.
14    /// This should allow all applications to be captured by any other applications.
15    /// This could result in higher resource usage, since windows will render their content like
16    /// normal even if hidden.
17    #[default]
18    MoveOnly,
19}