summaryrefslogtreecommitdiffstats
path: root/include/sway/tree/view.h
diff options
context:
space:
mode:
authorLibravatar emersion <contact@emersion.fr>2018-08-02 08:11:10 +0100
committerLibravatar GitHub <noreply@github.com>2018-08-02 08:11:10 +0100
commit47bf4ed0cbf104d09bba7f39acbf2ceb84c2c694 (patch)
tree8f0085c1829ab97a920acd9d5116732779177631 /include/sway/tree/view.h
parentCorrectly track saved surfaces during multiple transactions (diff)
parentMerge pull request #2391 from RyanDwyer/fix-popups-v2 (diff)
downloadsway-47bf4ed0cbf104d09bba7f39acbf2ceb84c2c694.tar.gz
sway-47bf4ed0cbf104d09bba7f39acbf2ceb84c2c694.tar.zst
sway-47bf4ed0cbf104d09bba7f39acbf2ceb84c2c694.zip
Merge branch 'master' into fix-resize-wiggle
Diffstat (limited to 'include/sway/tree/view.h')
-rw-r--r--include/sway/tree/view.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h
index 0f9b0bb2..37fd02bc 100644
--- a/include/sway/tree/view.h
+++ b/include/sway/tree/view.h
@@ -47,7 +47,10 @@ struct sway_view_impl {
47 bool (*has_client_side_decorations)(struct sway_view *view); 47 bool (*has_client_side_decorations)(struct sway_view *view);
48 void (*for_each_surface)(struct sway_view *view, 48 void (*for_each_surface)(struct sway_view *view,
49 wlr_surface_iterator_func_t iterator, void *user_data); 49 wlr_surface_iterator_func_t iterator, void *user_data);
50 void (*for_each_popup)(struct sway_view *view,
51 wlr_surface_iterator_func_t iterator, void *user_data);
50 void (*close)(struct sway_view *view); 52 void (*close)(struct sway_view *view);
53 void (*close_popups)(struct sway_view *view);
51 void (*destroy)(struct sway_view *view); 54 void (*destroy)(struct sway_view *view);
52}; 55};
53 56
@@ -249,11 +252,22 @@ void view_set_tiled(struct sway_view *view, bool tiled);
249 252
250void view_close(struct sway_view *view); 253void view_close(struct sway_view *view);
251 254
255void view_close_popups(struct sway_view *view);
256
252void view_damage_from(struct sway_view *view); 257void view_damage_from(struct sway_view *view);
253 258
259/**
260 * Iterate all surfaces of a view (toplevels + popups).
261 */
254void view_for_each_surface(struct sway_view *view, 262void view_for_each_surface(struct sway_view *view,
255 wlr_surface_iterator_func_t iterator, void *user_data); 263 wlr_surface_iterator_func_t iterator, void *user_data);
256 264
265/**
266 * Iterate all popups recursively.
267 */
268void view_for_each_popup(struct sway_view *view,
269 wlr_surface_iterator_func_t iterator, void *user_data);
270
257// view implementation 271// view implementation
258 272
259void view_init(struct sway_view *view, enum sway_view_type type, 273void view_init(struct sway_view *view, enum sway_view_type type,
@@ -314,6 +328,8 @@ void view_clear_marks(struct sway_view *view);
314 328
315bool view_has_mark(struct sway_view *view, char *mark); 329bool view_has_mark(struct sway_view *view, char *mark);
316 330
331void view_add_mark(struct sway_view *view, char *mark);
332
317void view_update_marks_textures(struct sway_view *view); 333void view_update_marks_textures(struct sway_view *view);
318 334
319/** 335/**