diff options
| author | 2026-03-18 11:48:58 -0400 | |
|---|---|---|
| committer | 2026-03-18 11:48:58 -0400 | |
| commit | a1d644472dcf47c9ffd232fad8e2b48afd71c3d1 (patch) | |
| tree | a1028095acced60abcdaa61c1b16f4bcf20c3f6e /src | |
| parent | Merge branch 'main' into personalcfg (diff) | |
| parent | fixed notification issue on workspace unmapped windows (diff) | |
Merge branch 'main' into personalcfgpersonalcfg
Diffstat (limited to 'src')
| -rw-r--r-- | src/tilite.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/tilite.c b/src/tilite.c index cd9bdb7..e880c2e 100644 --- a/src/tilite.c +++ b/src/tilite.c @@ -307,8 +307,17 @@ void change_workspace(int ws) { in_ws_switch = True; XGrabServer(dpy); - XDeleteProperty(dpy, root, atoms[ATOM_NET_ACTIVE_WINDOW]); - XFlush(dpy); + // unfocus the old workspace focused window + // this helps with certain apps sending notifications + if (focused && focused->mapped) { + XEvent fe = {0}; + fe.type = FocusOut; + fe.xfocus.window = focused->win; + fe.xfocus.mode = NotifyNormal; + fe.xfocus.detail = NotifyNonlinear; + XSendEvent(dpy, focused->win, False, FocusChangeMask, &fe); + XFlush(dpy); + } for (client_t *c = workspaces[current_ws]; c; c = c->next) { if (c->mapped) { |
