2022-03-17 18:25:16 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../events/Events.hpp"
|
|
|
|
#include "../defines.hpp"
|
|
|
|
#include "../../wlr-layer-shell-unstable-v1-protocol.h"
|
|
|
|
|
|
|
|
struct SLayerSurface {
|
|
|
|
wlr_layer_surface_v1* layerSurface;
|
|
|
|
wl_list link;
|
|
|
|
|
|
|
|
DYNLISTENER(destroyLayerSurface);
|
|
|
|
DYNLISTENER(mapLayerSurface);
|
|
|
|
DYNLISTENER(unmapLayerSurface);
|
|
|
|
DYNLISTENER(commitLayerSurface);
|
|
|
|
|
|
|
|
wlr_box geometry;
|
|
|
|
zwlr_layer_shell_v1_layer layer;
|
2022-03-18 22:35:51 +01:00
|
|
|
|
|
|
|
int monitorID = -1;
|
|
|
|
|
|
|
|
|
|
|
|
// For the list lookup
|
|
|
|
bool operator==(const SLayerSurface& rhs) {
|
|
|
|
return layerSurface == rhs.layerSurface && monitorID == rhs.monitorID;
|
|
|
|
}
|
2022-03-17 20:22:29 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
struct SRenderData {
|
|
|
|
wlr_output* output;
|
|
|
|
timespec* when;
|
|
|
|
int x;
|
|
|
|
int y;
|
|
|
|
};
|
2022-03-17 20:55:04 +01:00
|
|
|
|
|
|
|
struct SKeyboard {
|
|
|
|
wlr_input_device* keyboard;
|
|
|
|
|
|
|
|
DYNLISTENER(keyboardMod);
|
|
|
|
DYNLISTENER(keyboardKey);
|
|
|
|
DYNLISTENER(keyboardDestroy);
|
2022-03-18 23:25:26 +01:00
|
|
|
|
|
|
|
// For the list lookup
|
|
|
|
bool operator==(const SKeyboard& rhs) {
|
|
|
|
return keyboard == rhs.keyboard;
|
|
|
|
}
|
2022-03-17 20:55:04 +01:00
|
|
|
};
|