diff options
author | Jari Vetoniemi <mailroxas@gmail.com> | 2014-04-14 19:14:30 +0300 |
---|---|---|
committer | Jari Vetoniemi <mailroxas@gmail.com> | 2014-04-14 19:14:30 +0300 |
commit | bcda5404011714622ec22a37c4b7837defe4377e (patch) | |
tree | 5068eb74a6d7c9e49e3287f8d35d78cb87e84672 /lib/draw | |
parent | 9df8716cb8787110aedf5d9ad9c27b4eb3bade39 (diff) | |
download | bemenu-bcda5404011714622ec22a37c4b7837defe4377e.tar.gz bemenu-bcda5404011714622ec22a37c4b7837defe4377e.tar.bz2 bemenu-bcda5404011714622ec22a37c4b7837defe4377e.zip |
Hide title if more than NCOLS
Diffstat (limited to 'lib/draw')
-rw-r--r-- | lib/draw/curses.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/draw/curses.c b/lib/draw/curses.c index 5673c90..2cc84af 100644 --- a/lib/draw/curses.c +++ b/lib/draw/curses.c @@ -206,8 +206,12 @@ static void _bmDrawCursesRender(const bmMenu *menu) const unsigned int lines = curses.getmaxy(curses.stdscr); curses.erase(); - unsigned int titleLen = (menu->title ? strlen(menu->title) + 1 : 0); unsigned int ncols = curses.getmaxx(curses.stdscr); + unsigned int titleLen = (menu->title ? strlen(menu->title) + 1 : 0); + + if (titleLen >= ncols) + titleLen = 0; + unsigned int ccols = ncols - titleLen - 1; unsigned int dcols = 0, doffset = menu->cursor; @@ -219,7 +223,7 @@ static void _bmDrawCursesRender(const bmMenu *menu) _bmDrawCursesDrawLine(0, 0, "%*s%s", titleLen, "", (menu->filter ? menu->filter + doffset : "")); - if (menu->title) { + if (menu->title && titleLen > 0) { curses.attron(COLOR_PAIR(1)); curses.mvprintw(0, 0, menu->title); curses.attroff(COLOR_PAIR(1)); |