Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
PhosphorZones::ContextTilingParams Struct Reference

Per-context autotile parameter overrides resolved from context rules. More...

#include <phosphor-zones/include/PhosphorZones/AssignmentEntry.h>

Public Member Functions

bool isEmpty () const
 

Public Attributes

std::optional< int > maxWindows
 
std::optional< double > splitRatio
 
std::optional< int > masterCount
 
std::optional< int > insertPosition
 The AutotileInsertPosition int (0 = End, 1 = AfterFocused, 2 = AsMaster); the resolver maps the wire token to this int so the daemon stores the same value the per-screen config store uses.
 
std::optional< int > overflowBehavior
 The AutotileOverflowBehavior int (0 = Float, 1 = Unlimited).
 
std::optional< int > dragBehavior
 The AutotileDragBehavior int (0 = Float, 1 = Reorder).
 
QString algorithmParamTarget
 A SetAlgorithmParam override: the target algorithm id and the custom-param values to layer over that algorithm's config.
 
QVariantMap algorithmParams
 

Detailed Description

Per-context autotile parameter overrides resolved from context rules.

Each field is set only when a matching context rule fills the corresponding slot (SetMaxWindows / SetSplitRatio / SetMasterCount / SetInsertPosition / SetOverflowBehavior / SetDragBehavior / SetAlgorithmParam); an unset field means "use the config value". Consumed daemon-side: the values are layered onto the per-screen autotile override map (config stays the base, the rule wins where present). dragBehavior is consumed by the drag adaptor rather than the override map. Resolved by LayoutRegistry::resolveContextTilingParams.

Member Function Documentation

◆ isEmpty()

bool PhosphorZones::ContextTilingParams::isEmpty ( ) const
inline

Member Data Documentation

◆ algorithmParams

QVariantMap PhosphorZones::ContextTilingParams::algorithmParams

◆ algorithmParamTarget

QString PhosphorZones::ContextTilingParams::algorithmParamTarget

A SetAlgorithmParam override: the target algorithm id and the custom-param values to layer over that algorithm's config.

Empty target = no override. The daemon applies algorithmParams only when algorithmParamTarget is the screen's effective algorithm.

◆ dragBehavior

std::optional<int> PhosphorZones::ContextTilingParams::dragBehavior

The AutotileDragBehavior int (0 = Float, 1 = Reorder).

Consumed by the drag adaptor (not the tile-engine override map) unlike the other params.

◆ insertPosition

std::optional<int> PhosphorZones::ContextTilingParams::insertPosition

The AutotileInsertPosition int (0 = End, 1 = AfterFocused, 2 = AsMaster); the resolver maps the wire token to this int so the daemon stores the same value the per-screen config store uses.

◆ masterCount

std::optional<int> PhosphorZones::ContextTilingParams::masterCount

◆ maxWindows

std::optional<int> PhosphorZones::ContextTilingParams::maxWindows

◆ overflowBehavior

std::optional<int> PhosphorZones::ContextTilingParams::overflowBehavior

The AutotileOverflowBehavior int (0 = Float, 1 = Unlimited).

◆ splitRatio

std::optional<double> PhosphorZones::ContextTilingParams::splitRatio

The documentation for this struct was generated from the following file: