aboutsummaryrefslogtreecommitdiffstats
path: root/include/sway/tree/view.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/sway/tree/view.h')
-rw-r--r--include/sway/tree/view.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h
index 7dc8ac46..3bdfe252 100644
--- a/include/sway/tree/view.h
+++ b/include/sway/tree/view.h
@@ -26,6 +26,8 @@ enum sway_view_prop {
26}; 26};
27 27
28struct sway_view_impl { 28struct sway_view_impl {
29 void (*get_constraints)(struct sway_view *view, double *min_width,
30 double *max_width, double *min_height, double *max_height);
29 const char *(*get_string_prop)(struct sway_view *view, 31 const char *(*get_string_prop)(struct sway_view *view,
30 enum sway_view_prop prop); 32 enum sway_view_prop prop);
31 uint32_t (*get_int_prop)(struct sway_view *view, enum sway_view_prop prop); 33 uint32_t (*get_int_prop)(struct sway_view *view, enum sway_view_prop prop);
@@ -35,6 +37,7 @@ struct sway_view_impl {
35 void (*set_tiled)(struct sway_view *view, bool tiled); 37 void (*set_tiled)(struct sway_view *view, bool tiled);
36 void (*set_fullscreen)(struct sway_view *view, bool fullscreen); 38 void (*set_fullscreen)(struct sway_view *view, bool fullscreen);
37 bool (*wants_floating)(struct sway_view *view); 39 bool (*wants_floating)(struct sway_view *view);
40 bool (*has_client_side_decorations)(struct sway_view *view);
38 void (*for_each_surface)(struct sway_view *view, 41 void (*for_each_surface)(struct sway_view *view,
39 wlr_surface_iterator_func_t iterator, void *user_data); 42 wlr_surface_iterator_func_t iterator, void *user_data);
40 void (*close)(struct sway_view *view); 43 void (*close)(struct sway_view *view);
@@ -68,6 +71,11 @@ struct sway_view {
68 bool border_bottom; 71 bool border_bottom;
69 bool border_left; 72 bool border_left;
70 bool border_right; 73 bool border_right;
74 bool using_csd;
75
76 struct timespec urgent;
77 bool allow_request_urgent;
78 struct wl_event_source *urgent_timer;
71 79
72 bool destroying; 80 bool destroying;
73 81
@@ -102,6 +110,8 @@ struct sway_xdg_shell_v6_view {
102 struct wl_listener request_resize; 110 struct wl_listener request_resize;
103 struct wl_listener request_maximize; 111 struct wl_listener request_maximize;
104 struct wl_listener request_fullscreen; 112 struct wl_listener request_fullscreen;
113 struct wl_listener set_title;
114 struct wl_listener set_app_id;
105 struct wl_listener new_popup; 115 struct wl_listener new_popup;
106 struct wl_listener map; 116 struct wl_listener map;
107 struct wl_listener unmap; 117 struct wl_listener unmap;
@@ -116,6 +126,8 @@ struct sway_xdg_shell_view {
116 struct wl_listener request_resize; 126 struct wl_listener request_resize;
117 struct wl_listener request_maximize; 127 struct wl_listener request_maximize;
118 struct wl_listener request_fullscreen; 128 struct wl_listener request_fullscreen;
129 struct wl_listener set_title;
130 struct wl_listener set_app_id;
119 struct wl_listener new_popup; 131 struct wl_listener new_popup;
120 struct wl_listener map; 132 struct wl_listener map;
121 struct wl_listener unmap; 133 struct wl_listener unmap;
@@ -134,6 +146,7 @@ struct sway_xwayland_view {
134 struct wl_listener set_title; 146 struct wl_listener set_title;
135 struct wl_listener set_class; 147 struct wl_listener set_class;
136 struct wl_listener set_window_type; 148 struct wl_listener set_window_type;
149 struct wl_listener set_hints;
137 struct wl_listener map; 150 struct wl_listener map;
138 struct wl_listener unmap; 151 struct wl_listener unmap;
139 struct wl_listener destroy; 152 struct wl_listener destroy;
@@ -208,6 +221,9 @@ uint32_t view_get_window_type(struct sway_view *view);
208 221
209const char *view_get_shell(struct sway_view *view); 222const char *view_get_shell(struct sway_view *view);
210 223
224void view_get_constraints(struct sway_view *view, double *min_width,
225 double *max_width, double *min_height, double *max_height);
226
211uint32_t view_configure(struct sway_view *view, double lx, double ly, int width, 227uint32_t view_configure(struct sway_view *view, double lx, double ly, int width,
212 int height); 228 int height);
213 229
@@ -304,4 +320,8 @@ void view_update_marks_textures(struct sway_view *view);
304 */ 320 */
305bool view_is_visible(struct sway_view *view); 321bool view_is_visible(struct sway_view *view);
306 322
323void view_set_urgent(struct sway_view *view, bool enable);
324
325bool view_is_urgent(struct sway_view *view);
326
307#endif 327#endif