Capability + display metadata for a single autotile algorithm. More...
#include <phosphor-layout-api/include/PhosphorLayoutApi/AlgorithmMetadata.h>
Public Attributes | |
| bool | supportsMasterCount = false |
| True when the algorithm honours an explicit master-window count. | |
| bool | supportsSplitRatio = false |
| True when the algorithm honours an explicit master/secondary split ratio. | |
| bool | producesOverlappingZones = false |
| True when the algorithm can produce overlapping zones (e.g. | |
| bool | supportsCustomParams = false |
| True when the algorithm declares custom. | |
| bool | supportsMemory = false |
| True when the algorithm carries persistent per-screen state across sessions (BSP-style trees that remember user splits). | |
| bool | isScripted = false |
| True when the algorithm is loaded from a JS script file rather than a built-in C++ implementation. | |
| bool | isUserScript = false |
| True when the script lives in the user's local algorithms directory (vs system-installed). | |
| ZoneNumberDisplay | zoneNumberDisplay = ZoneNumberDisplay::RendererDecides |
| How zone numbers are displayed in previews. | |
Capability + display metadata for a single autotile algorithm.
Embedded inside LayoutPreview as an optional field — only autotile previews carry it. Manual zone-based previews leave the optional empty.
The fields here are limited to what a layout-picker UI needs to know about an algorithm to render its row correctly (icons, "supports master count" parameter editor, system-vs-user lock badge). Tuning parameters that affect the algorithm's actual computation (split ratio, master count) live in per-algorithm settings, not here.
| bool PhosphorLayout::AlgorithmMetadata::isScripted = false |
True when the algorithm is loaded from a JS script file rather than a built-in C++ implementation.
Affects how the picker renders the system-vs-user badge (see isUserScript).
| bool PhosphorLayout::AlgorithmMetadata::isUserScript = false |
True when the script lives in the user's local algorithms directory (vs system-installed).
Only meaningful when isScripted is true. Drives the lock-icon vs user-icon badge in the picker.
| bool PhosphorLayout::AlgorithmMetadata::producesOverlappingZones = false |
True when the algorithm can produce overlapping zones (e.g.
"stack" mode where the master area and stack area visually overlap). Picker may render an overlap badge.
| bool PhosphorLayout::AlgorithmMetadata::supportsCustomParams = false |
True when the algorithm declares custom.
| annotations | beyond the standard split/master/gap knobs. Picker offers a per-algorithm custom-params editor when set. |
| bool PhosphorLayout::AlgorithmMetadata::supportsMasterCount = false |
True when the algorithm honours an explicit master-window count.
Picker shows a count editor only when this is set.
| bool PhosphorLayout::AlgorithmMetadata::supportsMemory = false |
True when the algorithm carries persistent per-screen state across sessions (BSP-style trees that remember user splits).
Picker may surface a "remembers your splits" indicator.
| bool PhosphorLayout::AlgorithmMetadata::supportsSplitRatio = false |
True when the algorithm honours an explicit master/secondary split ratio.
Picker shows a ratio slider only when this is set.
| ZoneNumberDisplay PhosphorLayout::AlgorithmMetadata::zoneNumberDisplay = ZoneNumberDisplay::RendererDecides |
How zone numbers are displayed in previews.
Typed internally; converted to / from the wire-format string at JSON, D-Bus, and QML boundaries via zoneNumberDisplayToString / zoneNumberDisplayFromString.