diff options
| author | Simon Ser <contact@emersion.fr> | 2024-02-12 21:13:35 +0100 |
|---|---|---|
| committer | Kirill Primak <vyivel@eclair.cafe> | 2025-01-21 20:26:19 +0300 |
| commit | 8acb0482da68af69d52ab168f9e30e2464b9c7a3 (patch) | |
| tree | e05aae50dc8afa670b35184a1c9b0e38d748a7e0 | |
| parent | 30c858423dcdfb82d768a5025b5f00c19b250322 (diff) | |
Add ext-image-copy-capture-v1 and ext-image-capture-source-v1
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4545
| -rw-r--r-- | include/sway/server.h | 1 | ||||
| -rw-r--r-- | protocols/meson.build | 9 | ||||
| -rw-r--r-- | sway/server.c | 5 |
3 files changed, 12 insertions, 3 deletions
diff --git a/include/sway/server.h b/include/sway/server.h index ccf4a9cc..7b76eb90 100644 --- a/include/sway/server.h +++ b/include/sway/server.h @@ -106,6 +106,7 @@ struct sway_server { struct wlr_content_type_manager_v1 *content_type_manager_v1; struct wlr_data_control_manager_v1 *data_control_manager_v1; struct wlr_screencopy_manager_v1 *screencopy_manager_v1; + struct wlr_ext_image_copy_capture_manager_v1 *ext_image_copy_capture_manager_v1; struct wlr_export_dmabuf_manager_v1 *export_dmabuf_manager_v1; struct wlr_security_context_manager_v1 *security_context_manager_v1; diff --git a/protocols/meson.build b/protocols/meson.build index d96f8757..4d24e707 100644 --- a/protocols/meson.build +++ b/protocols/meson.build @@ -9,12 +9,15 @@ wayland_scanner = find_program( protocols = [ wl_protocol_dir / 'stable/tablet/tablet-v2.xml', wl_protocol_dir / 'stable/xdg-shell/xdg-shell.xml', - wl_protocol_dir / 'unstable/xdg-output/xdg-output-unstable-v1.xml', - wl_protocol_dir / 'unstable/pointer-constraints/pointer-constraints-unstable-v1.xml', - wl_protocol_dir / 'unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml', wl_protocol_dir / 'staging/content-type/content-type-v1.xml', wl_protocol_dir / 'staging/cursor-shape/cursor-shape-v1.xml', + wl_protocol_dir / 'staging/ext-foreign-toplevel-list/ext-foreign-toplevel-list-v1.xml', + wl_protocol_dir / 'staging/ext-image-capture-source/ext-image-capture-source-v1.xml', + wl_protocol_dir / 'staging/ext-image-copy-capture/ext-image-copy-capture-v1.xml', wl_protocol_dir / 'staging/tearing-control/tearing-control-v1.xml', + wl_protocol_dir / 'unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml', + wl_protocol_dir / 'unstable/pointer-constraints/pointer-constraints-unstable-v1.xml', + wl_protocol_dir / 'unstable/xdg-output/xdg-output-unstable-v1.xml', 'wlr-layer-shell-unstable-v1.xml', 'idle.xml', 'wlr-output-power-management-unstable-v1.xml', diff --git a/sway/server.c b/sway/server.c index cbc0d259..c7fc2a6d 100644 --- a/sway/server.c +++ b/sway/server.c @@ -19,6 +19,8 @@ #include <wlr/types/wlr_export_dmabuf_v1.h> #include <wlr/types/wlr_ext_foreign_toplevel_list_v1.h> #include <wlr/types/wlr_foreign_toplevel_management_v1.h> +#include <wlr/types/wlr_ext_image_capture_source_v1.h> +#include <wlr/types/wlr_ext_image_copy_capture_v1.h> #include <wlr/types/wlr_fractional_scale_v1.h> #include <wlr/types/wlr_gamma_control_v1.h> #include <wlr/types/wlr_idle_notify_v1.h> @@ -108,6 +110,7 @@ static bool is_privileged(const struct wl_global *global) { global == server.foreign_toplevel_manager->global || global == server.data_control_manager_v1->global || global == server.screencopy_manager_v1->global || + global == server.ext_image_copy_capture_manager_v1->global || global == server.export_dmabuf_manager_v1->global || global == server.security_context_manager_v1->global || global == server.gamma_control_manager_v1->global || @@ -371,6 +374,8 @@ bool server_init(struct sway_server *server) { server->export_dmabuf_manager_v1 = wlr_export_dmabuf_manager_v1_create(server->wl_display); server->screencopy_manager_v1 = wlr_screencopy_manager_v1_create(server->wl_display); + server->ext_image_copy_capture_manager_v1 = wlr_ext_image_copy_capture_manager_v1_create(server->wl_display, 1); + wlr_ext_output_image_capture_source_manager_v1_create(server->wl_display, 1); server->data_control_manager_v1 = wlr_data_control_manager_v1_create(server->wl_display); server->security_context_manager_v1 = wlr_security_context_manager_v1_create(server->wl_display); wlr_viewporter_create(server->wl_display); |
