diff options
author | emersion <contact@emersion.fr> | 2017-12-17 18:02:55 +0100 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2017-12-17 18:02:55 +0100 |
commit | 0256de00029e8f17da0514e14460fb9ff2283433 (patch) | |
tree | fed0f00d1888d0c6509b071668a03a372691f9f0 /include | |
parent | b852fb9a2b3842dc6d122a2483c11322beb7a489 (diff) |
Add full refresh rate support to custom modes
Diffstat (limited to 'include')
-rw-r--r-- | include/backend/headless.h | 2 | ||||
-rw-r--r-- | include/wlr/backend/headless.h | 1 | ||||
-rw-r--r-- | include/wlr/interfaces/wlr_output.h | 6 | ||||
-rw-r--r-- | include/wlr/types/wlr_output.h | 1 |
4 files changed, 8 insertions, 2 deletions
diff --git a/include/backend/headless.h b/include/backend/headless.h index e4cc85e4..6aaf5f76 100644 --- a/include/backend/headless.h +++ b/include/backend/headless.h @@ -11,6 +11,7 @@ struct wlr_headless_backend { struct wl_display *display; struct wl_list outputs; struct wl_listener display_destroy; + bool started; }; struct wlr_headless_backend_output { @@ -21,6 +22,7 @@ struct wlr_headless_backend_output { void *egl_surface; struct wl_event_source *frame_timer; + int frame_delay; // ms }; #endif diff --git a/include/wlr/backend/headless.h b/include/wlr/backend/headless.h index 475c2f6c..245a65dc 100644 --- a/include/wlr/backend/headless.h +++ b/include/wlr/backend/headless.h @@ -9,5 +9,6 @@ struct wlr_output *wlr_headless_add_output(struct wlr_backend *backend, unsigned int width, unsigned int height); struct wlr_input_device *wlr_headless_add_input(struct wlr_backend *backend, enum wlr_input_device_type type); +bool wlr_backend_is_headless(struct wlr_backend *backend); #endif diff --git a/include/wlr/interfaces/wlr_output.h b/include/wlr/interfaces/wlr_output.h index 1cfe7568..6d71f9b6 100644 --- a/include/wlr/interfaces/wlr_output.h +++ b/include/wlr/interfaces/wlr_output.h @@ -28,8 +28,10 @@ struct wlr_output_impl { void wlr_output_init(struct wlr_output *output, struct wlr_backend *backend, const struct wlr_output_impl *impl); void wlr_output_free(struct wlr_output *output); -void wlr_output_update_size(struct wlr_output *output, int32_t width, - int32_t height); +void wlr_output_update_mode(struct wlr_output *output, + struct wlr_output_mode *mode); +void wlr_output_update_custom_mode(struct wlr_output *output, int32_t width, + int32_t height, int32_t refresh); struct wl_global *wlr_output_create_global(struct wlr_output *wlr_output, struct wl_display *display); void wlr_output_destroy_global(struct wlr_output *wlr_output); diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index 037fa515..a974a154 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -47,6 +47,7 @@ struct wlr_output { char serial[16]; float scale; int32_t width, height; + int32_t refresh; // mHz int32_t phys_width, phys_height; // mm enum wl_output_subpixel subpixel; enum wl_output_transform transform; |