internal: wrap wlr surfaces (#1822)

This commit is contained in:
Vaxry
2023-03-20 15:00:58 +00:00
committed by GitHub
parent d23bbd1687
commit 788a8f7c13
16 changed files with 179 additions and 45 deletions

View File

@@ -6,6 +6,7 @@
#include "../Window.hpp"
#include "SubsurfaceTree.hpp"
#include "AnimatedVariable.hpp"
#include "WLSurface.hpp"
struct SLayerRule {
std::string targetNamespace = "";
@@ -20,6 +21,9 @@ struct SLayerSurface {
wlr_layer_surface_v1* layerSurface;
wl_list link;
CWLSurface surface;
std::list<CWLSurface> popupSurfaces;
DYNLISTENER(destroyLayerSurface);
DYNLISTENER(mapLayerSurface);
DYNLISTENER(unmapLayerSurface);
@@ -172,6 +176,7 @@ class CMonitor;
struct SXDGPopup {
CWindow* parentWindow = nullptr;
SLayerSurface* parentLS = nullptr;
SXDGPopup* parentPopup = nullptr;
wlr_xdg_popup* popup = nullptr;
CMonitor* monitor = nullptr;