handle layer popups

This commit is contained in:
vaxerski
2022-03-20 12:11:57 +01:00
parent b0dffc10b7
commit 5d0919fcff
5 changed files with 136 additions and 1 deletions

View File

@@ -12,6 +12,7 @@ struct SLayerSurface {
DYNLISTENER(mapLayerSurface);
DYNLISTENER(unmapLayerSurface);
DYNLISTENER(commitLayerSurface);
DYNLISTENER(newPopup);
wlr_box geometry;
zwlr_layer_shell_v1_layer layer;
@@ -43,4 +44,21 @@ struct SKeyboard {
bool operator==(const SKeyboard& rhs) {
return keyboard == rhs.keyboard;
}
};
struct SLayerPopup {
wlr_xdg_popup* popup = nullptr;
SLayerSurface* parentSurface = nullptr;
wlr_xdg_popup* parentPopup = nullptr;
DYNLISTENER(mapPopup);
DYNLISTENER(destroyPopup);
DYNLISTENER(unmapPopup);
DYNLISTENER(commitPopup);
DYNLISTENER(newPopupFromPopup);
// For the list lookup
bool operator==(const SLayerPopup& rhs) {
return popup == rhs.popup;
}
};