diff options
| author | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-09-22 14:36:53 -0500 | 
|---|---|---|
| committer | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-09-26 13:17:07 -0500 | 
| commit | e46238b95ee3e74ee7a54e592276e8b1be2f0ea0 (patch) | |
| tree | b0d46b879066b1724e8dc0d46a29309d5f5cab84 | |
| parent | 2385d826122d24b72cab2ce531ad538d87407622 (diff) | |
change cursor surface in internal calls of motionnotify()
and call motionnotify() after unmapping a client
and when focusing a client
Fixes: https://github.com/djpohly/dwl/issues/308
| -rw-r--r-- | dwl.c | 6 | 
1 files changed, 5 insertions, 1 deletions
| @@ -1199,6 +1199,9 @@ focusclient(Client *c, int lift)  		return;  	} +	/* Change cursor surface */ +	motionnotify(0); +  	/* Have a client, so focus its top-level wlr_surface */  	client_notify_enter(client_surface(c), wlr_seat_get_keyboard(seat)); @@ -1521,7 +1524,7 @@ motionnotify(uint32_t time)  	/* 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  	 * off of a client or over its border. */ -	if (!surface && time) +	if (!surface)  		wlr_xcursor_manager_set_cursor_image(cursor_mgr, "left_ptr", cursor);  	pointerfocus(c, surface, sx, sy, time); @@ -2373,6 +2376,7 @@ end:  	wl_list_remove(&c->commit.link);  	wlr_scene_node_destroy(c->scene);  	printstatus(); +	motionnotify(0);  }  void | 
