]> Sergey Matveev's repositories - nnn.git/commitdiff
Handle nav cases separately
authorArun Prakash Jana <engineerarun@gmail.com>
Tue, 29 Jan 2019 19:26:27 +0000 (00:56 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Tue, 29 Jan 2019 19:26:27 +0000 (00:56 +0530)
src/nnn.c

index aec526b5e76102582a40ef80136de3e52fa93724..5f3c11e5cd35039e0a2c50d31fcd164be0620805 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -2962,42 +2962,33 @@ nochange:
                                printmsg("unsupported file");
                                goto nochange;
                        }
-               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:
+               case SEL_NEXT:
+                       if (cur < ndents - 1)
+                               ++cur;
+                       else if (ndents)
+                               /* Roll over, set cursor to first entry */
                                cur = 0;
-                               break;
-                       default: /* case SEL_END */
+                       break;
+               case SEL_PREV:
+                       if (cur > 0)
+                               --cur;
+                       else if (ndents)
+                               /* Roll over, set cursor to last entry */
                                cur = ndents - 1;
-                               break;
-                       }
+                       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;
                case SEL_CDHOME: // fallthrough
                case SEL_CDBEGIN: // fallthrough