mirror of
https://github.com/LGUG2Z/komorebi.git
synced 2026-01-11 06:30:24 +01:00
docs(schema): ensure all public-facing static config opts have docstrings
This commit is contained in:
@@ -11,6 +11,7 @@ use serde::Serialize;
|
||||
#[derive(Debug, Copy, Clone, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
#[serde(untagged)]
|
||||
/// Colour representation
|
||||
pub enum Colour {
|
||||
/// Colour represented as RGB
|
||||
Rgb(Rgb),
|
||||
@@ -52,6 +53,7 @@ impl From<Colour> for Color32 {
|
||||
}
|
||||
}
|
||||
|
||||
/// Colour represented as a Hex string
|
||||
#[derive(Debug, Copy, Clone, Serialize, Deserialize, PartialEq)]
|
||||
pub struct Hex(pub HexColor);
|
||||
|
||||
@@ -64,7 +66,8 @@ impl schemars::JsonSchema for Hex {
|
||||
fn json_schema(_: &mut SchemaGenerator) -> Schema {
|
||||
schemars::json_schema!({
|
||||
"type": "string",
|
||||
"format": "color-hex"
|
||||
"format": "color-hex",
|
||||
"description": "Colour represented as a Hex string"
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -80,6 +83,7 @@ impl From<Colour> for u32 {
|
||||
|
||||
#[derive(Debug, Copy, Clone, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Colour represented as RGB
|
||||
pub struct Rgb {
|
||||
/// Red
|
||||
pub r: u32,
|
||||
|
||||
@@ -12,9 +12,12 @@ use serde::Serialize;
|
||||
|
||||
#[derive(Debug, Default, Copy, Clone, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Theme variant
|
||||
pub enum ThemeVariant {
|
||||
#[default]
|
||||
/// Dark variant
|
||||
Dark,
|
||||
/// Light variant
|
||||
Light,
|
||||
}
|
||||
|
||||
|
||||
@@ -28,18 +28,19 @@ use serde_variant::to_variant_name;
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, JsonSchema, PartialEq)]
|
||||
#[serde(tag = "type")]
|
||||
/// Theme
|
||||
pub enum Theme {
|
||||
/// A theme from catppuccin-egui
|
||||
/// Theme from catppuccin-egui
|
||||
Catppuccin {
|
||||
name: Catppuccin,
|
||||
accent: Option<CatppuccinValue>,
|
||||
},
|
||||
/// A theme from base16-egui-themes
|
||||
/// Theme from base16-egui-themes
|
||||
Base16 {
|
||||
name: Base16,
|
||||
accent: Option<Base16Value>,
|
||||
},
|
||||
/// A custom base16 palette
|
||||
/// Custom base16 palette
|
||||
Custom {
|
||||
palette: Box<Base16ColourPalette>,
|
||||
accent: Option<Base16Value>,
|
||||
@@ -47,22 +48,39 @@ pub enum Theme {
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, Serialize, Deserialize, JsonSchema, PartialEq)]
|
||||
/// Base16 colour palette: https://github.com/chriskempson/base16
|
||||
pub struct Base16ColourPalette {
|
||||
/// Base00
|
||||
pub base_00: Colour,
|
||||
/// Base01
|
||||
pub base_01: Colour,
|
||||
/// Base02
|
||||
pub base_02: Colour,
|
||||
/// Base03
|
||||
pub base_03: Colour,
|
||||
/// Base04
|
||||
pub base_04: Colour,
|
||||
/// Base05
|
||||
pub base_05: Colour,
|
||||
/// Base06
|
||||
pub base_06: Colour,
|
||||
/// Base07
|
||||
pub base_07: Colour,
|
||||
/// Base08
|
||||
pub base_08: Colour,
|
||||
/// Base09
|
||||
pub base_09: Colour,
|
||||
/// Base0A
|
||||
pub base_0a: Colour,
|
||||
/// Base0B
|
||||
pub base_0b: Colour,
|
||||
/// Base0C
|
||||
pub base_0c: Colour,
|
||||
/// Base0D
|
||||
pub base_0d: Colour,
|
||||
/// Base0E
|
||||
pub base_0e: Colour,
|
||||
/// Base0F
|
||||
pub base_0f: Colour,
|
||||
}
|
||||
|
||||
@@ -199,28 +217,48 @@ impl Theme {
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, Default, Serialize, Deserialize, JsonSchema, Display, PartialEq)]
|
||||
/// Base16 value
|
||||
pub enum Base16Value {
|
||||
/// Base00
|
||||
Base00,
|
||||
/// Base01
|
||||
Base01,
|
||||
/// Base02
|
||||
Base02,
|
||||
/// Base03
|
||||
Base03,
|
||||
/// Base04
|
||||
Base04,
|
||||
/// Base05
|
||||
Base05,
|
||||
/// Base06
|
||||
#[default]
|
||||
Base06,
|
||||
/// Base07
|
||||
Base07,
|
||||
/// Base08
|
||||
Base08,
|
||||
/// Base09
|
||||
Base09,
|
||||
/// Base0A
|
||||
Base0A,
|
||||
/// Base0B
|
||||
Base0B,
|
||||
/// Base0C
|
||||
Base0C,
|
||||
/// Base0D
|
||||
Base0D,
|
||||
/// Base0E
|
||||
Base0E,
|
||||
/// Base0F
|
||||
Base0F,
|
||||
}
|
||||
|
||||
/// Wrapper around a Base16 colour palette
|
||||
pub enum Base16Wrapper {
|
||||
/// Predefined Base16 colour palette
|
||||
Base16(Base16),
|
||||
/// Custom Base16 colour palette
|
||||
Custom(Box<Base16ColourPalette>),
|
||||
}
|
||||
|
||||
@@ -268,10 +306,15 @@ impl Base16Value {
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, Serialize, Deserialize, JsonSchema, Display, PartialEq)]
|
||||
/// Catppuccin palette
|
||||
pub enum Catppuccin {
|
||||
/// Frappe
|
||||
Frappe,
|
||||
/// Latte
|
||||
Latte,
|
||||
/// Macchiato
|
||||
Macchiato,
|
||||
/// Mocha
|
||||
Mocha,
|
||||
}
|
||||
|
||||
@@ -293,33 +336,60 @@ impl From<Catppuccin> for catppuccin_egui::Theme {
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, Default, Serialize, Deserialize, JsonSchema, Display, PartialEq)]
|
||||
/// Catppuccin Value
|
||||
pub enum CatppuccinValue {
|
||||
/// Rosewater
|
||||
Rosewater,
|
||||
/// Flamingo
|
||||
Flamingo,
|
||||
/// Pink
|
||||
Pink,
|
||||
/// Mauve
|
||||
Mauve,
|
||||
/// Red
|
||||
Red,
|
||||
/// Maroon
|
||||
Maroon,
|
||||
/// Peach
|
||||
Peach,
|
||||
/// Yellow
|
||||
Yellow,
|
||||
/// Green
|
||||
Green,
|
||||
/// Teal
|
||||
Teal,
|
||||
/// Sky
|
||||
Sky,
|
||||
/// Sapphire
|
||||
Sapphire,
|
||||
/// Blue
|
||||
Blue,
|
||||
/// Lavender
|
||||
Lavender,
|
||||
#[default]
|
||||
/// Text
|
||||
Text,
|
||||
/// Subtext1
|
||||
Subtext1,
|
||||
/// Subtext0
|
||||
Subtext0,
|
||||
/// Overlay2
|
||||
Overlay2,
|
||||
/// Overlay1
|
||||
Overlay1,
|
||||
/// Overlay0
|
||||
Overlay0,
|
||||
/// Surface2
|
||||
Surface2,
|
||||
/// Surface1
|
||||
Surface1,
|
||||
/// Surface0
|
||||
Surface0,
|
||||
/// Base
|
||||
Base,
|
||||
/// Mantle
|
||||
Mantle,
|
||||
/// Crust
|
||||
Crust,
|
||||
}
|
||||
|
||||
|
||||
@@ -25,8 +25,33 @@ use serde::Serialize;
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
#[serde(untagged)]
|
||||
/// Animation configuration
|
||||
///
|
||||
/// This can be either global:
|
||||
/// ```json
|
||||
/// {
|
||||
/// "enabled": true,
|
||||
/// "style": "EaseInSine",
|
||||
/// "fps": 60,
|
||||
/// "duration": 250
|
||||
/// }
|
||||
/// ```
|
||||
///
|
||||
/// Or scoped by an animation kind prefix:
|
||||
/// ```json
|
||||
/// {
|
||||
/// "movement": {
|
||||
/// "enabled": true,
|
||||
/// "style": "EaseInSine",
|
||||
/// "fps": 60,
|
||||
/// "duration": 250
|
||||
/// }
|
||||
/// }
|
||||
/// ```
|
||||
pub enum PerAnimationPrefixConfig<T> {
|
||||
/// Animation configuration prefixed for a specific animation kind
|
||||
Prefix(HashMap<AnimationPrefix, T>),
|
||||
/// Animation configuration for all animation kinds
|
||||
Global(T),
|
||||
}
|
||||
|
||||
|
||||
@@ -420,6 +420,7 @@ pub fn apply_ease_func(t: f64, style: AnimationStyle) -> f64 {
|
||||
AnimationStyle::EaseOutQuad => EaseOutQuad::evaluate(t),
|
||||
AnimationStyle::EaseInOutQuad => EaseInOutQuad::evaluate(t),
|
||||
AnimationStyle::EaseInCubic => EaseInCubic::evaluate(t),
|
||||
AnimationStyle::EaseOutCubic => EaseOutCubic::evaluate(t),
|
||||
AnimationStyle::EaseInOutCubic => EaseInOutCubic::evaluate(t),
|
||||
AnimationStyle::EaseInQuart => EaseInQuart::evaluate(t),
|
||||
AnimationStyle::EaseOutQuart => EaseOutQuart::evaluate(t),
|
||||
|
||||
@@ -813,10 +813,26 @@ pub fn hide_border(tracking_hwnd: isize) {
|
||||
|
||||
#[derive(Debug, Copy, Clone, Display, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Z Order (https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwindowpos)
|
||||
pub enum ZOrder {
|
||||
/// HWND_TOP
|
||||
///
|
||||
/// Places the window at the top of the Z order.
|
||||
Top,
|
||||
/// HWND_NOTOPMOST
|
||||
///
|
||||
/// Places the window above all non-topmost windows (that is, behind all topmost windows).
|
||||
/// This flag has no effect if the window is already a non-topmost window.
|
||||
NoTopMost,
|
||||
/// HWND_BOTTOM
|
||||
///
|
||||
/// Places the window at the bottom of the Z order. If the hWnd parameter identifies a topmost window,
|
||||
/// the window loses its topmost status and is placed at the bottom of all other windows.
|
||||
Bottom,
|
||||
/// HWND_TOPMOST
|
||||
///
|
||||
/// Places the window above all non-topmost windows.
|
||||
/// The window maintains its topmost position even when it is deactivated.
|
||||
TopMost,
|
||||
}
|
||||
|
||||
|
||||
@@ -8,38 +8,72 @@ use strum::EnumString;
|
||||
|
||||
#[derive(Copy, Clone, Debug, Display, EnumString, ValueEnum, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Mathematical function which describes the rate at which a value changes
|
||||
pub enum AnimationStyle {
|
||||
/// Linear
|
||||
Linear,
|
||||
/// Ease in sine
|
||||
EaseInSine,
|
||||
/// Ease out sine
|
||||
EaseOutSine,
|
||||
/// Ease in out sine
|
||||
EaseInOutSine,
|
||||
/// Ease in quad
|
||||
EaseInQuad,
|
||||
/// Ease out quad
|
||||
EaseOutQuad,
|
||||
/// Ease in out quad
|
||||
EaseInOutQuad,
|
||||
/// Ease in cubic
|
||||
EaseInCubic,
|
||||
/// Ease out cubic
|
||||
EaseOutCubic,
|
||||
/// Ease in out cubic
|
||||
EaseInOutCubic,
|
||||
/// Ease in quart
|
||||
EaseInQuart,
|
||||
/// Ease out quart
|
||||
EaseOutQuart,
|
||||
/// Ease in out quart
|
||||
EaseInOutQuart,
|
||||
/// Ease in quint
|
||||
EaseInQuint,
|
||||
/// Ease out quint
|
||||
EaseOutQuint,
|
||||
/// Ease in out quint
|
||||
EaseInOutQuint,
|
||||
/// Ease in expo
|
||||
EaseInExpo,
|
||||
/// Ease out expo
|
||||
EaseOutExpo,
|
||||
/// Ease in out expo
|
||||
EaseInOutExpo,
|
||||
/// Ease in circ
|
||||
EaseInCirc,
|
||||
/// Ease out circ
|
||||
EaseOutCirc,
|
||||
/// Ease in out circ
|
||||
EaseInOutCirc,
|
||||
/// Ease in back
|
||||
EaseInBack,
|
||||
/// Ease out back
|
||||
EaseOutBack,
|
||||
/// Ease in out back
|
||||
EaseInOutBack,
|
||||
/// Ease in elastic
|
||||
EaseInElastic,
|
||||
/// Ease out elastic
|
||||
EaseOutElastic,
|
||||
/// Ease in out elastic
|
||||
EaseInOutElastic,
|
||||
/// Ease in bounce
|
||||
EaseInBounce,
|
||||
/// Ease out bounce
|
||||
EaseOutBounce,
|
||||
/// Ease in out bounce
|
||||
EaseInOutBounce,
|
||||
#[value(skip)]
|
||||
/// Custom Cubic Bézier function
|
||||
CubicBezier(f64, f64, f64, f64),
|
||||
}
|
||||
|
||||
|
||||
@@ -704,9 +704,13 @@ impl Arrangement for CustomLayout {
|
||||
|
||||
#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Axis on which to perform an operation
|
||||
pub enum Axis {
|
||||
/// Horizontal axis
|
||||
Horizontal,
|
||||
/// Vertical axis
|
||||
Vertical,
|
||||
/// Both horizontal and vertical axes
|
||||
HorizontalAndVertical,
|
||||
}
|
||||
|
||||
|
||||
@@ -53,41 +53,64 @@ impl ApplicationOptions {
|
||||
#[derive(Clone, Debug, Eq, PartialEq, Serialize, Deserialize)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
#[serde(untagged)]
|
||||
/// Rule for matching applications
|
||||
pub enum MatchingRule {
|
||||
/// Simple matching rule which must evaluate to true
|
||||
Simple(IdWithIdentifier),
|
||||
/// Composite matching rule where all conditions must evaluate to true
|
||||
Composite(Vec<IdWithIdentifier>),
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Eq, PartialEq, Serialize, Deserialize)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Rule for assigning applications to a workspace
|
||||
pub struct WorkspaceMatchingRule {
|
||||
/// Target monitor index
|
||||
pub monitor_index: usize,
|
||||
/// Target workspace index
|
||||
pub workspace_index: usize,
|
||||
/// Matching rule for the application
|
||||
pub matching_rule: MatchingRule,
|
||||
/// Whether to apply the rule only when the application is initially launched
|
||||
pub initial_only: bool,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Eq, PartialEq, Serialize, Deserialize)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Rule for matching applications
|
||||
pub struct IdWithIdentifier {
|
||||
/// Kind of identifier to target
|
||||
pub kind: ApplicationIdentifier,
|
||||
/// Target identifier
|
||||
pub id: String,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
/// Matching strategy to use
|
||||
pub matching_strategy: Option<MatchingStrategy>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Eq, PartialEq, Serialize, Deserialize, Display)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Strategy for matching identifiers
|
||||
pub enum MatchingStrategy {
|
||||
/// Should not be used, only kept for backward compatibility
|
||||
Legacy,
|
||||
/// Equals
|
||||
Equals,
|
||||
/// Starts With
|
||||
StartsWith,
|
||||
/// Ends With
|
||||
EndsWith,
|
||||
/// Contains
|
||||
Contains,
|
||||
/// Regex
|
||||
Regex,
|
||||
/// Does not end with
|
||||
DoesNotEndWith,
|
||||
/// Does not start with
|
||||
DoesNotStartWith,
|
||||
/// Does not equal
|
||||
DoesNotEqual,
|
||||
/// Does not contain
|
||||
DoesNotContain,
|
||||
}
|
||||
|
||||
|
||||
@@ -12,21 +12,109 @@ use super::Sizing;
|
||||
Clone, Copy, Debug, Serialize, Deserialize, Eq, PartialEq, Display, EnumString, ValueEnum,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// A predefined komorebi layout
|
||||
pub enum DefaultLayout {
|
||||
/// BSP Layout
|
||||
///
|
||||
/// ```
|
||||
/// +-------+-----+
|
||||
/// | | |
|
||||
/// | +--+--+
|
||||
/// | | |--|
|
||||
/// +-------+--+--+
|
||||
/// ```
|
||||
BSP,
|
||||
/// Columns Layout
|
||||
///
|
||||
/// ```
|
||||
/// +--+--+--+--+
|
||||
/// | | | | |
|
||||
/// | | | | |
|
||||
/// | | | | |
|
||||
/// +--+--+--+--+
|
||||
/// ```
|
||||
Columns,
|
||||
/// Rows Layout
|
||||
///
|
||||
/// ```
|
||||
/// +-----------+
|
||||
/// |-----------|
|
||||
/// |-----------|
|
||||
/// |-----------|
|
||||
/// +-----------+
|
||||
/// ```
|
||||
Rows,
|
||||
/// Vertical Stack Layout
|
||||
///
|
||||
/// ```
|
||||
/// +-------+-----+
|
||||
/// | | |
|
||||
/// | +-----+
|
||||
/// | | |
|
||||
/// +-------+-----+
|
||||
/// ```
|
||||
VerticalStack,
|
||||
/// Horizontal Stack Layout
|
||||
///
|
||||
/// ```
|
||||
/// +------+------+
|
||||
/// | |
|
||||
/// |------+------+
|
||||
/// | | |
|
||||
/// +------+------+
|
||||
/// ```
|
||||
HorizontalStack,
|
||||
/// Ultrawide Vertical Stack Layout
|
||||
///
|
||||
/// ```
|
||||
/// +-----+-----------+-----+
|
||||
/// | | | |
|
||||
/// | | +-----+
|
||||
/// | | | |
|
||||
/// | | +-----+
|
||||
/// | | | |
|
||||
/// +-----+-----------+-----+
|
||||
/// ```
|
||||
UltrawideVerticalStack,
|
||||
/// Grid Layout
|
||||
///
|
||||
/// ```
|
||||
/// +-----+-----+ +---+---+---+ +---+---+---+ +---+---+---+
|
||||
///| | | | | | | | | | | | | | |
|
||||
///| | | | | | | | | | | | | +---+
|
||||
///+-----+-----+ | +---+---+ +---+---+---+ +---+---| |
|
||||
///| | | | | | | | | | | | | +---+
|
||||
///| | | | | | | | | | | | | | |
|
||||
///+-----+-----+ +---+---+---+ +---+---+---+ +---+---+---+
|
||||
/// 4 windows 5 windows 6 windows 7 windows
|
||||
///```
|
||||
Grid,
|
||||
/// Right Main Vertical Stack Layout
|
||||
///
|
||||
/// ```
|
||||
/// +-----+-------+
|
||||
/// | | |
|
||||
/// +-----+ |
|
||||
/// | | |
|
||||
/// +-----+-------+
|
||||
/// ```
|
||||
RightMainVerticalStack,
|
||||
/// Scrolling Layout
|
||||
///
|
||||
/// ```
|
||||
/// +--+--+--+--+--+--+
|
||||
/// | | | |
|
||||
/// | | | |
|
||||
/// | | | |
|
||||
/// +--+--+--+--+--+--+
|
||||
/// ```
|
||||
Scrolling,
|
||||
// NOTE: If any new layout is added, please make sure to register the same in `DefaultLayout::cycle`
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, Debug, Serialize, Deserialize, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Options for specific layouts
|
||||
pub struct LayoutOptions {
|
||||
/// Options related to the Scrolling layout
|
||||
pub scrolling: Option<ScrollingLayoutOptions>,
|
||||
@@ -36,6 +124,7 @@ pub struct LayoutOptions {
|
||||
|
||||
#[derive(Clone, Copy, Debug, Serialize, Deserialize, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Options for the Scrolling layout
|
||||
pub struct ScrollingLayoutOptions {
|
||||
/// Desired number of visible columns (default: 3)
|
||||
pub columns: usize,
|
||||
@@ -45,6 +134,7 @@ pub struct ScrollingLayoutOptions {
|
||||
|
||||
#[derive(Clone, Copy, Debug, Serialize, Deserialize, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Options for the Grid layout
|
||||
pub struct GridLayoutOptions {
|
||||
/// Maximum number of rows per grid column
|
||||
pub rows: usize,
|
||||
|
||||
@@ -274,17 +274,24 @@ pub struct SubscribeOptions {
|
||||
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Display, Serialize, Deserialize, ValueEnum)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Stackbar mode
|
||||
pub enum StackbarMode {
|
||||
/// Always show
|
||||
Always,
|
||||
/// Never show
|
||||
Never,
|
||||
/// Show on stack
|
||||
OnStack,
|
||||
}
|
||||
|
||||
#[derive(Debug, Copy, Default, Clone, Eq, PartialEq, Display, Serialize, Deserialize)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Starbar label
|
||||
pub enum StackbarLabel {
|
||||
#[default]
|
||||
/// Process name
|
||||
Process,
|
||||
/// Window title
|
||||
Title,
|
||||
}
|
||||
|
||||
@@ -292,6 +299,7 @@ pub enum StackbarLabel {
|
||||
Default, Copy, Clone, Debug, Eq, PartialEq, Display, Serialize, Deserialize, ValueEnum,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Border style
|
||||
pub enum BorderStyle {
|
||||
#[default]
|
||||
/// Use the system border style
|
||||
@@ -306,6 +314,7 @@ pub enum BorderStyle {
|
||||
Default, Copy, Clone, Debug, Eq, PartialEq, Display, Serialize, Deserialize, ValueEnum,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Border style
|
||||
pub enum BorderImplementation {
|
||||
#[default]
|
||||
/// Use the adjustable komorebi border implementation
|
||||
@@ -329,13 +338,20 @@ pub enum BorderImplementation {
|
||||
Hash,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Window kind
|
||||
pub enum WindowKind {
|
||||
/// Single window
|
||||
Single,
|
||||
/// Stack container
|
||||
Stack,
|
||||
/// Monocle container
|
||||
Monocle,
|
||||
#[default]
|
||||
/// Unfocused window
|
||||
Unfocused,
|
||||
/// Unfocused locked container
|
||||
UnfocusedLocked,
|
||||
/// Floating window
|
||||
Floating,
|
||||
}
|
||||
|
||||
@@ -356,30 +372,37 @@ pub enum StateQuery {
|
||||
Copy, Clone, Debug, Eq, PartialEq, Serialize, Deserialize, Display, EnumString, ValueEnum,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Application identifier
|
||||
pub enum ApplicationIdentifier {
|
||||
/// Executable name
|
||||
#[serde(alias = "exe")]
|
||||
Exe,
|
||||
/// Class
|
||||
#[serde(alias = "class")]
|
||||
Class,
|
||||
#[serde(alias = "title")]
|
||||
/// Window title
|
||||
Title,
|
||||
/// Executable path
|
||||
#[serde(alias = "path")]
|
||||
Path,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, PartialEq, Serialize, Deserialize, Display, EnumString, ValueEnum)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Focus follows mouse implementation
|
||||
pub enum FocusFollowsMouseImplementation {
|
||||
/// A custom FFM implementation (slightly more CPU-intensive)
|
||||
/// Custom FFM implementation (slightly more CPU-intensive)
|
||||
Komorebi,
|
||||
/// The native (legacy) Windows FFM implementation
|
||||
/// Native (legacy) Windows FFM implementation
|
||||
Windows,
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, Debug, Default, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Window management behaviour
|
||||
pub struct WindowManagementBehaviour {
|
||||
/// The current WindowContainerBehaviour to be used
|
||||
/// The current [`WindowContainerBehaviour`] to be used
|
||||
pub current_behaviour: WindowContainerBehaviour,
|
||||
/// Override of `current_behaviour` to open new windows as floating windows
|
||||
/// that can be later toggled to tiled, when false it will default to
|
||||
@@ -406,6 +429,7 @@ pub struct WindowManagementBehaviour {
|
||||
Clone, Copy, Debug, Default, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Window container behaviour when a new window is opened
|
||||
pub enum WindowContainerBehaviour {
|
||||
/// Create a new container for each new window
|
||||
#[default]
|
||||
@@ -418,6 +442,7 @@ pub enum WindowContainerBehaviour {
|
||||
Clone, Copy, Debug, Default, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Floating layer behaviour when a new window is opened
|
||||
pub enum FloatingLayerBehaviour {
|
||||
/// Tile new windows (unless they match a float rule or float override is active)
|
||||
#[default]
|
||||
@@ -430,6 +455,7 @@ pub enum FloatingLayerBehaviour {
|
||||
Clone, Copy, Debug, Default, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Placement behaviour for floating windows
|
||||
pub enum Placement {
|
||||
/// Does not change the size or position of the window
|
||||
#[default]
|
||||
@@ -469,6 +495,7 @@ impl Placement {
|
||||
Clone, Copy, Debug, Default, PartialEq, Serialize, Deserialize, Display, EnumString, ValueEnum,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Move behaviour when the operation works across a monitor boundary
|
||||
pub enum MoveBehaviour {
|
||||
/// Swap the window container with the window container at the edge of the adjacent monitor
|
||||
#[default]
|
||||
@@ -483,6 +510,7 @@ pub enum MoveBehaviour {
|
||||
Clone, Copy, Debug, Default, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Behaviour when an action would cross a monitor boundary
|
||||
pub enum CrossBoundaryBehaviour {
|
||||
/// Attempt to perform actions across a workspace boundary
|
||||
Workspace,
|
||||
@@ -493,6 +521,7 @@ pub enum CrossBoundaryBehaviour {
|
||||
|
||||
#[derive(Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Window hiding behaviour
|
||||
pub enum HidingBehaviour {
|
||||
/// END OF LIFE FEATURE: Use the `SW_HIDE` flag to hide windows when switching workspaces (has issues with Electron apps)
|
||||
#[deprecated(note = "End of life feature")]
|
||||
@@ -507,18 +536,22 @@ pub enum HidingBehaviour {
|
||||
Clone, Copy, Debug, Default, PartialEq, Serialize, Deserialize, Display, EnumString, ValueEnum,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Operation behaviour for temporarily unmanaged and floating windows
|
||||
pub enum OperationBehaviour {
|
||||
/// Process komorebic commands on temporarily unmanaged/floated windows
|
||||
/// Process commands on temporarily unmanaged/floated windows
|
||||
#[default]
|
||||
Op,
|
||||
/// Ignore komorebic commands on temporarily unmanaged/floated windows
|
||||
/// Ignore commands on temporarily unmanaged/floated windows
|
||||
NoOp,
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Sizing
|
||||
pub enum Sizing {
|
||||
/// Increase
|
||||
Increase,
|
||||
/// Decrease
|
||||
Decrease,
|
||||
}
|
||||
|
||||
@@ -542,9 +575,12 @@ impl Sizing {
|
||||
Clone, Copy, Debug, Default, Serialize, Deserialize, Display, EnumString, ValueEnum, PartialEq,
|
||||
)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Window handling behaviour
|
||||
pub enum WindowHandlingBehaviour {
|
||||
#[default]
|
||||
/// Synchronous
|
||||
Sync,
|
||||
/// Asynchronous
|
||||
Async,
|
||||
}
|
||||
|
||||
|
||||
@@ -4,14 +4,15 @@ use windows::Win32::Foundation::RECT;
|
||||
|
||||
#[derive(Debug, Default, Clone, Copy, Serialize, Deserialize, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Rectangle dimensions
|
||||
pub struct Rect {
|
||||
/// The left point in a Win32 Rect
|
||||
/// Left point of the rectangle
|
||||
pub left: i32,
|
||||
/// The top point in a Win32 Rect
|
||||
/// Top point of the rectangle
|
||||
pub top: i32,
|
||||
/// The right point in a Win32 Rect
|
||||
/// Width of the recentangle (from the left point)
|
||||
pub right: i32,
|
||||
/// The bottom point in a Win32 Rect
|
||||
/// Height of the rectangle (from the top point)
|
||||
pub bottom: i32,
|
||||
}
|
||||
|
||||
|
||||
@@ -127,6 +127,7 @@ mod defaults {
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Border colours for different container states
|
||||
pub struct BorderColours {
|
||||
/// Border colour when the container contains a single window
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
@@ -150,6 +151,7 @@ pub struct BorderColours {
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Theme options
|
||||
pub struct ThemeOptions {
|
||||
/// Specify Light or Dark variant for theme generation
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
@@ -200,6 +202,7 @@ pub struct ThemeOptions {
|
||||
#[serde_with::serde_as]
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Wallpaper configuration
|
||||
pub struct Wallpaper {
|
||||
/// Path to the wallpaper image file
|
||||
#[serde_as(as = "ResolvedPathBuf")]
|
||||
@@ -218,6 +221,7 @@ pub struct Wallpaper {
|
||||
#[serde_with::serde_as]
|
||||
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Workspace configuration
|
||||
pub struct WorkspaceConfig {
|
||||
/// Name
|
||||
pub name: String,
|
||||
@@ -375,6 +379,7 @@ impl From<&Workspace> for WorkspaceConfig {
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Monitor configuration
|
||||
pub struct MonitorConfig {
|
||||
/// Workspace configurations
|
||||
pub workspaces: Vec<WorkspaceConfig>,
|
||||
@@ -446,6 +451,7 @@ impl From<&Monitor> for MonitorConfig {
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
#[serde(untagged)]
|
||||
/// Path(s) to application-specific configuration file(s)
|
||||
pub enum AppSpecificConfigurationPath {
|
||||
/// A single `applications.json` file
|
||||
Single(#[serde_as(as = "ResolvedPathBuf")] PathBuf),
|
||||
@@ -540,7 +546,7 @@ pub struct StaticConfig {
|
||||
#[serde(alias = "active_window_border")]
|
||||
#[cfg_attr(feature = "schemars", schemars(extend("default" = defaults::BORDER_ENABLED)))]
|
||||
pub border: Option<bool>,
|
||||
/// Window border colours for different container types (has no effect if a theme is defined)
|
||||
/// Window border colours for different container types (has no effect if [`theme`] is defined)
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
#[serde(alias = "active_window_border_colours")]
|
||||
pub border_colours: Option<BorderColours>,
|
||||
@@ -624,6 +630,8 @@ pub struct StaticConfig {
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub animation: Option<AnimationsConfig>,
|
||||
/// Theme configuration options
|
||||
///
|
||||
/// If a theme is specified, `border_colours` will have no effect
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub theme: Option<KomorebiTheme>,
|
||||
/// Identify applications which are slow to send initial event notifications
|
||||
@@ -652,6 +660,7 @@ pub struct StaticConfig {
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Animations configuration options
|
||||
pub struct AnimationsConfig {
|
||||
/// Enable or disable animations
|
||||
pub enabled: PerAnimationPrefixConfig<bool>,
|
||||
@@ -670,6 +679,7 @@ pub struct AnimationsConfig {
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
#[serde(tag = "palette")]
|
||||
/// Komorebi theme
|
||||
pub enum KomorebiTheme {
|
||||
/// A theme from catppuccin-egui
|
||||
Catppuccin {
|
||||
@@ -895,6 +905,7 @@ impl StaticConfig {
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Stackbar tabs configuration
|
||||
pub struct TabsConfig {
|
||||
/// Width of a stackbar tab
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
@@ -918,6 +929,7 @@ pub struct TabsConfig {
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Stackbar configuration
|
||||
pub struct StackbarConfig {
|
||||
/// Stackbar height
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
|
||||
@@ -302,10 +302,11 @@ impl RenderDispatcher for TransparencyRenderDispatcher {
|
||||
#[derive(Copy, Clone, Debug, Display, EnumString, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
#[serde(untagged)]
|
||||
/// Aspect ratio for temporarily floating windows
|
||||
pub enum AspectRatio {
|
||||
/// A predefined aspect ratio
|
||||
/// Predefined aspect ratio
|
||||
Predefined(PredefinedAspectRatio),
|
||||
/// A custom W:H aspect ratio
|
||||
/// Custom W:H aspect ratio
|
||||
Custom(i32, i32),
|
||||
}
|
||||
|
||||
@@ -317,6 +318,7 @@ impl Default for AspectRatio {
|
||||
|
||||
#[derive(Copy, Clone, Debug, Default, Display, EnumString, Serialize, Deserialize, PartialEq)]
|
||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||
/// Predefined aspect ratio
|
||||
pub enum PredefinedAspectRatio {
|
||||
/// 21:9
|
||||
Ultrawide,
|
||||
|
||||
@@ -7,12 +7,28 @@
|
||||
},
|
||||
"$defs": {
|
||||
"ApplicationIdentifier": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Exe",
|
||||
"Class",
|
||||
"Title",
|
||||
"Path"
|
||||
"description": "Application identifier",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Executable name",
|
||||
"type": "string",
|
||||
"const": "Exe"
|
||||
},
|
||||
{
|
||||
"description": "Class",
|
||||
"type": "string",
|
||||
"const": "Class"
|
||||
},
|
||||
{
|
||||
"description": "Window title",
|
||||
"type": "string",
|
||||
"const": "Title"
|
||||
},
|
||||
{
|
||||
"description": "Executable path",
|
||||
"type": "string",
|
||||
"const": "Path"
|
||||
}
|
||||
]
|
||||
},
|
||||
"AscApplicationRules": {
|
||||
@@ -112,15 +128,19 @@
|
||||
]
|
||||
},
|
||||
"IdWithIdentifier": {
|
||||
"description": "Rule for matching applications",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"description": "Target identifier",
|
||||
"type": "string"
|
||||
},
|
||||
"kind": {
|
||||
"description": "Kind of identifier to target",
|
||||
"$ref": "#/$defs/ApplicationIdentifier"
|
||||
},
|
||||
"matching_strategy": {
|
||||
"description": "Matching strategy to use",
|
||||
"anyOf": [
|
||||
{
|
||||
"$ref": "#/$defs/MatchingStrategy"
|
||||
@@ -137,11 +157,14 @@
|
||||
]
|
||||
},
|
||||
"MatchingRule": {
|
||||
"description": "Rule for matching applications",
|
||||
"anyOf": [
|
||||
{
|
||||
"description": "Simple matching rule which must evaluate to true",
|
||||
"$ref": "#/$defs/IdWithIdentifier"
|
||||
},
|
||||
{
|
||||
"description": "Composite matching rule where all conditions must evaluate to true",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/IdWithIdentifier"
|
||||
@@ -150,18 +173,58 @@
|
||||
]
|
||||
},
|
||||
"MatchingStrategy": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Legacy",
|
||||
"Equals",
|
||||
"StartsWith",
|
||||
"EndsWith",
|
||||
"Contains",
|
||||
"Regex",
|
||||
"DoesNotEndWith",
|
||||
"DoesNotStartWith",
|
||||
"DoesNotEqual",
|
||||
"DoesNotContain"
|
||||
"description": "Strategy for matching identifiers",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Should not be used, only kept for backward compatibility",
|
||||
"type": "string",
|
||||
"const": "Legacy"
|
||||
},
|
||||
{
|
||||
"description": "Equals",
|
||||
"type": "string",
|
||||
"const": "Equals"
|
||||
},
|
||||
{
|
||||
"description": "Starts With",
|
||||
"type": "string",
|
||||
"const": "StartsWith"
|
||||
},
|
||||
{
|
||||
"description": "Ends With",
|
||||
"type": "string",
|
||||
"const": "EndsWith"
|
||||
},
|
||||
{
|
||||
"description": "Contains",
|
||||
"type": "string",
|
||||
"const": "Contains"
|
||||
},
|
||||
{
|
||||
"description": "Regex",
|
||||
"type": "string",
|
||||
"const": "Regex"
|
||||
},
|
||||
{
|
||||
"description": "Does not end with",
|
||||
"type": "string",
|
||||
"const": "DoesNotEndWith"
|
||||
},
|
||||
{
|
||||
"description": "Does not start with",
|
||||
"type": "string",
|
||||
"const": "DoesNotStartWith"
|
||||
},
|
||||
{
|
||||
"description": "Does not equal",
|
||||
"type": "string",
|
||||
"const": "DoesNotEqual"
|
||||
},
|
||||
{
|
||||
"description": "Does not contain",
|
||||
"type": "string",
|
||||
"const": "DoesNotContain"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
720
schema.bar.json
720
schema.bar.json
@@ -187,43 +187,165 @@
|
||||
]
|
||||
},
|
||||
"AnimationStyle": {
|
||||
"description": "Mathematical function which describes the rate at which a value changes",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Linear",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Linear",
|
||||
"EaseInSine",
|
||||
"EaseOutSine",
|
||||
"EaseInOutSine",
|
||||
"EaseInQuad",
|
||||
"EaseOutQuad",
|
||||
"EaseInOutQuad",
|
||||
"EaseInCubic",
|
||||
"EaseInOutCubic",
|
||||
"EaseInQuart",
|
||||
"EaseOutQuart",
|
||||
"EaseInOutQuart",
|
||||
"EaseInQuint",
|
||||
"EaseOutQuint",
|
||||
"EaseInOutQuint",
|
||||
"EaseInExpo",
|
||||
"EaseOutExpo",
|
||||
"EaseInOutExpo",
|
||||
"EaseInCirc",
|
||||
"EaseOutCirc",
|
||||
"EaseInOutCirc",
|
||||
"EaseInBack",
|
||||
"EaseOutBack",
|
||||
"EaseInOutBack",
|
||||
"EaseInElastic",
|
||||
"EaseOutElastic",
|
||||
"EaseInOutElastic",
|
||||
"EaseInBounce",
|
||||
"EaseOutBounce",
|
||||
"EaseInOutBounce"
|
||||
]
|
||||
"const": "Linear"
|
||||
},
|
||||
{
|
||||
"description": "Ease in sine",
|
||||
"type": "string",
|
||||
"const": "EaseInSine"
|
||||
},
|
||||
{
|
||||
"description": "Ease out sine",
|
||||
"type": "string",
|
||||
"const": "EaseOutSine"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out sine",
|
||||
"type": "string",
|
||||
"const": "EaseInOutSine"
|
||||
},
|
||||
{
|
||||
"description": "Ease in quad",
|
||||
"type": "string",
|
||||
"const": "EaseInQuad"
|
||||
},
|
||||
{
|
||||
"description": "Ease out quad",
|
||||
"type": "string",
|
||||
"const": "EaseOutQuad"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out quad",
|
||||
"type": "string",
|
||||
"const": "EaseInOutQuad"
|
||||
},
|
||||
{
|
||||
"description": "Ease in cubic",
|
||||
"type": "string",
|
||||
"const": "EaseInCubic"
|
||||
},
|
||||
{
|
||||
"description": "Ease out cubic",
|
||||
"type": "string",
|
||||
"const": "EaseOutCubic"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out cubic",
|
||||
"type": "string",
|
||||
"const": "EaseInOutCubic"
|
||||
},
|
||||
{
|
||||
"description": "Ease in quart",
|
||||
"type": "string",
|
||||
"const": "EaseInQuart"
|
||||
},
|
||||
{
|
||||
"description": "Ease out quart",
|
||||
"type": "string",
|
||||
"const": "EaseOutQuart"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out quart",
|
||||
"type": "string",
|
||||
"const": "EaseInOutQuart"
|
||||
},
|
||||
{
|
||||
"description": "Ease in quint",
|
||||
"type": "string",
|
||||
"const": "EaseInQuint"
|
||||
},
|
||||
{
|
||||
"description": "Ease out quint",
|
||||
"type": "string",
|
||||
"const": "EaseOutQuint"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out quint",
|
||||
"type": "string",
|
||||
"const": "EaseInOutQuint"
|
||||
},
|
||||
{
|
||||
"description": "Ease in expo",
|
||||
"type": "string",
|
||||
"const": "EaseInExpo"
|
||||
},
|
||||
{
|
||||
"description": "Ease out expo",
|
||||
"type": "string",
|
||||
"const": "EaseOutExpo"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out expo",
|
||||
"type": "string",
|
||||
"const": "EaseInOutExpo"
|
||||
},
|
||||
{
|
||||
"description": "Ease in circ",
|
||||
"type": "string",
|
||||
"const": "EaseInCirc"
|
||||
},
|
||||
{
|
||||
"description": "Ease out circ",
|
||||
"type": "string",
|
||||
"const": "EaseOutCirc"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out circ",
|
||||
"type": "string",
|
||||
"const": "EaseInOutCirc"
|
||||
},
|
||||
{
|
||||
"description": "Ease in back",
|
||||
"type": "string",
|
||||
"const": "EaseInBack"
|
||||
},
|
||||
{
|
||||
"description": "Ease out back",
|
||||
"type": "string",
|
||||
"const": "EaseOutBack"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out back",
|
||||
"type": "string",
|
||||
"const": "EaseInOutBack"
|
||||
},
|
||||
{
|
||||
"description": "Ease in elastic",
|
||||
"type": "string",
|
||||
"const": "EaseInElastic"
|
||||
},
|
||||
{
|
||||
"description": "Ease out elastic",
|
||||
"type": "string",
|
||||
"const": "EaseOutElastic"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out elastic",
|
||||
"type": "string",
|
||||
"const": "EaseInOutElastic"
|
||||
},
|
||||
{
|
||||
"description": "Ease in bounce",
|
||||
"type": "string",
|
||||
"const": "EaseInBounce"
|
||||
},
|
||||
{
|
||||
"description": "Ease out bounce",
|
||||
"type": "string",
|
||||
"const": "EaseOutBounce"
|
||||
},
|
||||
{
|
||||
"description": "Ease in out bounce",
|
||||
"type": "string",
|
||||
"const": "EaseInOutBounce"
|
||||
},
|
||||
{
|
||||
"description": "Custom Cubic Bézier function",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"CubicBezier": {
|
||||
@@ -307,12 +429,28 @@
|
||||
]
|
||||
},
|
||||
"ApplicationIdentifier": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Exe",
|
||||
"Class",
|
||||
"Title",
|
||||
"Path"
|
||||
"description": "Application identifier",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Executable name",
|
||||
"type": "string",
|
||||
"const": "Exe"
|
||||
},
|
||||
{
|
||||
"description": "Class",
|
||||
"type": "string",
|
||||
"const": "Class"
|
||||
},
|
||||
{
|
||||
"description": "Window title",
|
||||
"type": "string",
|
||||
"const": "Title"
|
||||
},
|
||||
{
|
||||
"description": "Executable path",
|
||||
"type": "string",
|
||||
"const": "Path"
|
||||
}
|
||||
]
|
||||
},
|
||||
"ApplicationsConfig": {
|
||||
@@ -381,11 +519,23 @@
|
||||
]
|
||||
},
|
||||
"Axis": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Horizontal",
|
||||
"Vertical",
|
||||
"HorizontalAndVertical"
|
||||
"description": "Axis on which to perform an operation",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Horizontal axis",
|
||||
"type": "string",
|
||||
"const": "Horizontal"
|
||||
},
|
||||
{
|
||||
"description": "Vertical axis",
|
||||
"type": "string",
|
||||
"const": "Vertical"
|
||||
},
|
||||
{
|
||||
"description": "Both horizontal and vertical axes",
|
||||
"type": "string",
|
||||
"const": "HorizontalAndVertical"
|
||||
}
|
||||
]
|
||||
},
|
||||
"Base16": {
|
||||
@@ -663,54 +813,71 @@
|
||||
]
|
||||
},
|
||||
"Base16ColourPalette": {
|
||||
"description": "Base16 colour palette: https://github.com/chriskempson/base16",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"base_00": {
|
||||
"description": "Base00",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_01": {
|
||||
"description": "Base01",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_02": {
|
||||
"description": "Base02",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_03": {
|
||||
"description": "Base03",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_04": {
|
||||
"description": "Base04",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_05": {
|
||||
"description": "Base05",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_06": {
|
||||
"description": "Base06",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_07": {
|
||||
"description": "Base07",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_08": {
|
||||
"description": "Base08",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_09": {
|
||||
"description": "Base09",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_0a": {
|
||||
"description": "Base0A",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_0b": {
|
||||
"description": "Base0B",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_0c": {
|
||||
"description": "Base0C",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_0d": {
|
||||
"description": "Base0D",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_0e": {
|
||||
"description": "Base0E",
|
||||
"$ref": "#/$defs/Colour"
|
||||
},
|
||||
"base_0f": {
|
||||
"description": "Base0F",
|
||||
"$ref": "#/$defs/Colour"
|
||||
}
|
||||
},
|
||||
@@ -734,24 +901,88 @@
|
||||
]
|
||||
},
|
||||
"Base16Value": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Base00",
|
||||
"Base01",
|
||||
"Base02",
|
||||
"Base03",
|
||||
"Base04",
|
||||
"Base05",
|
||||
"Base06",
|
||||
"Base07",
|
||||
"Base08",
|
||||
"Base09",
|
||||
"Base0A",
|
||||
"Base0B",
|
||||
"Base0C",
|
||||
"Base0D",
|
||||
"Base0E",
|
||||
"Base0F"
|
||||
"description": "Base16 value",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Base00",
|
||||
"type": "string",
|
||||
"const": "Base00"
|
||||
},
|
||||
{
|
||||
"description": "Base01",
|
||||
"type": "string",
|
||||
"const": "Base01"
|
||||
},
|
||||
{
|
||||
"description": "Base02",
|
||||
"type": "string",
|
||||
"const": "Base02"
|
||||
},
|
||||
{
|
||||
"description": "Base03",
|
||||
"type": "string",
|
||||
"const": "Base03"
|
||||
},
|
||||
{
|
||||
"description": "Base04",
|
||||
"type": "string",
|
||||
"const": "Base04"
|
||||
},
|
||||
{
|
||||
"description": "Base05",
|
||||
"type": "string",
|
||||
"const": "Base05"
|
||||
},
|
||||
{
|
||||
"description": "Base06",
|
||||
"type": "string",
|
||||
"const": "Base06"
|
||||
},
|
||||
{
|
||||
"description": "Base07",
|
||||
"type": "string",
|
||||
"const": "Base07"
|
||||
},
|
||||
{
|
||||
"description": "Base08",
|
||||
"type": "string",
|
||||
"const": "Base08"
|
||||
},
|
||||
{
|
||||
"description": "Base09",
|
||||
"type": "string",
|
||||
"const": "Base09"
|
||||
},
|
||||
{
|
||||
"description": "Base0A",
|
||||
"type": "string",
|
||||
"const": "Base0A"
|
||||
},
|
||||
{
|
||||
"description": "Base0B",
|
||||
"type": "string",
|
||||
"const": "Base0B"
|
||||
},
|
||||
{
|
||||
"description": "Base0C",
|
||||
"type": "string",
|
||||
"const": "Base0C"
|
||||
},
|
||||
{
|
||||
"description": "Base0D",
|
||||
"type": "string",
|
||||
"const": "Base0D"
|
||||
},
|
||||
{
|
||||
"description": "Base0E",
|
||||
"type": "string",
|
||||
"const": "Base0E"
|
||||
},
|
||||
{
|
||||
"description": "Base0F",
|
||||
"type": "string",
|
||||
"const": "Base0F"
|
||||
}
|
||||
]
|
||||
},
|
||||
"BatteryConfig": {
|
||||
@@ -805,6 +1036,7 @@
|
||||
]
|
||||
},
|
||||
"BorderImplementation": {
|
||||
"description": "Border style",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Use the adjustable komorebi border implementation",
|
||||
@@ -819,6 +1051,7 @@
|
||||
]
|
||||
},
|
||||
"BorderStyle": {
|
||||
"description": "Border style",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Use the system border style",
|
||||
@@ -838,46 +1071,167 @@
|
||||
]
|
||||
},
|
||||
"Catppuccin": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Frappe",
|
||||
"Latte",
|
||||
"Macchiato",
|
||||
"Mocha"
|
||||
"description": "Catppuccin palette",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Frappe",
|
||||
"type": "string",
|
||||
"const": "Frappe"
|
||||
},
|
||||
{
|
||||
"description": "Latte",
|
||||
"type": "string",
|
||||
"const": "Latte"
|
||||
},
|
||||
{
|
||||
"description": "Macchiato",
|
||||
"type": "string",
|
||||
"const": "Macchiato"
|
||||
},
|
||||
{
|
||||
"description": "Mocha",
|
||||
"type": "string",
|
||||
"const": "Mocha"
|
||||
}
|
||||
]
|
||||
},
|
||||
"CatppuccinValue": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Rosewater",
|
||||
"Flamingo",
|
||||
"Pink",
|
||||
"Mauve",
|
||||
"Red",
|
||||
"Maroon",
|
||||
"Peach",
|
||||
"Yellow",
|
||||
"Green",
|
||||
"Teal",
|
||||
"Sky",
|
||||
"Sapphire",
|
||||
"Blue",
|
||||
"Lavender",
|
||||
"Text",
|
||||
"Subtext1",
|
||||
"Subtext0",
|
||||
"Overlay2",
|
||||
"Overlay1",
|
||||
"Overlay0",
|
||||
"Surface2",
|
||||
"Surface1",
|
||||
"Surface0",
|
||||
"Base",
|
||||
"Mantle",
|
||||
"Crust"
|
||||
"description": "Catppuccin Value",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Rosewater",
|
||||
"type": "string",
|
||||
"const": "Rosewater"
|
||||
},
|
||||
{
|
||||
"description": "Flamingo",
|
||||
"type": "string",
|
||||
"const": "Flamingo"
|
||||
},
|
||||
{
|
||||
"description": "Pink",
|
||||
"type": "string",
|
||||
"const": "Pink"
|
||||
},
|
||||
{
|
||||
"description": "Mauve",
|
||||
"type": "string",
|
||||
"const": "Mauve"
|
||||
},
|
||||
{
|
||||
"description": "Red",
|
||||
"type": "string",
|
||||
"const": "Red"
|
||||
},
|
||||
{
|
||||
"description": "Maroon",
|
||||
"type": "string",
|
||||
"const": "Maroon"
|
||||
},
|
||||
{
|
||||
"description": "Peach",
|
||||
"type": "string",
|
||||
"const": "Peach"
|
||||
},
|
||||
{
|
||||
"description": "Yellow",
|
||||
"type": "string",
|
||||
"const": "Yellow"
|
||||
},
|
||||
{
|
||||
"description": "Green",
|
||||
"type": "string",
|
||||
"const": "Green"
|
||||
},
|
||||
{
|
||||
"description": "Teal",
|
||||
"type": "string",
|
||||
"const": "Teal"
|
||||
},
|
||||
{
|
||||
"description": "Sky",
|
||||
"type": "string",
|
||||
"const": "Sky"
|
||||
},
|
||||
{
|
||||
"description": "Sapphire",
|
||||
"type": "string",
|
||||
"const": "Sapphire"
|
||||
},
|
||||
{
|
||||
"description": "Blue",
|
||||
"type": "string",
|
||||
"const": "Blue"
|
||||
},
|
||||
{
|
||||
"description": "Lavender",
|
||||
"type": "string",
|
||||
"const": "Lavender"
|
||||
},
|
||||
{
|
||||
"description": "Text",
|
||||
"type": "string",
|
||||
"const": "Text"
|
||||
},
|
||||
{
|
||||
"description": "Subtext1",
|
||||
"type": "string",
|
||||
"const": "Subtext1"
|
||||
},
|
||||
{
|
||||
"description": "Subtext0",
|
||||
"type": "string",
|
||||
"const": "Subtext0"
|
||||
},
|
||||
{
|
||||
"description": "Overlay2",
|
||||
"type": "string",
|
||||
"const": "Overlay2"
|
||||
},
|
||||
{
|
||||
"description": "Overlay1",
|
||||
"type": "string",
|
||||
"const": "Overlay1"
|
||||
},
|
||||
{
|
||||
"description": "Overlay0",
|
||||
"type": "string",
|
||||
"const": "Overlay0"
|
||||
},
|
||||
{
|
||||
"description": "Surface2",
|
||||
"type": "string",
|
||||
"const": "Surface2"
|
||||
},
|
||||
{
|
||||
"description": "Surface1",
|
||||
"type": "string",
|
||||
"const": "Surface1"
|
||||
},
|
||||
{
|
||||
"description": "Surface0",
|
||||
"type": "string",
|
||||
"const": "Surface0"
|
||||
},
|
||||
{
|
||||
"description": "Base",
|
||||
"type": "string",
|
||||
"const": "Base"
|
||||
},
|
||||
{
|
||||
"description": "Mantle",
|
||||
"type": "string",
|
||||
"const": "Mantle"
|
||||
},
|
||||
{
|
||||
"description": "Crust",
|
||||
"type": "string",
|
||||
"const": "Crust"
|
||||
}
|
||||
]
|
||||
},
|
||||
"Colour": {
|
||||
"description": "Colour representation",
|
||||
"anyOf": [
|
||||
{
|
||||
"description": "Colour represented as RGB",
|
||||
@@ -1047,17 +1401,53 @@
|
||||
]
|
||||
},
|
||||
"DefaultLayout": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"BSP",
|
||||
"Columns",
|
||||
"Rows",
|
||||
"VerticalStack",
|
||||
"HorizontalStack",
|
||||
"UltrawideVerticalStack",
|
||||
"Grid",
|
||||
"RightMainVerticalStack",
|
||||
"Scrolling"
|
||||
"description": "A predefined komorebi layout",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "BSP Layout\n\n```\n+-------+-----+\n| | |\n| +--+--+\n| | |--|\n+-------+--+--+\n```",
|
||||
"type": "string",
|
||||
"const": "BSP"
|
||||
},
|
||||
{
|
||||
"description": "Columns Layout\n\n```\n+--+--+--+--+\n| | | | |\n| | | | |\n| | | | |\n+--+--+--+--+\n```",
|
||||
"type": "string",
|
||||
"const": "Columns"
|
||||
},
|
||||
{
|
||||
"description": "Rows Layout\n\n```\n+-----------+\n|-----------|\n|-----------|\n|-----------|\n+-----------+\n```",
|
||||
"type": "string",
|
||||
"const": "Rows"
|
||||
},
|
||||
{
|
||||
"description": "Vertical Stack Layout\n\n```\n+-------+-----+\n| | |\n| +-----+\n| | |\n+-------+-----+\n```",
|
||||
"type": "string",
|
||||
"const": "VerticalStack"
|
||||
},
|
||||
{
|
||||
"description": "Horizontal Stack Layout\n\n```\n+------+------+\n| |\n|------+------+\n| | |\n+------+------+\n```",
|
||||
"type": "string",
|
||||
"const": "HorizontalStack"
|
||||
},
|
||||
{
|
||||
"description": "Ultrawide Vertical Stack Layout\n\n```\n+-----+-----------+-----+\n| | | |\n| | +-----+\n| | | |\n| | +-----+\n| | | |\n+-----+-----------+-----+\n```",
|
||||
"type": "string",
|
||||
"const": "UltrawideVerticalStack"
|
||||
},
|
||||
{
|
||||
"description": "Grid Layout\n\n```\n+-----+-----+ +---+---+---+ +---+---+---+ +---+---+---+\n| | | | | | | | | | | | | | |\n| | | | | | | | | | | | | +---+\n+-----+-----+ | +---+---+ +---+---+---+ +---+---| |\n| | | | | | | | | | | | | +---+\n| | | | | | | | | | | | | | |\n+-----+-----+ +---+---+---+ +---+---+---+ +---+---+---+\n 4 windows 5 windows 6 windows 7 windows\n```",
|
||||
"type": "string",
|
||||
"const": "Grid"
|
||||
},
|
||||
{
|
||||
"description": "Right Main Vertical Stack Layout\n\n```\n+-----+-------+\n| | |\n+-----+ |\n| | |\n+-----+-------+\n```",
|
||||
"type": "string",
|
||||
"const": "RightMainVerticalStack"
|
||||
},
|
||||
{
|
||||
"description": "Scrolling Layout\n\n```\n+--+--+--+--+--+--+\n| | | |\n| | | |\n| | | |\n+--+--+--+--+--+--+\n```",
|
||||
"type": "string",
|
||||
"const": "Scrolling"
|
||||
}
|
||||
]
|
||||
},
|
||||
"DisplayFormat": {
|
||||
@@ -1090,14 +1480,15 @@
|
||||
]
|
||||
},
|
||||
"FocusFollowsMouseImplementation": {
|
||||
"description": "Focus follows mouse implementation",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "A custom FFM implementation (slightly more CPU-intensive)",
|
||||
"description": "Custom FFM implementation (slightly more CPU-intensive)",
|
||||
"type": "string",
|
||||
"const": "Komorebi"
|
||||
},
|
||||
{
|
||||
"description": "The native (legacy) Windows FFM implementation",
|
||||
"description": "Native (legacy) Windows FFM implementation",
|
||||
"type": "string",
|
||||
"const": "Windows"
|
||||
}
|
||||
@@ -1300,10 +1691,12 @@
|
||||
]
|
||||
},
|
||||
"Hex": {
|
||||
"description": "Colour represented as a Hex string",
|
||||
"type": "string",
|
||||
"format": "color-hex"
|
||||
},
|
||||
"HidingBehaviour": {
|
||||
"description": "Window hiding behaviour",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "END OF LIFE FEATURE: Use the `SW_HIDE` flag to hide windows when switching workspaces (has issues with Electron apps)",
|
||||
@@ -1764,6 +2157,7 @@
|
||||
]
|
||||
},
|
||||
"KomorebiTheme": {
|
||||
"description": "Komorebi theme",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "A theme from catppuccin-egui",
|
||||
@@ -2492,6 +2886,7 @@
|
||||
]
|
||||
},
|
||||
"MoveBehaviour": {
|
||||
"description": "Move behaviour when the operation works across a monitor boundary",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Swap the window container with the window container at the edge of the adjacent monitor",
|
||||
@@ -2622,14 +3017,15 @@
|
||||
}
|
||||
},
|
||||
"OperationBehaviour": {
|
||||
"description": "Operation behaviour for temporarily unmanaged and floating windows",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Process komorebic commands on temporarily unmanaged/floated windows",
|
||||
"description": "Process commands on temporarily unmanaged/floated windows",
|
||||
"type": "string",
|
||||
"const": "Op"
|
||||
},
|
||||
{
|
||||
"description": "Ignore komorebic commands on temporarily unmanaged/floated windows",
|
||||
"description": "Ignore commands on temporarily unmanaged/floated windows",
|
||||
"type": "string",
|
||||
"const": "NoOp"
|
||||
}
|
||||
@@ -2694,25 +3090,26 @@
|
||||
}
|
||||
},
|
||||
"Rect": {
|
||||
"description": "Rectangle dimensions",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"bottom": {
|
||||
"description": "The bottom point in a Win32 Rect",
|
||||
"description": "Height of the rectangle (from the top point)",
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
},
|
||||
"left": {
|
||||
"description": "The left point in a Win32 Rect",
|
||||
"description": "Left point of the rectangle",
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
},
|
||||
"right": {
|
||||
"description": "The right point in a Win32 Rect",
|
||||
"description": "Width of the recentangle (from the left point)",
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
},
|
||||
"top": {
|
||||
"description": "The top point in a Win32 Rect",
|
||||
"description": "Top point of the rectangle",
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
}
|
||||
@@ -2725,6 +3122,7 @@
|
||||
]
|
||||
},
|
||||
"Rgb": {
|
||||
"description": "Colour represented as RGB",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"b": {
|
||||
@@ -2772,10 +3170,18 @@
|
||||
]
|
||||
},
|
||||
"Sizing": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Increase",
|
||||
"Decrease"
|
||||
"description": "Sizing",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Increase",
|
||||
"type": "string",
|
||||
"const": "Increase"
|
||||
},
|
||||
{
|
||||
"description": "Decrease",
|
||||
"type": "string",
|
||||
"const": "Decrease"
|
||||
}
|
||||
]
|
||||
},
|
||||
"SocketMessage": {
|
||||
@@ -6303,18 +6709,38 @@
|
||||
]
|
||||
},
|
||||
"StackbarLabel": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Process",
|
||||
"Title"
|
||||
"description": "Starbar label",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Process name",
|
||||
"type": "string",
|
||||
"const": "Process"
|
||||
},
|
||||
{
|
||||
"description": "Window title",
|
||||
"type": "string",
|
||||
"const": "Title"
|
||||
}
|
||||
]
|
||||
},
|
||||
"StackbarMode": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Always",
|
||||
"Never",
|
||||
"OnStack"
|
||||
"description": "Stackbar mode",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Always show",
|
||||
"type": "string",
|
||||
"const": "Always"
|
||||
},
|
||||
{
|
||||
"description": "Never show",
|
||||
"type": "string",
|
||||
"const": "Never"
|
||||
},
|
||||
{
|
||||
"description": "Show on stack",
|
||||
"type": "string",
|
||||
"const": "OnStack"
|
||||
}
|
||||
]
|
||||
},
|
||||
"StateQuery": {
|
||||
@@ -6682,14 +7108,38 @@
|
||||
]
|
||||
},
|
||||
"WindowKind": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Single",
|
||||
"Stack",
|
||||
"Monocle",
|
||||
"Unfocused",
|
||||
"UnfocusedLocked",
|
||||
"Floating"
|
||||
"description": "Window kind",
|
||||
"oneOf": [
|
||||
{
|
||||
"description": "Single window",
|
||||
"type": "string",
|
||||
"const": "Single"
|
||||
},
|
||||
{
|
||||
"description": "Stack container",
|
||||
"type": "string",
|
||||
"const": "Stack"
|
||||
},
|
||||
{
|
||||
"description": "Monocle container",
|
||||
"type": "string",
|
||||
"const": "Monocle"
|
||||
},
|
||||
{
|
||||
"description": "Unfocused window",
|
||||
"type": "string",
|
||||
"const": "Unfocused"
|
||||
},
|
||||
{
|
||||
"description": "Unfocused locked container",
|
||||
"type": "string",
|
||||
"const": "UnfocusedLocked"
|
||||
},
|
||||
{
|
||||
"description": "Floating window",
|
||||
"type": "string",
|
||||
"const": "Floating"
|
||||
}
|
||||
]
|
||||
},
|
||||
"WorkspacesDisplayFormat": {
|
||||
|
||||
830
schema.json
830
schema.json
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user