diff options
| author | Vaxry <vaxry@vaxry.net> | 2024-08-03 17:58:06 +0200 |
|---|---|---|
| committer | Vaxry <vaxry@vaxry.net> | 2024-08-03 17:58:06 +0200 |
| commit | ae50f8614d92132d918663ea7551bd68eb13953a (patch) | |
| tree | 566b716cbb4e3c56f2977c8c86dc73e6ccf50524 /src/protocols/LayerShell.hpp | |
| parent | 9f5a57ff4569db57372bd86bd48add85a3a1a5e4 (diff) | |
wayland/surface: fixup self-owning surface roles
fixes #7133
Diffstat (limited to 'src/protocols/LayerShell.hpp')
| -rw-r--r-- | src/protocols/LayerShell.hpp | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/protocols/LayerShell.hpp b/src/protocols/LayerShell.hpp index ee0b7859..801bdfd6 100644 --- a/src/protocols/LayerShell.hpp +++ b/src/protocols/LayerShell.hpp @@ -12,16 +12,26 @@ class CMonitor; class CWLSurfaceResource; +class CLayerShellResource; -class CLayerShellResource : public ISurfaceRole { +class CLayerShellRole : public ISurfaceRole { + public: + CLayerShellRole(SP<CLayerShellResource> ls); + + virtual eSurfaceRole role() { + return SURFACE_ROLE_LAYER_SHELL; + } + + WP<CLayerShellResource> layerSurface; +}; +class CLayerShellResource { public: CLayerShellResource(SP<CZwlrLayerSurfaceV1> resource_, SP<CWLSurfaceResource> surf_, std::string namespace_, CMonitor* pMonitor, zwlrLayerShellV1Layer layer); ~CLayerShellResource(); - bool good(); - void configure(const Vector2D& size); - void sendClosed(); - virtual eSurfaceRole role(); + bool good(); + void configure(const Vector2D& size); + void sendClosed(); enum eCommittedState { STATE_SIZE = (1 << 0), |
