Introduction
Introduction Statistics Contact Development Disclaimer Help
simplify cyclepane logic - sfeed_curses - sfeed curses UI (now part of sfeed, d…
git clone git://git.codemadness.org/sfeed_curses
Log
Files
Refs
README
LICENSE
---
commit 18bd36ede3a9d2ea2f8dbad50a3ce0858d272584
parent d4b43904cf55ed616524e241ae5e4b191e1e22d5
Author: Hiltjo Posthuma <[email protected]>
Date: Wed, 10 Mar 2021 17:18:50 +0100
simplify cyclepane logic
The behaviour of switching panes if the sidebar is hidden is different now. It
will be addressed in an upcoming commit implementing layouts.
Diffstat:
M sfeed_curses.c | 47 +++++------------------------…
1 file changed, 7 insertions(+), 40 deletions(-)
---
diff --git a/sfeed_curses.c b/sfeed_curses.c
@@ -816,43 +816,6 @@ pane_draw(struct pane *p)
pane_row_draw(p, y + pos, (y + pos) == p->pos);
}
-/* Cycle visible pane in a direction, but don't cycle back. */
-void
-cyclepanen(int n)
-{
- int i;
-
- if (n < 0) {
- n = -n; /* absolute */
- for (i = selpane; n && i - 1 >= 0; i--) {
- if (panes[i - 1].hidden)
- continue;
- n--;
- selpane = i - 1;
- }
- } else if (n > 0) {
- for (i = selpane; n && i + 1 < LEN(panes); i++) {
- if (panes[i + 1].hidden)
- continue;
- n--;
- selpane = i + 1;
- }
- }
-}
-
-/* Cycle visible panes. */
-void
-cyclepane(void)
-{
- size_t i;
-
- i = selpane;
- cyclepanen(+1);
- /* reached end, cycle back to first most-visible */
- if (i == selpane)
- cyclepanen(-PaneLast);
-}
-
void
updategeom(void)
{
@@ -1952,14 +1915,18 @@ keydown:
break;
keyleft:
case 'h':
- cyclepanen(-1);
+ if (selpane == PaneFeeds)
+ break;
+ selpane = PaneFeeds;
break;
keyright:
case 'l':
- cyclepanen(+1);
+ if (selpane == PaneItems)
+ break;
+ selpane = PaneItems;
break;
case '\t':
- cyclepane();
+ selpane = selpane == PaneFeeds ? PaneItems : PaneFeeds;
break;
startpos:
case 'g':
You are viewing proxied material from codemadness.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.