From 562c828aab360b4cb61a8559de21aafba4602cbb Mon Sep 17 00:00:00 2001 From: klein panic Date: Wed, 11 Sep 2024 13:18:09 -0400 Subject: [PATCH] Automated update --- KleinDwm/source/dwm | Bin 114296 -> 114264 bytes KleinDwm/source/dwm.c | 11 +- KleinDwm/source/dwm.c.orig | 149 +++++++++++++++++- KleinDwm/source/dwm.o | Bin 128152 -> 128112 bytes .../patches/dwm-focusonnetactive-6.2.diff | 57 +++++++ 5 files changed, 207 insertions(+), 10 deletions(-) create mode 100644 KleinDwm/source/patches/dwm-focusonnetactive-6.2.diff diff --git a/KleinDwm/source/dwm b/KleinDwm/source/dwm index 6bb9b6559c6255ab2b014517633e745a0a2d572f..7d450c0c72443659bdc8a97379f56f850b9f2307 100755 GIT binary patch delta 30539 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 z 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 diff --git a/KleinDwm/source/dwm.c b/KleinDwm/source/dwm.c index 65a4ee0..9d0199a 100644 --- a/KleinDwm/source/dwm.c +++ b/KleinDwm/source/dwm.c @@ -633,6 +633,7 @@ clientmessage(XEvent *e) XSetWindowAttributes swa; XClientMessageEvent *cme = &e->xclient; Client *c = wintoclient(cme->window); + unsigned int i; if (showsystray && cme->window == systray->win && cme->message_type == netatom[NetSystemTrayOP]) { /* add systray icons */ @@ -689,8 +690,14 @@ clientmessage(XEvent *e) setfullscreen(c, (cme->data.l[0] == 1 /* _NET_WM_STATE_ADD */ || cme->data.l[0] == 2 /* _NET_WM_STATE_TOGGLE */)); } else if (cme->message_type == netatom[NetActiveWindow]) { - if (c != selmon->sel && !c->isurgent) - seturgent(c, 1); + for (i = 0; i < LENGTH(tags) && !((1 << i) & c->tags); i++); + if (i < LENGTH(tags)) { + const Arg a = {.ui = 1 << i}; + selmon = c->mon; + view(&a); + focus(c); + restack(selmon); + } } } diff --git a/KleinDwm/source/dwm.c.orig b/KleinDwm/source/dwm.c.orig index 5907d42..65a4ee0 100644 --- a/KleinDwm/source/dwm.c.orig +++ b/KleinDwm/source/dwm.c.orig @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -86,9 +87,21 @@ enum { WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast }; /* default atoms * enum { ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, ClkRootWin, ClkLast }; /* clicks */ +typedef struct TagState TagState; +struct TagState { + int selected; + int occupied; + int urgent; +}; + +typedef struct ClientState ClientState; +struct ClientState { + int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen; +}; + typedef union { - int i; - unsigned int ui; + long i; + unsigned long ui; float f; const void *v; } Arg; @@ -117,6 +130,7 @@ struct Client { Client *snext; Monitor *mon; Window win; + ClientState prevstate; }; typedef struct { @@ -135,6 +149,7 @@ typedef struct { typedef struct Pertag Pertag; struct Monitor { char ltsymbol[16]; + char lastltsymbol[16]; float mfact; int nmaster; int num; @@ -145,14 +160,17 @@ struct Monitor { unsigned int seltags; unsigned int sellt; unsigned int tagset[2]; + TagState tagstate; int showbar; int topbar; Client *clients; Client *sel; + Client *lastsel; Client *stack; Monitor *next; Window barwin; const Layout *lt[2]; + const Layout *lastlt; Pertag *pertag; }; @@ -211,6 +229,7 @@ static unsigned int getsystraywidth(); static int gettextprop(Window w, Atom atom, char *text, unsigned int size); static void grabbuttons(Client *c, int focused); static void grabkeys(void); +static int handlexevent(struct epoll_event *ev); static void incnmaster(const Arg *arg); static void keypress(XEvent *e); static void killclient(const Arg *arg); @@ -241,8 +260,10 @@ static void setclientstate(Client *c, long state); static void setfocus(Client *c); static void setfullscreen(Client *c, int fullscreen); static void setlayout(const Arg *arg); +static void setlayoutsafe(const Arg *arg); static void setmfact(const Arg *arg); static void setup(void); +static void setupepoll(void); static void seturgent(Client *c, int urg); static void showhide(Client *c); static void sigchld(int unused); @@ -317,6 +338,8 @@ static void (*handler[LASTEvent]) (XEvent *) = { [UnmapNotify] = unmapnotify }; static Atom wmatom[WMLast], netatom[NetLast], xatom[XLast]; +static int epoll_fd; +static int dpy_fd; static int restart = 0; static int running = 1; static Cur *cursor[CurLast]; @@ -324,13 +347,20 @@ static Clr **scheme; static Clr **tagscheme; static Display *dpy; static Drw *drw; -static Monitor *mons, *selmon; +static Monitor *mons, *selmon, *lastselmon; static Window root, wmcheckwin; static KeySym keychain = -1; +#include "ipc.h" /* configuration, allows nested code to access above variables */ #include "config.h" +#ifdef VERSION +#include "IPCClient.c" +#include "yajl_dumps.c" +#include "ipc.c" +#endif + struct Pertag { unsigned int curtag, prevtag; /* current and previous tag */ int nmasters[LENGTH(tags) + 1]; /* number of windows in master area */ @@ -572,6 +602,12 @@ cleanup(void) XSync(dpy, False); XSetInputFocus(dpy, PointerRoot, RevertToPointerRoot, CurrentTime); XDeleteProperty(dpy, root, netatom[NetActiveWindow]); + + ipc_cleanup(); + + if (close(epoll_fd) < 0) { + fprintf(stderr, "Failed to close epoll file descriptor\n"); + } } void @@ -1337,6 +1373,25 @@ grabkeys(void) } } +int +handlexevent(struct epoll_event *ev) +{ + if (ev->events & EPOLLIN) { + XEvent ev; + while (running && XPending(dpy)) { + XNextEvent(dpy, &ev); + if (handler[ev.type]) { + handler[ev.type](&ev); /* call handler */ + ipc_send_events(mons, &lastselmon, selmon); + } + } + } else if (ev-> events & EPOLLHUP) { + return -1; + } + + return 0; +} + void incnmaster(const Arg *arg) { @@ -1821,12 +1876,40 @@ restack(Monitor *m) void run(void) { - XEvent ev; - /* main event loop */ + int event_count = 0; + const int MAX_EVENTS = 10; + struct epoll_event events[MAX_EVENTS]; + XSync(dpy, False); - while (running && !XNextEvent(dpy, &ev)) - if (handler[ev.type]) - handler[ev.type](&ev); /* call handler */ + + /* main event loop */ + while (running) { + event_count = epoll_wait(epoll_fd, events, MAX_EVENTS, -1); + + for (int i = 0; i < event_count; i++) { + int event_fd = events[i].data.fd; + DEBUG("Got event from fd %d\n", event_fd); + + if (event_fd == dpy_fd) { + // -1 means EPOLLHUP + if (handlexevent(events + i) == -1) + return; + } else if (event_fd == ipc_get_sock_fd()) { + ipc_handle_socket_epoll_event(events + i); + } else if (ipc_is_client_registered(event_fd)){ + if (ipc_handle_client_epoll_event(events + i, mons, &lastselmon, selmon, + tags, LENGTH(tags), layouts, LENGTH(layouts)) < 0) { + fprintf(stderr, "Error handling IPC event on fd %d\n", event_fd); + } + } else { + fprintf(stderr, "Got event from unknown fd %d, ptr %p, u32 %d, u64 %lu", + event_fd, events[i].data.ptr, events[i].data.u32, + events[i].data.u64); + fprintf(stderr, " with events %d\n", events[i].events); + return; + } + } + } } void @@ -2044,6 +2127,18 @@ setlayout(const Arg *arg) drawbar(selmon); } +void +setlayoutsafe(const Arg *arg) +{ + const Layout *ltptr = (Layout *)arg->v; + if (ltptr == 0) + setlayout(arg); + for (int i = 0; i < LENGTH(layouts); i++) { + if (ltptr == &layouts[i]) + setlayout(arg); + } +} + /* arg > 1.0 will set mfact absolutely */ void setmfact(const Arg *arg) @@ -2146,6 +2241,36 @@ setup(void) XSelectInput(dpy, root, wa.event_mask); grabkeys(); focus(NULL); + setupepoll(); +} + +void +setupepoll(void) +{ + epoll_fd = epoll_create1(0); + dpy_fd = ConnectionNumber(dpy); + struct epoll_event dpy_event; + + // Initialize struct to 0 + memset(&dpy_event, 0, sizeof(dpy_event)); + + DEBUG("Display socket is fd %d\n", dpy_fd); + + if (epoll_fd == -1) { + fputs("Failed to create epoll file descriptor", stderr); + } + + dpy_event.events = EPOLLIN; + dpy_event.data.fd = dpy_fd; + if (epoll_ctl(epoll_fd, EPOLL_CTL_ADD, dpy_fd, &dpy_event)) { + fputs("Failed to add display file descriptor to epoll", stderr); + close(epoll_fd); + exit(1); + } + + if (ipc_init(ipcsockpath, epoll_fd, ipccommands, LENGTH(ipccommands)) < 0) { + fputs("Failed to initialize IPC\n", stderr); + } } void @@ -2749,10 +2874,18 @@ updatesystray(void) void updatetitle(Client *c) { + char oldname[sizeof(c->name)]; + strcpy(oldname, c->name); + if (!gettextprop(c->win, netatom[NetWMName], c->name, sizeof c->name)) gettextprop(c->win, XA_WM_NAME, c->name, sizeof c->name); if (c->name[0] == '\0') /* hack to mark broken clients */ strcpy(c->name, broken); + + for (Monitor *m = mons; m; m = m->next) { + if (m->sel == c && strcmp(oldname, c->name) != 0) + ipc_focused_title_change_event(m->num, c->win, oldname, c->name); + } } void diff --git a/KleinDwm/source/dwm.o b/KleinDwm/source/dwm.o index a827afd26145a7ec4392b088aed9fc67789060a1..6f763c54639b08c9c6667187edb11ab79ff39c71 100644 GIT binary patch delta 41425 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 Um@fE*(VUax9fW&+^22%Z08Is-!T +Date: Tue, 7 Apr 2020 12:33:04 +0200 +Subject: [PATCH] Activate a window in response to _NET_ACTIVE_WINDOW + +By default, dwm response to client requests to _NET_ACTIVE_WINDOW client +messages by setting the urgency bit on the named window. + +This patch activates the window instead. + +Both behaviours are legitimate according to +https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html#idm140200472702304 + +One should decide which of these one should perform based on the message +senders' untestable claims that it represents the end-user. Setting the +urgency bit is the conservative decision. This patch implements the more +trusting alternative. + +It also allows dwm to work with `wmctrl -a` and other external window +management utilities + +--- + dwm.c | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/dwm.c b/dwm.c +index 4465af1..3919d47 100644 +--- a/dwm.c ++++ b/dwm.c +@@ -514,6 +514,7 @@ clientmessage(XEvent *e) + { + XClientMessageEvent *cme = &e->xclient; + Client *c = wintoclient(cme->window); ++ unsigned int i; + + if (!c) + return; +@@ -523,8 +524,14 @@ clientmessage(XEvent *e) + setfullscreen(c, (cme->data.l[0] == 1 /* _NET_WM_STATE_ADD */ + || (cme->data.l[0] == 2 /* _NET_WM_STATE_TOGGLE */ && !c->isfullscreen))); + } else if (cme->message_type == netatom[NetActiveWindow]) { +- if (c != selmon->sel && !c->isurgent) +- seturgent(c, 1); ++ for (i = 0; i < LENGTH(tags) && !((1 << i) & c->tags); i++); ++ if (i < LENGTH(tags)) { ++ const Arg a = {.ui = 1 << i}; ++ selmon = c->mon; ++ view(&a); ++ focus(c); ++ restack(selmon); ++ } + } + } + +-- +2.17.1 +