tinywl: fix check whether client is focused or not

Currently this check is too strict and denies the move/resize request
if a subsurface of the client has pointer focus.

(cherry picked from commit 89dc9a44968fbd3fe8a08a41858d1537ee145668)
This commit is contained in:
Isaac Freund 2022-01-14 20:46:20 +01:00 committed by Simon Ser
parent a819c512ec
commit eb1a451803
1 changed files with 2 additions and 1 deletions

View File

@ -611,7 +611,8 @@ static void begin_interactive(struct tinywl_view *view,
struct tinywl_server *server = view->server;
struct wlr_surface *focused_surface =
server->seat->pointer_state.focused_surface;
if (view->xdg_surface->surface != focused_surface) {
if (view->xdg_surface->surface !=
wlr_surface_get_root_surface(focused_surface)) {
/* Deny move/resize requests from unfocused clients. */
return;
}