diff --git a/gui-libs/wlroots/files/13fcdba75cf5f21cfd49c1a05f4fa62f77619b40.patch b/gui-libs/wlroots/files/13fcdba75cf5f21cfd49c1a05f4fa62f77619b40.patch index 29b855a..5193d32 100644 --- a/gui-libs/wlroots/files/13fcdba75cf5f21cfd49c1a05f4fa62f77619b40.patch +++ b/gui-libs/wlroots/files/13fcdba75cf5f21cfd49c1a05f4fa62f77619b40.patch @@ -1,5 +1,18 @@ +From 13fcdba75cf5f21cfd49c1a05f4fa62f77619b40 Mon Sep 17 00:00:00 2001 +From: Sebastian Krzyszkowiak +Date: Sat, 5 Mar 2022 08:00:39 +0100 +Subject: [PATCH] wlr_output_layout_contains_point: handle outputs that aren't + in the layout + +Instead of crashing, return `false` when the specified output isn't part +of the layout, as we can be sure that it doesn't contain the specified +point. +--- + types/wlr_output_layout.c | 3 +++ + 1 file changed, 3 insertions(+) + diff --git a/types/wlr_output_layout.c b/types/wlr_output_layout.c -index 28d91e8d42cfb75b9ca151be451e5ba287f33ca0..ef6e2850ca0e81d12b1cac9d1bc059b0f1f93694 100644 +index 28d91e8d4..ef6e2850c 100644 --- a/types/wlr_output_layout.c +++ b/types/wlr_output_layout.c @@ -231,6 +231,9 @@ bool wlr_output_layout_contains_point(struct wlr_output_layout *layout, @@ -12,3 +25,6 @@ index 28d91e8d42cfb75b9ca151be451e5ba287f33ca0..ef6e2850ca0e81d12b1cac9d1bc059b0 struct wlr_box output_box; output_layout_output_get_box(l_output, &output_box); return wlr_box_contains_point(&output_box, lx, ly); +-- +GitLab + diff --git a/gui-libs/wlroots/files/17b2b06633729f1826715c1d0b84614aa3cedb3a.patch b/gui-libs/wlroots/files/17b2b06633729f1826715c1d0b84614aa3cedb3a.patch index 6611efd..eaeecdb 100644 --- a/gui-libs/wlroots/files/17b2b06633729f1826715c1d0b84614aa3cedb3a.patch +++ b/gui-libs/wlroots/files/17b2b06633729f1826715c1d0b84614aa3cedb3a.patch @@ -1,5 +1,25 @@ +From 17b2b06633729f1826715c1d0b84614aa3cedb3a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Guido=20G=C3=BCnther?= +Date: Mon, 28 Feb 2022 13:49:32 +0100 +Subject: [PATCH] seat: Allow to cancel touches + +After cancelation we destroy the touch points associated with this +surface as the Wayland spec says: + +No further events are sent to the clients from that particular gesture. +Touch cancellation applies to all touch points currently active on this +client's surface. The client is responsible for finalizing the touch +points, future touch points on this surface may re-use the touch point +ID. + +Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/2999 +--- + include/wlr/types/wlr_seat.h | 21 ++++++++++++++++-- + types/seat/wlr_seat_touch.c | 42 ++++++++++++++++++++++++++++++++++++ + 2 files changed, 61 insertions(+), 2 deletions(-) + diff --git a/include/wlr/types/wlr_seat.h b/include/wlr/types/wlr_seat.h -index ebbcfd479e2c8bec747f2ef37ca344eb8cb48645..1946873ae846dcb1b26596fa61962b08b1e57228 100644 +index ebbcfd479..1946873ae 100644 --- a/include/wlr/types/wlr_seat.h +++ b/include/wlr/types/wlr_seat.h @@ -119,9 +119,11 @@ struct wlr_touch_grab_interface { @@ -46,7 +66,7 @@ index ebbcfd479e2c8bec747f2ef37ca344eb8cb48645..1946873ae846dcb1b26596fa61962b08 /** diff --git a/types/seat/wlr_seat_touch.c b/types/seat/wlr_seat_touch.c -index 65a8c7c06c1d9ec35c68e0cb8e7b46ca3039fb3c..abc17ae2ce7a04bb1d533c794a754f30eb681375 100644 +index 65a8c7c06..abc17ae2c 100644 --- a/types/seat/wlr_seat_touch.c +++ b/types/seat/wlr_seat_touch.c @@ -41,6 +41,11 @@ static void default_touch_cancel(struct wlr_seat_touch_grab *grab) { @@ -119,3 +139,6 @@ index 65a8c7c06c1d9ec35c68e0cb8e7b46ca3039fb3c..abc17ae2ce7a04bb1d533c794a754f30 int wlr_seat_touch_num_points(struct wlr_seat *seat) { return wl_list_length(&seat->touch_state.touch_points); } +-- +GitLab + diff --git a/gui-libs/wlroots/files/8dec751a6d84335fb04288b8efab6dd5c90288d3.patch b/gui-libs/wlroots/files/8dec751a6d84335fb04288b8efab6dd5c90288d3.patch index 0138e32..ea60fd6 100644 --- a/gui-libs/wlroots/files/8dec751a6d84335fb04288b8efab6dd5c90288d3.patch +++ b/gui-libs/wlroots/files/8dec751a6d84335fb04288b8efab6dd5c90288d3.patch @@ -1,5 +1,20 @@ +From 8dec751a6d84335fb04288b8efab6dd5c90288d3 Mon Sep 17 00:00:00 2001 +From: Isaac Freund +Date: Fri, 9 Oct 2020 15:28:07 +0200 +Subject: [PATCH] layer-shell: error on 0 dimension without anchors + +The protocol requires clients to set opposing anchors when requesting +a width or height of 0. + +The goal of this patch is not to break clients that rely on this +behavior but to improve the consistency of the layer shell ecosystem +through adherence to the protocol. +--- + types/wlr_layer_shell_v1.c | 20 ++++++++++++++++++++ + 1 file changed, 20 insertions(+) + diff --git a/types/wlr_layer_shell_v1.c b/types/wlr_layer_shell_v1.c -index d83b22b8660273e13178c9d1899fd33c33d2a8d5..bc68111797552f06337eccd612c6230cfdac5f99 100644 +index d83b22b86..bc6811179 100644 --- a/types/wlr_layer_shell_v1.c +++ b/types/wlr_layer_shell_v1.c @@ -307,6 +307,26 @@ static void layer_surface_role_commit(struct wlr_surface *wlr_surface) { @@ -29,3 +44,6 @@ index d83b22b8660273e13178c9d1899fd33c33d2a8d5..bc68111797552f06337eccd612c6230c if (surface->closed) { // Ignore commits after the compositor has closed it return; +-- +GitLab + diff --git a/gui-libs/wlroots/files/dd03d839ab56c3e5d7c607a8d76e58e0b75edb85.patch b/gui-libs/wlroots/files/dd03d839ab56c3e5d7c607a8d76e58e0b75edb85.patch index f659c27..e5a48e5 100644 --- a/gui-libs/wlroots/files/dd03d839ab56c3e5d7c607a8d76e58e0b75edb85.patch +++ b/gui-libs/wlroots/files/dd03d839ab56c3e5d7c607a8d76e58e0b75edb85.patch @@ -1,5 +1,25 @@ +From dd03d839ab56c3e5d7c607a8d76e58e0b75edb85 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Guido=20G=C3=BCnther?= +Date: Fri, 25 Mar 2022 18:48:58 +0100 +Subject: [PATCH] xdg-activation: Deduplicate token creation code + +There were three places initializing a token: + +- wlr_xdg_activation_v1_add_token +- wlr_xdg_activation_token_v1_create +- activation_handle_get_activation_token + +The initialization of the token.destroy was missing in the first one. To +prevent these functions from getting out of sync move the token creation +into a common function. + +Fixes 4c59f7d4 ("xdg-activation: Allow to submit tokens") +--- + types/wlr_xdg_activation_v1.c | 42 +++++++++++++++++------------------ + 1 file changed, 20 insertions(+), 22 deletions(-) + diff --git a/types/wlr_xdg_activation_v1.c b/types/wlr_xdg_activation_v1.c -index 02ba9e07f2b60857a3cdc1848f149c2d476161f7..c54364cccae258daea400724d4822bdb72f97fb5 100644 +index 02ba9e07f..c54364ccc 100644 --- a/types/wlr_xdg_activation_v1.c +++ b/types/wlr_xdg_activation_v1.c @@ -248,15 +248,11 @@ static void activation_handle_destroy(struct wl_client *client, @@ -81,3 +101,6 @@ index 02ba9e07f2b60857a3cdc1848f149c2d476161f7..c54364cccae258daea400724d4822bdb token->token = strdup(token_str); wl_list_insert(&activation->tokens, &token->link); +-- +GitLab +