|
|
fix optimal size calculation in horizontal mode... - sfeed_curses - sfeed curses UI (now part of sfeed, development is in sfeed) |
|
|
 |
git clone git://git.codemadness.org/sfeed_curses (git://git.codemadness.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
README |
|
|
 |
LICENSE |
|
|
|
--- |
|
|
 |
commit 6af05c239894224413e88bc5d932134b65ab138e |
|
|
 |
parent 46695b179d5aa4893ab8f1a6943f280dafe6d98b |
|
|
 |
Author: Hiltjo Posthuma <hiltjo@codemadness.org> (mailto://) |
application/vnd.lotus-organizer |
|
|
Date: Wed, 10 Mar 2021 18:23:49 +0100 |
|
|
|
|
|
|
|
fix optimal size calculation in horizontal mode... |
|
|
|
|
|
|
|
.. and the amount of feeds are >= win.height / 2. Simplify the logic and make |
|
|
|
it a bit more consistent too. |
|
|
|
|
|
|
|
Diffstat: |
|
|
|
M sfeed_curses.c | 12 ++++-------- |
|
|
|
|
|
|
|
1 file changed, 4 insertions(+), 8 deletions(-) |
|
|
|
--- |
|
|
 |
diff --git a/sfeed_curses.c b/sfeed_curses.c |
|
|
|
@@ -27,6 +27,7 @@ |
|
|
|
|
|
|
|
#define LEN(a) sizeof((a))/sizeof((a)[0]) |
|
|
|
#define MAX(a,b) ((a) > (b) ? (a) : (b)) |
|
|
|
+#define MIN(a,b) ((a) < (b) ? (a) : (b)) |
|
|
|
|
|
|
|
#define PAD_TRUNCATE_SYMBOL "\xe2\x80\xa6" /* symbol: "ellipsis" */ |
|
|
|
#define SCROLLBAR_SYMBOL_BAR "\xe2\x94\x82" /* symbol: "light vertical" */ |
|
|
|
@@ -862,10 +863,8 @@ updategeom(void) |
|
|
|
/* NOTE: updatesidebar() must happen before this function for the |
|
|
|
remaining width */ |
|
|
|
barsize = getsidebarsize(); |
|
|
|
- if (w && barsize >= w) |
|
|
|
- barsize = w - 1; |
|
|
|
- |
|
|
|
panes[PaneFeeds].width = MAX(barsize, 0); |
|
|
|
+ |
|
|
|
x += panes[PaneFeeds].width; |
|
|
|
w -= panes[PaneFeeds].width; |
|
|
|
|
|
|
|
@@ -877,9 +876,6 @@ updategeom(void) |
|
|
|
break; |
|
|
|
case LayoutHorizontal: |
|
|
|
barsize = getsidebarsize(); |
|
|
|
- if (h && barsize >= h / 2) |
|
|
|
- barsize = h / 2; |
|
|
|
- |
|
|
|
panes[PaneFeeds].height = MAX(barsize, 1); |
|
|
|
|
|
|
|
h -= panes[PaneFeeds].height; |
|
|
|
@@ -1438,7 +1434,7 @@ getsidebarsize(void) |
|
|
|
if (onlynew && feed->totalnew == 0) |
|
|
|
continue; |
|
|
|
} |
|
|
|
- return size; |
|
|
|
+ return MIN(win.width - 1, size); |
|
|
|
case LayoutHorizontal: |
|
|
|
for (i = 0, size = 0; i < nfeeds; i++) { |
|
|
|
feed = &feeds[i]; |
|
|
|
@@ -1446,7 +1442,7 @@ getsidebarsize(void) |
|
|
|
continue; |
|
|
|
size++; |
|
|
|
} |
|
|
|
- return size; |
|
|
|
+ return MIN((win.height - 1) / 2, size); |
|
|
|
} |
|
|
|
return 0; |
|
|
|
} |
|