Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
PhosphorWaylandTransport.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 fuddlesworth
2// SPDX-License-Identifier: LGPL-2.1-or-later
3
4#pragma once
5
7#include <PhosphorLayer/phosphorlayer_export.h>
8
9#include <memory>
10
11namespace PhosphorLayer {
12
38class PHOSPHORLAYER_EXPORT PhosphorWaylandTransport : public ILayerShellTransport
39{
40public:
43
44 bool isSupported() const override;
45 std::unique_ptr<ITransportHandle> attach(QQuickWindow* win, const TransportAttachArgs& args) override;
48
49private:
50 class Impl;
51 std::unique_ptr<Impl> m_impl;
52};
53
54} // namespace PhosphorLayer
Abstracts the layer-shell protocol binding.
Definition ILayerShellTransport.h:111
quint64 CompositorLostCookie
Definition ILayerShellTransport.h:150
std::function< void()> CompositorLostCallback
Register a callback fired when the compositor's layer-shell global is removed (compositor crash / res...
Definition ILayerShellTransport.h:149
Default transport: binds surfaces to wlr-layer-shell via PhosphorWayland's LayerSurface class.
Definition PhosphorWaylandTransport.h:39
std::unique_ptr< ITransportHandle > attach(QQuickWindow *win, const TransportAttachArgs &args) override
Mark win as a layer-shell surface with the given initial configuration.
bool isSupported() const override
True if the compositor advertises wlr-layer-shell.
CompositorLostCookie addCompositorLostCallback(CompositorLostCallback cb) override
void removeCompositorLostCallback(CompositorLostCookie cookie) override
Definition SurfaceAnimator.h:26
Arguments passed to ILayerShellTransport::attach().
Definition ILayerShellTransport.h:33