Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
PhosphorProtocol Namespace Reference

D-Bus marshalling for the autotile value types (see AutotileTypes.h). More...

Namespaces

namespace  ClientHelpers
 Daemon-bound convenience wrappers around PhosphorDBus::Client.
 
namespace  Service
 

Classes

struct  AlgorithmInfoEntry
 D-Bus struct for algorithm metadata: (sssbbbbdibsbb) More...
 
struct  BridgeRegistrationResult
 D-Bus struct for bridge registration result: (sss) More...
 
struct  CycleTargetResult
 D-Bus struct for cycle navigation result: (bssss) More...
 
struct  DragOutcome
 Drag outcome — daemon-authoritative decision about what to apply at drag end. More...
 
struct  DragPolicy
 Drag policy — daemon-authoritative decision about how a drag should be handled. More...
 
struct  EmptyZoneEntry
 D-Bus struct for empty zone info: (siiiiiibsssdd) More...
 
struct  FocusTargetResult
 D-Bus struct for focus navigation result: (bsssss) More...
 
struct  MoveTargetResult
 D-Bus struct for move/push/zone-number navigation result: (bssiiiiss) More...
 
struct  NamedZoneGeometry
 D-Bus struct for named zone geometry: (siiii) More...
 
struct  PreTileGeometryEntry
 D-Bus struct for pre-tile geometry entries: (siiiiis) Replaces the JSON blob previously returned by getPreTileGeometriesJson. More...
 
struct  RestoreTargetResult
 D-Bus struct for restore navigation result: (bbiiii) More...
 
struct  SnapAllResultEntry
 D-Bus struct for snap-all result entries: (sssiiii) Carries targetZoneId so the plugin can confirm snaps without a second JSON parse. More...
 
struct  SnapAssistCandidate
 D-Bus struct for snap assist candidate: (ssss) More...
 
struct  SnapConfirmationEntry
 D-Bus struct for batch snap confirmation: (sssb) More...
 
struct  SwapTargetResult
 D-Bus struct for swap navigation result: (bssiiiissiiiissss) More...
 
struct  TileRequestEntry
 D-Bus struct for autotile tile requests: (siiiissbb) More...
 
struct  UnfloatRestoreResult
 D-Bus struct for unfloat restore result: (bassiiii). More...
 
struct  WindowGeometryEntry
 D-Bus struct for batch geometry entries: (siiiis) More...
 
struct  WindowOpenedEntry
 D-Bus struct for batch window-opened notification: (ssii) More...
 
struct  WindowStateEntry
 D-Bus struct for window state: (sssbsasb) More...
 
struct  ZoneGeometryRect
 D-Bus struct for zone geometry: (iiii) More...
 

Typedefs

using TileRequestList = QList< TileRequestEntry >
 
using AlgorithmInfoList = QList< AlgorithmInfoEntry >
 
using PreTileGeometryList = QList< PreTileGeometryEntry >
 
using SnapAllResultList = QList< SnapAllResultEntry >
 
using WindowGeometryList = QList< WindowGeometryEntry >
 
using SnapConfirmationList = QList< SnapConfirmationEntry >
 
using WindowOpenedList = QList< WindowOpenedEntry >
 
using WindowStateList = QList< WindowStateEntry >
 
using ZoneGeometryList = QList< ZoneGeometryRect >
 
using EmptyZoneList = QList< EmptyZoneEntry >
 
using SnapAssistCandidateList = QList< SnapAssistCandidate >
 
using NamedZoneGeometryList = QList< NamedZoneGeometry >
 

Enumerations

enum class  DragBypassReason : int { None = 0 , AutotileScreen = 1 , SnappingDisabled = 2 , ContextDisabled = 3 }
 Why a drag was bypassed from the canonical snap pipeline. More...
 

Functions

PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const TileRequestEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, TileRequestEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const AlgorithmInfoEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, AlgorithmInfoEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const PreTileGeometryEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, PreTileGeometryEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const BridgeRegistrationResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, BridgeRegistrationResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QLoggingCategory & lcPhosphorProtocol ()
 
PhosphorDBus::Client daemonClient ()
 A PhosphorDBus::Client bound to the PlasmaZones daemon.
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const DragPolicy &p)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, DragPolicy &p)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const DragOutcome &o)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, DragOutcome &o)
 
