summaryrefslogtreecommitdiff
path: root/src/helpers
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-03-20 12:11:57 +0100
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-03-20 12:11:57 +0100
commit5d0919fcff3ee3e321b1a0b2f1e4a7c6db97f9a8 (patch)
tree9ce424a6b43acb76589c5ee2d63130aaeab7da10 /src/helpers
parentb0dffc10b78f0df73cd4faf530ceeb13c0c3edf0 (diff)
handle layer popups
Diffstat (limited to 'src/helpers')
-rw-r--r--src/helpers/WLClasses.hpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/helpers/WLClasses.hpp b/src/helpers/WLClasses.hpp
index b92d0071..6aef68d1 100644
--- a/src/helpers/WLClasses.hpp
+++ b/src/helpers/WLClasses.hpp
@@ -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;
+ }
}; \ No newline at end of file