6#include <PhosphorLayer/phosphorlayer_export.h>
14class ILayerShellTransport;
59 QObject* parent =
nullptr);
96 std::unique_ptr<Impl> m_impl;
Abstracts the layer-shell protocol binding.
Definition ILayerShellTransport.h:111
Source-of-truth interface for the available QScreen set.
Definition IScreenProvider.h:62
Reacts to screen hot-plug / virtual-screen reconfiguration / compositor restart; drives surface recre...
Definition TopologyCoordinator.h:51
void compositorRestarted()
Transport signalled compositor loss (wlr-layer-shell global removed).
void detachSyncCallback(CallbackId id)
void screensChanged()
All sync callbacks have run; the screen set is stable again.
quint64 CallbackId
Definition TopologyCoordinator.h:77
~TopologyCoordinator() override
std::function< void()> SyncCallback
Register a callback invoked whenever the coordinator decides the screen set has materially changed.
Definition TopologyCoordinator.h:76
TopologyCoordinator(IScreenProvider *screens, ILayerShellTransport *transport, TopologyConfig cfg={}, QObject *parent=nullptr)
CallbackId attachSyncCallback(SyncCallback cb)
void screensChanging()
Debounce fired; the consumer should snapshot any state that depends on the current screen set before ...
Definition SurfaceAnimator.h:26
Tunables for TopologyCoordinator.
Definition TopologyCoordinator.h:26
int debounceMs
Coalesce screensChanged bursts.
Definition TopologyCoordinator.h:27
bool debugLogDiffs
Definition TopologyCoordinator.h:28