From 5e425f8212cf7e4ca9351c8357fd8404ff96a27d Mon Sep 17 00:00:00 2001 From: kj_sh604 Date: Sat, 18 Oct 2025 01:56:51 -0400 Subject: refactor: update dmenu source --- .local/src/dmenu-dunst/dmenu.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to '.local/src/dmenu-dunst/dmenu.c') diff --git a/.local/src/dmenu-dunst/dmenu.c b/.local/src/dmenu-dunst/dmenu.c index 32d6a9d..ceb52c7 100644 --- a/.local/src/dmenu-dunst/dmenu.c +++ b/.local/src/dmenu-dunst/dmenu.c @@ -29,6 +29,7 @@ enum { SchemeNorm, SchemeSel, SchemeOut, SchemeLast }; /* color schemes */ struct item { char *text; + unsigned int width; struct item *left, *right; int out; }; @@ -100,7 +101,7 @@ max_textw(void) { int len = 0; for (struct item *item = items; item && item->text; item++) - len = MAX(TEXTW(item->text), len); + len = MAX(item->width, len); return len; } @@ -109,7 +110,7 @@ cleanup(void) { size_t i; - XUngrabKey(dpy, AnyKey, AnyModifier, root); + XUngrabKeyboard(dpy, CurrentTime); for (i = 0; i < SchemeLast; i++) free(scheme[i]); for (i = 0; items && items[i].text; ++i) @@ -572,6 +573,7 @@ readstdin(void) line[len - 1] = '\0'; if (!(items[i].text = strdup(line))) die("strdup:"); + items[i].width = TEXTW(line); items[i].out = 0; } @@ -713,7 +715,6 @@ setup(void) CWOverrideRedirect | CWBackPixel | CWEventMask, &swa); XSetClassHint(dpy, win, &ch); - /* input methods */ if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL) die("XOpenIM failed: could not open input device"); -- cgit v1.2.3