summaryrefslogtreecommitdiff
path: root/sway/desktop/xdg_shell.c
diff options
context:
space:
mode:
authorDrew DeVault <[email protected]>2018-08-02 09:46:53 -0400
committerGitHub <[email protected]>2018-08-02 09:46:53 -0400
commit3eda76de4869984eed7b9476b9e011b6981ecbe5 (patch)
treebecf792130769384e5a104cef540b1f2d7da00b4 /sway/desktop/xdg_shell.c
parentea14ef40955a94e21a5198d2469e54fe1e6056e5 (diff)
parent787f08da7ff9ecb325def2e3a44dc5043d7e2753 (diff)
Merge pull request #2407 from RyanDwyer/fix-popups-v3
Fix popups v3
Diffstat (limited to 'sway/desktop/xdg_shell.c')
-rw-r--r--sway/desktop/xdg_shell.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sway/desktop/xdg_shell.c b/sway/desktop/xdg_shell.c
index 9d6b27e5..b364663d 100644
--- a/sway/desktop/xdg_shell.c
+++ b/sway/desktop/xdg_shell.c
@@ -179,6 +179,14 @@ static void for_each_surface(struct sway_view *view,
user_data);
}
+static void for_each_popup(struct sway_view *view,
+ wlr_surface_iterator_func_t iterator, void *user_data) {
+ if (xdg_shell_view_from_view(view) == NULL) {
+ return;
+ }
+ wlr_xdg_surface_for_each_popup(view->wlr_xdg_surface, iterator, user_data);
+}
+
static void _close(struct sway_view *view) {
if (xdg_shell_view_from_view(view) == NULL) {
return;
@@ -219,6 +227,7 @@ static const struct sway_view_impl view_impl = {
.set_fullscreen = set_fullscreen,
.wants_floating = wants_floating,
.for_each_surface = for_each_surface,
+ .for_each_popup = for_each_popup,
.close = _close,
.close_popups = close_popups,
.destroy = destroy,