diff options
Diffstat (limited to 'dwl.c')
| -rw-r--r-- | dwl.c | 19 | 
1 files changed, 8 insertions, 11 deletions
| @@ -683,9 +683,6 @@ focusclient(Client *c, struct wlr_surface *surface, int lift)  {  	Client *sel = selclient();  	struct wlr_keyboard *kb; -	/* Previous and new xdg toplevel surfaces */ -	Client *ptl = sel; -	Client *tl = c;  	/* Previously focused surface */  	struct wlr_surface *psurface = seat->keyboard_state.focused_surface; @@ -728,17 +725,17 @@ focusclient(Client *c, struct wlr_surface *surface, int lift)  	 * activate the current one.  This lets the clients know to repaint  	 * accordingly, e.g. show/hide a caret.  	 */ -	if (tl != ptl && ptl) { -		if (ptl->type != XDGShell) -			wlr_xwayland_surface_activate(ptl->xwayland_surface, 0); +	if (c != sel && sel) { +		if (sel->type != XDGShell) +			wlr_xwayland_surface_activate(sel->xwayland_surface, 0);  		else -			wlr_xdg_toplevel_set_activated(ptl->xdg_surface, 0); +			wlr_xdg_toplevel_set_activated(sel->xdg_surface, 0);  	} -	if (tl) { -		if (tl->type != XDGShell) -			wlr_xwayland_surface_activate(tl->xwayland_surface, 1); +	if (c) { +		if (c->type != XDGShell) +			wlr_xwayland_surface_activate(c->xwayland_surface, 1);  		else -			wlr_xdg_toplevel_set_activated(tl->xdg_surface, 1); +			wlr_xdg_toplevel_set_activated(c->xdg_surface, 1);  	}  } | 
