client: don't change border color during drags
Fixes: https://github.com/djpohly/dwl/issues/318
This commit is contained in:
parent
846ce52b92
commit
3cc22de712
1 changed files with 6 additions and 2 deletions
8
dwl.c
8
dwl.c
|
@ -1185,8 +1185,9 @@ focusclient(Client *c, int lift)
|
|||
c->isurgent = 0;
|
||||
client_restack_surface(c);
|
||||
|
||||
/* Don't change border color if there is an exclusive focus */
|
||||
if (!exclusive_focus)
|
||||
/* Don't change border color if there is an exclusive focus or we are
|
||||
* handling a drag operation */
|
||||
if (!exclusive_focus && !seat->drag)
|
||||
for (i = 0; i < 4; i++)
|
||||
wlr_scene_rect_set_color(c->border[i], focuscolor);
|
||||
}
|
||||
|
@ -2261,6 +2262,9 @@ void
|
|||
startdrag(struct wl_listener *listener, void *data)
|
||||
{
|
||||
struct wlr_drag *drag = data;
|
||||
/* During drag the focus isn't sent to clients, this causes that
|
||||
* we don't update border color acording the pointer coordinates */
|
||||
focusclient(NULL, 0);
|
||||
|
||||
if (!drag->icon)
|
||||
return;
|
||||
|
|
Loading…
Reference in a new issue