tinywl: drop focused surface check for interactive ops

This serves as a bad example: compositors should validate serials from
events instead. Also, the current implementation segfaults if
focused_surface is NULL.
This commit is contained in:
Kirill Primak 2024-09-09 19:27:24 +03:00 committed by Simon Ser
parent 7debaced03
commit c752270be7

View File

@ -712,13 +712,7 @@ static void begin_interactive(struct tinywl_toplevel *toplevel,
* compositor stops propegating pointer events to clients and instead
* consumes them itself, to move or resize windows. */
struct tinywl_server *server = toplevel->server;
struct wlr_surface *focused_surface =
server->seat->pointer_state.focused_surface;
if (toplevel->xdg_toplevel->base->surface !=
wlr_surface_get_root_surface(focused_surface)) {
/* Deny move/resize requests from unfocused clients. */
return;
}
server->grabbed_toplevel = toplevel;
server->cursor_mode = mode;