PHOSPHORPROTOCOLTYPES_EXPORT QString toWireString (DragBypassReason r)
 Convert to the legacy wire-format string. Returns an empty QString for None.
 
PHOSPHORPROTOCOLTYPES_EXPORT DragBypassReason bypassReasonFromWireString (const QString &s)
 Parse from the legacy wire-format string. Unknown values map to None.
 
PHOSPHORPROTOCOLTYPES_EXPORT QDebug operator<< (QDebug debug, DragBypassReason r)
 QDebug streaming for logging. Prints the enum name (e.g. "AutotileScreen").
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const SnapAllResultEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, SnapAllResultEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const MoveTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, MoveTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const FocusTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, FocusTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const CycleTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, CycleTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const SwapTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, SwapTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const RestoreTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, RestoreTargetResult &e)
 
PHOSPHORPROTOCOL_EXPORT void registerWireTypes ()
 Register every PhosphorProtocol wire type with the Qt D-Bus metatype system.
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const WindowGeometryEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, WindowGeometryEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const SnapConfirmationEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, SnapConfirmationEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const WindowOpenedEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, WindowOpenedEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const WindowStateEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, WindowStateEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const UnfloatRestoreResult &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, UnfloatRestoreResult &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const ZoneGeometryRect &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, ZoneGeometryRect &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const EmptyZoneEntry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, EmptyZoneEntry &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const SnapAssistCandidate &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, SnapAssistCandidate &e)
 
PHOSPHORPROTOCOL_EXPORT QDBusArgument & operator<< (QDBusArgument &arg, const NamedZoneGeometry &e)
 
PHOSPHORPROTOCOL_EXPORT const QDBusArgument & operator>> (const QDBusArgument &arg, NamedZoneGeometry &e)
 

Detailed Description

D-Bus marshalling for the autotile value types (see AutotileTypes.h).

D-Bus marshalling for the zone / overlay value types (see ZoneTypes.h).

D-Bus marshalling for the window-tracking value types (see WindowTypes.h).

D-Bus marshalling for the snap-navigation value types (see NavigationTypes.h).

D-Bus marshalling for the window-drag value types (see DragTypes.h).

D-Bus marshalling for the compositor-bridge value types (see BridgeTypes.h).

Pulls in ZoneMarshalling.h because the DragOutcome marshaller streams a nested EmptyZoneList.

Typedef Documentation

◆ AlgorithmInfoList

◆ EmptyZoneList

◆ NamedZoneGeometryList

◆ PreTileGeometryList

◆ SnapAllResultList

◆ SnapAssistCandidateList

◆ SnapConfirmationList

◆ TileRequestList

◆ WindowGeometryList

◆ WindowOpenedList

◆ WindowStateList

◆ ZoneGeometryList

Enumeration Type Documentation

◆ DragBypassReason

enum class PhosphorProtocol::DragBypassReason : int
strong

Why a drag was bypassed from the canonical snap pipeline.

The daemon's computeDragPolicy picks exactly one of these based on the drag's context, and both sides route behavior off the value. Replaces the free-form QString bypassReason that carried "" / "autotile_screen" / "snapping_disabled" / "context_disabled" as magic strings.

