]> Sergey Matveev's repositories - nnn.git/commitdiff
Revert "Handle nav cases separately"
authorArun Prakash Jana <engineerarun@gmail.com>
Fri, 1 Feb 2019 15:53:27 +0000 (21:23 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Fri, 1 Feb 2019 15:53:27 +0000 (21:23 +0530)
This reverts commit 14309938580b48f5b0290959c214d2030b6f51d7.

src/nnn.c

index e32a0d95d132d6a6185d9b8d1ebee618c87a4e2f..3093d649a4ffac5446f18838e3058a99a1f6bf15 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -2974,33 +2974,42 @@ nochange:
                                printmsg("unsupported file");
                                goto nochange;
                        }
-               case SEL_NEXT:
-                       if (cur < ndents - 1)
-                               ++cur;
-                       else if (ndents)
-                               /* Roll over, set cursor to first entry */
+               case SEL_NEXT: // fallthrough
+               case SEL_PREV: // fallthrough
+               case SEL_PGDN: // fallthrough
+               case SEL_PGUP: // fallthrough
+               case SEL_HOME: // fallthrough
+               case SEL_END:
+                       switch (sel) {
+                       case SEL_NEXT:
+                               if (cur < ndents - 1)
+                                       ++cur;
+                               else if (ndents)
+                                       /* Roll over, set cursor to first entry */
+                                       cur = 0;
+                               break;
+                       case SEL_PREV:
+                               if (cur > 0)
+                                       --cur;
+                               else if (ndents)
+                                       /* Roll over, set cursor to last entry */
+                                       cur = ndents - 1;
+                               break;
+                       case SEL_PGDN:
+                               if (cur < ndents - 1)
+                                       cur += MIN((LINES - 4) / 2, ndents - 1 - cur);
+                               break;
+                       case SEL_PGUP:
+                               if (cur > 0)
+                                       cur -= MIN((LINES - 4) / 2, cur);
+                               break;
+                       case SEL_HOME:
                                cur = 0;
-                       break;
-               case SEL_PREV:
-                       if (cur > 0)
-                               --cur;
-                       else if (ndents)
-                               /* Roll over, set cursor to last entry */
+                               break;
+                       default: /* case SEL_END */
                                cur = ndents - 1;
-                       break;
-               case SEL_PGDN:
-                       if (cur < ndents - 1)
-                               cur += MIN((LINES - 4) / 2, ndents - 1 - cur);
-                       break;
-               case SEL_PGUP:
-                       if (cur > 0)
-                               cur -= MIN((LINES - 4) / 2, cur);
-                       break;
-               case SEL_HOME:
-                       cur = 0;
-                       break;
-               case SEL_END:
-                       cur = ndents - 1;
+                               break;
+                       }
                        break;
                case SEL_CDHOME: // fallthrough
                case SEL_CDBEGIN: // fallthrough