From a5f31f570774ca1d4a504d8c13c96af0217635a7 Mon Sep 17 00:00:00 2001 From: Connor Lane Smith Date: Fri, 20 Aug 2010 19:42:58 +0100 Subject: fixed width bug --- dmenu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dmenu.c b/dmenu.c index 2596b56..5ae611f 100644 --- a/dmenu.c +++ b/dmenu.c @@ -83,10 +83,10 @@ calcoffsets(void) { n = mw - (promptw + inputw + dc_textw(dc, "<") + dc_textw(dc, ">")); for(i = 0, next = curr; next; next = next->right) - if((i += (lines > 0) ? bh : dc_textw(dc, next->text)) > n) + if((i += (lines > 0) ? bh : MIN(dc_textw(dc, next->text), n)) > n) break; for(i = 0, prev = curr; prev && prev->left; prev = prev->left) - if((i += (lines > 0) ? bh : dc_textw(dc, prev->left->text)) > n) + if((i += (lines > 0) ? bh : MIN(dc_textw(dc, prev->left->text), n)) > n) break; } @@ -124,7 +124,7 @@ drawmenu(void) { dc_drawtext(dc, "<", normcol); for(item = curr; item != next; item = item->right) { dc->x += dc->w; - dc->w = dc_textw(dc, item->text); + dc->w = MIN(dc_textw(dc, item->text), mw - dc->x); dc_drawtext(dc, item->text, (item == sel) ? selcol : normcol); } dc->w = dc_textw(dc, ">"); -- cgit v1.2.3