From 06c18808b6f23bc5120533559e70fbcbff753e84 Mon Sep 17 00:00:00 2001 From: Connor Lane Smith Date: Mon, 2 Aug 2010 14:49:14 +0100 Subject: [PATCH] replaced promptw --- Makefile | 2 +- dmenu.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 7b21a25..1082697 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ clean: dist: clean @echo creating dist tarball @mkdir -p dmenu-${VERSION} - @cp -R LICENSE Makefile README config.mk dmenu.1 dmenu.c dmenu_path dmenu_run dmenu-${VERSION} + @cp LICENSE Makefile README config.mk dmenu.1 dmenu.c dmenu_path dmenu_run dmenu-${VERSION} @tar -cf dmenu-${VERSION}.tar dmenu-${VERSION} @gzip dmenu-${VERSION}.tar @rm -rf dmenu-${VERSION} diff --git a/dmenu.c b/dmenu.c index 7dfc2d3..608023d 100644 --- a/dmenu.c +++ b/dmenu.c @@ -42,6 +42,7 @@ static void setup(void); static void usage(void); static char text[4096]; +static int promptw; static size_t cursor = 0; static const char *prompt = NULL; static const char *normbgcolor = "#cccccc"; @@ -79,7 +80,7 @@ void calcoffsetsh(void) { unsigned int w, x; - w = (prompt ? textw(dc, prompt) : 0) + inputw + textw(dc, "<") + textw(dc, ">"); + w = promptw + inputw + textw(dc, "<") + textw(dc, ">"); for(x = w, next = curr; next; next = next->right) if((x += MIN(textw(dc, next->text), mw / 3)) > mw) break; @@ -118,7 +119,7 @@ drawmenu(void) { dc->y = topbar ? 0 : mh - dc->h; /* print prompt? */ if(prompt) { - dc->w = textw(dc, prompt); + dc->w = promptw; drawtext(dc, prompt, selcol); dc->x = dc->w; } @@ -506,7 +507,9 @@ setup(void) { grabkeyboard(); setcanvas(dc, win, mw, mh); inputw = MIN(inputw, mw/3); + promptw = prompt ? MIN(textw(dc, prompt), mw/5) : 0; XMapRaised(dc->dpy, win); + text[0] = '\0'; match(); }