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

Key for layout assignment (screen + desktop + activity) More...

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

Public Member Functions

bool operator== (const LayoutAssignmentKey &other) const
 

Static Public Member Functions

static LayoutAssignmentKey fromGroupName (const QString &groupName, const QString &prefix)
 Parse a "<prefix><screenId>[:Desktop:N][:Activity:uuid]" group name.
 

Public Attributes

QString screenId
 
int virtualDesktop = 0
 
QString activity
 

Detailed Description

Key for layout assignment (screen + desktop + activity)

RETAINED PUBLIC API with no in-tree consumer. The daemon now stores assignments as context RULES (ContextRuleBridge), and the v3 group format fromGroupName parses is drained by configmigration_v4finalize's own parser — so nothing in this repo constructs one. It stays exported because this is an installed LGPL library header whose whole point is third-party linkage: the (screen, desktop, activity) tuple is still the assignment identity, and removing an exported type is an ABI break for consumers we do not control. Deliberately kept, not overlooked.

Member Function Documentation

◆ fromGroupName()

static LayoutAssignmentKey PhosphorZones::LayoutAssignmentKey::fromGroupName ( const QString &  groupName,
const QString &  prefix 
)
inlinestatic

Parse a "<prefix><screenId>[:Desktop:N][:Activity:uuid]" group name.

Expects suffixes in canonical order: :Desktop:N before :Activity:uuid. Group names are always constructed internally in this order.

Parameters
groupNameFull group name from the config backend.
prefixSchema-defined prefix the caller supplies (the lib's own wire format uses "Assignment:"). Passing it explicitly keeps this header free of any cpp-side constant dependency.
Returns
Key with populated fields; screenId is empty on parse failure.

◆ operator==()

bool PhosphorZones::LayoutAssignmentKey::operator== ( const LayoutAssignmentKey other) const
inline

Member Data Documentation

◆ activity

QString PhosphorZones::LayoutAssignmentKey::activity

◆ screenId

QString PhosphorZones::LayoutAssignmentKey::screenId

◆ virtualDesktop

int PhosphorZones::LayoutAssignmentKey::virtualDesktop = 0

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