diff options
author | Ivan Molodetskikh <yalterz@gmail.com> | 2019-09-25 17:35:41 +0300 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2019-11-17 20:18:42 +0100 |
commit | bd9a53f1a3e7dba247aab0a4e4268724acc12c38 (patch) | |
tree | 1547b79a82b1c4e22512d0262cbb133a14ef10a3 /include/sway | |
parent | 5421198489675d4700e68eb143c94cda914c8586 (diff) |
view: add max_render_time
Diffstat (limited to 'include/sway')
-rw-r--r-- | include/sway/commands.h | 1 | ||||
-rw-r--r-- | include/sway/output.h | 2 | ||||
-rw-r--r-- | include/sway/surface.h | 7 | ||||
-rw-r--r-- | include/sway/tree/view.h | 2 |
4 files changed, 11 insertions, 1 deletions
diff --git a/include/sway/commands.h b/include/sway/commands.h index 5d468a42..45b5b0f4 100644 --- a/include/sway/commands.h +++ b/include/sway/commands.h @@ -145,6 +145,7 @@ sway_cmd cmd_kill; sway_cmd cmd_layout; sway_cmd cmd_log_colors; sway_cmd cmd_mark; +sway_cmd cmd_max_render_time; sway_cmd cmd_mode; sway_cmd cmd_mouse_warping; sway_cmd cmd_move; diff --git a/include/sway/output.h b/include/sway/output.h index 741f5b5e..ddc08022 100644 --- a/include/sway/output.h +++ b/include/sway/output.h @@ -72,7 +72,7 @@ struct sway_output *output_get_in_direction(struct sway_output *reference, void output_add_workspace(struct sway_output *output, struct sway_workspace *workspace); -typedef void (*sway_surface_iterator_func_t)(struct sway_output *output, +typedef void (*sway_surface_iterator_func_t)(struct sway_output *output, struct sway_view *view, struct wlr_surface *surface, struct wlr_box *box, float rotation, void *user_data); diff --git a/include/sway/surface.h b/include/sway/surface.h index 06874af2..4da96c02 100644 --- a/include/sway/surface.h +++ b/include/sway/surface.h @@ -6,6 +6,13 @@ struct sway_surface { struct wlr_surface *wlr_surface; struct wl_listener destroy; + + /** + * This timer can be used for issuing delayed frame done callbacks (for + * example, to improve presentation latency). Its handler is set to a + * function that issues a frame done callback to this surface. + */ + struct wl_event_source *frame_done_timer; }; #endif diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h index 44cd4a7b..29c87967 100644 --- a/include/sway/tree/view.h +++ b/include/sway/tree/view.h @@ -108,6 +108,8 @@ struct sway_view { } events; struct wl_listener surface_new_subsurface; + + int max_render_time; // In milliseconds }; struct sway_xdg_shell_view { |