Wire format: unchanged — serialized as the same legacy string via toWireString()/fromWireString() inside the DragPolicy marshaller, so no ApiVersion bump is required. Unknown wire values parse to None (matches the old behavior where unrecognized strings didn't match the autotile branch and fell through to the canonical snap path).

Enumerator
None 

canonical snap path — drag flows through the snap pipeline

AutotileScreen 

drag started/ended on an autotile screen — engine owns placement

SnappingDisabled 

snap mode off globally — dead drag

ContextDisabled 

monitor/desktop/activity excluded in settings — dead drag

Function Documentation

◆ bypassReasonFromWireString()

PHOSPHORPROTOCOLTYPES_EXPORT DragBypassReason PhosphorProtocol::bypassReasonFromWireString ( const QString &  s)

Parse from the legacy wire-format string. Unknown values map to None.

◆ daemonClient()

PhosphorDBus::Client PhosphorProtocol::daemonClient ( )
inline

A PhosphorDBus::Client bound to the PlasmaZones daemon.

Returned by value — Client is a cheap handle, so this is not a singleton and holds no shared global state. It binds the canonical org.plasmazones service / /PlasmaZones object on the session bus, with call failures logged under lcPhosphorProtocol().

Generic, service-agnostic D-Bus plumbing lives in PhosphorDBus; this is the thin PlasmaZones-specific binding on top.

◆ lcPhosphorProtocol()

PHOSPHORPROTOCOL_EXPORT const QLoggingCategory & PhosphorProtocol::lcPhosphorProtocol ( )

◆ operator<<() [1/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const AlgorithmInfoEntry e 
)

◆ operator<<() [2/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const BridgeRegistrationResult e 
)

◆ operator<<() [3/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const CycleTargetResult e 
)

◆ operator<<() [4/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const DragOutcome o 
)

◆ operator<<() [5/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const DragPolicy p 
)

◆ operator<<() [6/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const EmptyZoneEntry e 
)

◆ operator<<() [7/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const FocusTargetResult e 
)

◆ operator<<() [8/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const MoveTargetResult e 
)

◆ operator<<() [9/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const NamedZoneGeometry e 
)

◆ operator<<() [10/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const PreTileGeometryEntry e 
)

◆ operator<<() [11/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const RestoreTargetResult e 
)

◆ operator<<() [12/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const SnapAllResultEntry e 
)

◆ operator<<() [13/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const SnapAssistCandidate e 
)

◆ operator<<() [14/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const SnapConfirmationEntry e 
)

◆ operator<<() [15/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const SwapTargetResult e 
)

◆ operator<<() [16/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const TileRequestEntry e 
)

◆ operator<<() [17/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const UnfloatRestoreResult e 
)

◆ operator<<() [18/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const WindowGeometryEntry e 
)

◆ operator<<() [19/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const WindowOpenedEntry e 
)

◆ operator<<() [20/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const WindowStateEntry e 
)

◆ operator<<() [21/22]

PHOSPHORPROTOCOL_EXPORT QDBusArgument & PhosphorProtocol::operator<< ( QDBusArgument &  arg,
const ZoneGeometryRect e 
)

◆ operator<<() [22/22]

PHOSPHORPROTOCOLTYPES_EXPORT QDebug PhosphorProtocol::operator<< ( QDebug  debug,
DragBypassReason  r 
)

QDebug streaming for logging. Prints the enum name (e.g. "AutotileScreen").

◆ operator>>() [1/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
AlgorithmInfoEntry e 
)

◆ operator>>() [2/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
BridgeRegistrationResult e 
)

◆ operator>>() [3/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
CycleTargetResult e 
)

◆ operator>>() [4/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
DragOutcome o 
)

◆ operator>>() [5/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
DragPolicy p 
)

◆ operator>>() [6/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
EmptyZoneEntry e 
)

◆ operator>>() [7/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
FocusTargetResult e 
)

◆ operator>>() [8/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
MoveTargetResult e 
)

◆ operator>>() [9/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
NamedZoneGeometry e 
)

◆ operator>>() [10/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
PreTileGeometryEntry e 
)

◆ operator>>() [11/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
RestoreTargetResult e 
)

◆ operator>>() [12/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
SnapAllResultEntry e 
)

◆ operator>>() [13/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
SnapAssistCandidate e 
)

◆ operator>>() [14/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
SnapConfirmationEntry e 
)

◆ operator>>() [15/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
SwapTargetResult e 
)

◆ operator>>() [16/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
TileRequestEntry e 
)

◆ operator>>() [17/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
UnfloatRestoreResult e 
)

◆ operator>>() [18/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
WindowGeometryEntry e 
)

◆ operator>>() [19/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
WindowOpenedEntry e 
)

◆ operator>>() [20/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
WindowStateEntry e 
)

◆ operator>>() [21/21]

PHOSPHORPROTOCOL_EXPORT const QDBusArgument & PhosphorProtocol::operator>> ( const QDBusArgument &  arg,
ZoneGeometryRect e 
)

◆ registerWireTypes()

PHOSPHORPROTOCOL_EXPORT void PhosphorProtocol::registerWireTypes ( )

Register every PhosphorProtocol wire type with the Qt D-Bus metatype system.

Call once at startup (daemon and compositor plugin) before any adaptor is registered on the bus.

◆ toWireString()

PHOSPHORPROTOCOLTYPES_EXPORT QString PhosphorProtocol::toWireString ( DragBypassReason  r)

Convert to the legacy wire-format string. Returns an empty QString for None.