fix: move unfocus to a more fitting location

This commit is contained in:
mWalrus 2025-05-19 17:55:00 +02:00
parent e812f7a1f1
commit c32ae64c91

5
dwl.c
View File

@ -1928,10 +1928,8 @@ motionnotify(uint32_t time, struct wlr_input_device *device, double dx, double d
/* If there's no client surface under the cursor, set the cursor image to a /* If there's no client surface under the cursor, set the cursor image to a
* default. This is what makes the cursor image appear when you move it * default. This is what makes the cursor image appear when you move it
* off of a client or over its border. */ * off of a client or over its border. */
if (!surface && !seat->drag) { if (!surface && !seat->drag)
wlr_cursor_set_xcursor(cursor, cursor_mgr, "default"); wlr_cursor_set_xcursor(cursor, cursor_mgr, "default");
focusclient(NULL, 0);
}
pointerfocus(c, surface, sx, sy, time); pointerfocus(c, surface, sx, sy, time);
} }
@ -2069,6 +2067,7 @@ pointerfocus(Client *c, struct wlr_surface *surface, double sx, double sy,
/* If surface is NULL, clear pointer focus */ /* If surface is NULL, clear pointer focus */
if (!surface) { if (!surface) {
wlr_seat_pointer_notify_clear_focus(seat); wlr_seat_pointer_notify_clear_focus(seat);
focusclient(NULL, 0);
return; return;
} }