aboutsummaryrefslogtreecommitdiff
path: root/include/sway/tree/view.h
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2018-08-02 09:46:53 -0400
committerGitHub <noreply@github.com>2018-08-02 09:46:53 -0400
commit3eda76de4869984eed7b9476b9e011b6981ecbe5 (patch)
treebecf792130769384e5a104cef540b1f2d7da00b4 /include/sway/tree/view.h
parentea14ef40955a94e21a5198d2469e54fe1e6056e5 (diff)
parent787f08da7ff9ecb325def2e3a44dc5043d7e2753 (diff)
Merge pull request #2407 from RyanDwyer/fix-popups-v3
Fix popups v3
Diffstat (limited to 'include/sway/tree/view.h')
-rw-r--r--include/sway/tree/view.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h
index 6d8c3e6c..37fd02bc 100644
--- a/include/sway/tree/view.h
+++ b/include/sway/tree/view.h
@@ -47,6 +47,8 @@ struct sway_view_impl {
bool (*has_client_side_decorations)(struct sway_view *view);
void (*for_each_surface)(struct sway_view *view,
wlr_surface_iterator_func_t iterator, void *user_data);
+ void (*for_each_popup)(struct sway_view *view,
+ wlr_surface_iterator_func_t iterator, void *user_data);
void (*close)(struct sway_view *view);
void (*close_popups)(struct sway_view *view);
void (*destroy)(struct sway_view *view);
@@ -254,9 +256,18 @@ void view_close_popups(struct sway_view *view);
void view_damage_from(struct sway_view *view);
+/**
+ * Iterate all surfaces of a view (toplevels + popups).
+ */
void view_for_each_surface(struct sway_view *view,
wlr_surface_iterator_func_t iterator, void *user_data);
+/**
+ * Iterate all popups recursively.
+ */
+void view_for_each_popup(struct sway_view *view,
+ wlr_surface_iterator_func_t iterator, void *user_data);
+
// view implementation
void view_init(struct sway_view *view, enum sway_view_type type,