move ugglyness to client.h
parent
2ef5abfb72
commit
4ae6d0f387
11
client.h
11
client.h
|
@ -231,6 +231,17 @@ client_min_size(Client *c, int *width, int *height)
|
|||
*height = state->min_height;
|
||||
}
|
||||
|
||||
static inline void
|
||||
client_restack_surface(Client *c)
|
||||
{
|
||||
#ifdef XWAYLAND
|
||||
if (client_is_x11(c))
|
||||
wlr_xwayland_surface_restack(c->surface.xwayland, NULL,
|
||||
XCB_STACK_MODE_ABOVE);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
|
||||
static inline Client *
|
||||
client_from_wlr_surface(struct wlr_surface *s)
|
||||
{
|
||||
|
|
10
dwl.c
10
dwl.c
|
@ -1129,6 +1129,7 @@ focusclient(Client *c, int lift)
|
|||
wl_list_insert(&fstack, &c->flink);
|
||||
selmon = c->mon;
|
||||
c->isurgent = 0;
|
||||
client_restack_surface(c);
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
wlr_scene_rect_set_color(c->border[i], focuscolor);
|
||||
|
@ -1169,15 +1170,6 @@ focusclient(Client *c, int lift)
|
|||
return;
|
||||
}
|
||||
|
||||
#ifdef XWAYLAND
|
||||
/* This resolves an issue where the last spawned xwayland client
|
||||
* receives all pointer activity.
|
||||
*/
|
||||
if (c->type == X11Managed)
|
||||
wlr_xwayland_surface_restack(c->surface.xwayland, NULL,
|
||||
XCB_STACK_MODE_ABOVE);
|
||||
#endif
|
||||
|
||||
/* Have a client, so focus its top-level wlr_surface */
|
||||
kb = wlr_seat_get_keyboard(seat);
|
||||
if (kb)
|
||||
|
|
Loading…
Reference in New Issue