tests: Bind the fifo protocol

Add the fifo protocol to the helper framework.

Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
This commit is contained in:
Derek Foreman 2025-09-26 14:09:34 -05:00
parent f50296d4e9
commit 23204eca75
4 changed files with 12 additions and 0 deletions

View file

@ -17,6 +17,7 @@ install_data(
generated_protocols = [
[ 'color-management', 'staging', 'v1' ],
[ 'fifo', 'staging', 'v1' ],
[ 'fullscreen-shell', 'unstable', 'v1' ],
[ 'fractional-scale', 'staging', 'v1' ],
[ 'input-method', 'unstable', 'v1' ],

View file

@ -31,6 +31,8 @@ lib_test_client = static_library(
'weston-test-client-helper.c',
'weston-test-fixture-compositor.c',
'xdg-client-helper.c',
fifo_v1_client_protocol_h,
fifo_v1_protocol_c,
presentation_time_client_protocol_h,
presentation_time_protocol_c,
single_pixel_buffer_v1_client_protocol_h,

View file

@ -934,6 +934,10 @@ handle_global(void *data, struct wl_registry *registry,
&weston_test_interface, version);
weston_test_add_listener(test->weston_test, &test_listener, test);
client->test = test;
} else if (strcmp(interface, wp_fifo_manager_v1_interface.name) == 0) {
client->fifo_manager =
wl_registry_bind(registry, id,
&wp_fifo_manager_v1_interface, 1);
}
}
@ -1201,6 +1205,9 @@ client_destroy(struct client *client)
{
int ret;
if (client->fifo_manager)
wp_fifo_manager_v1_destroy(client->fifo_manager);
if (client->surface)
surface_destroy(client->surface);

View file

@ -44,6 +44,7 @@
#include "weston-output-capture-client-protocol.h"
#include "xdg-shell-client-protocol.h"
#include "weston-testsuite-data.h"
#include "fifo-v1-client-protocol.h"
struct client {
struct wl_display *wl_display;
@ -64,6 +65,7 @@ struct client {
struct wp_viewporter *viewporter;
struct test *test;
struct wp_fifo_manager_v1 *fifo_manager;
/* the seat that is actually used for input events */
struct input *input;
/* server can have more wl_seats. We need keep them all until we