7#include <PhosphorLayer/phosphorlayer_export.h>
63 QScreen* screen =
nullptr;
80 QQmlEngine* sharedEngine =
nullptr;
110 bool keepMappedOnHide =
false;
133 QSize initialSize = {};
142 return layerOverride.value_or(role.
layer);
146 return anchorsOverride.value_or(role.
anchors);
154 return keyboardOverride.value_or(role.
keyboard);
162 return debugName.isEmpty() ? role.
scopePrefix : debugName;
Definition SurfaceAnimator.h:26
KeyboardInteractivity
Keyboard focus policy (wlr-layer-shell v4 adds OnDemand).
Definition Role.h:51
Layer
Meta-object context for namespace-level enums so QML and QMetaEnum can stringify them.
Definition Role.h:24
Value type describing a surface's protocol-level configuration.
Definition Role.h:77
Layer layer
Definition Role.h:78
int exclusiveZone
-1 = ignore other surfaces' zones
Definition Role.h:80
QMargins defaultMargins
Definition Role.h:82
QString scopePrefix
Namespace for this role's surfaces (wl_surface scope)
Definition Role.h:83
Anchors anchors
Definition Role.h:79
KeyboardInteractivity keyboard
Definition Role.h:81
Immutable per-surface configuration passed to SurfaceFactory::create().
Definition SurfaceConfig.h:46
Layer effectiveLayer() const noexcept
Definition SurfaceConfig.h:140
QUrl contentUrl
QML root component URL (qrc:/… or file://…).
Definition SurfaceConfig.h:52
SurfaceConfig & operator=(const SurfaceConfig &)=delete
std::optional< int > exclusiveZoneOverride
Definition SurfaceConfig.h:89
SurfaceConfig(SurfaceConfig &&) noexcept
SurfaceConfig(const SurfaceConfig &)=delete
std::optional< QMargins > marginsOverride
Definition SurfaceConfig.h:91
QVariantMap windowProperties
Applied to the QQuickWindow as dynamic properties (via QObject:: setProperty) BEFORE the QML content ...
Definition SurfaceConfig.h:75
QMargins effectiveMargins() const noexcept
Definition SurfaceConfig.h:156
std::optional< KeyboardInteractivity > keyboardOverride
Definition SurfaceConfig.h:90
std::optional< Anchors > anchorsOverride
Definition SurfaceConfig.h:88
QString effectiveDebugName() const
Definition SurfaceConfig.h:160
KeyboardInteractivity effectiveKeyboard() const noexcept
Definition SurfaceConfig.h:152
QVariantMap contextProperties
Injected into the surface's QML root context.
Definition SurfaceConfig.h:67
int effectiveExclusiveZone() const noexcept
Definition SurfaceConfig.h:148
std::unique_ptr< QQuickItem > contentItem
Pre-built QQuickItem.
Definition SurfaceConfig.h:58
QString debugName
Logged in state transitions. Defaults to Role::scopePrefix when empty.
Definition SurfaceConfig.h:136
Role role
Protocol-level defaults. Required.
Definition SurfaceConfig.h:48
Anchors effectiveAnchors() const noexcept
Definition SurfaceConfig.h:144
std::optional< Layer > layerOverride
Definition SurfaceConfig.h:87