]> Sergey Matveev's repositories - nnn.git/commitdiff
End selmode and update selection on dir changes
authorArun Prakash Jana <engineerarun@gmail.com>
Thu, 12 Dec 2019 16:07:39 +0000 (21:37 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Thu, 12 Dec 2019 16:07:39 +0000 (21:37 +0530)
src/nnn.c

index be5be2c30e4e9ed8bcd15c758a1d857c8a7966ee..2ad8f274a8e4785e7bcec6db80c7db27ca3e0956 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -4741,7 +4741,6 @@ nochange:
                                cfg.apparentsz = 0;
                                cfg.blkorder = 0;
                                cfg.extnorder = 0;
-                               cfg.selmode = 0;
                                break;
                        case SEL_ASIZE:
                                cfg.apparentsz ^= 1;
@@ -4767,7 +4766,6 @@ nochange:
                                cfg.mtimeorder = 0;
                                cfg.sizeorder = 0;
                                cfg.extnorder = 0;
-                               cfg.selmode = 0;
                                break;
                        case SEL_EXTN:
                                cfg.extnorder ^= 1;
@@ -4775,7 +4773,6 @@ nochange:
                                cfg.mtimeorder = 0;
                                cfg.apparentsz = 0;
                                cfg.blkorder = 0;
-                               cfg.selmode = 0;
                                break;
                        default: /* SEL_MTIME */
                                cfg.mtimeorder ^= 1;
@@ -4783,10 +4780,15 @@ nochange:
                                cfg.apparentsz = 0;
                                cfg.blkorder = 0;
                                cfg.extnorder = 0;
-                               cfg.selmode = 0;
                                break;
                        }
 
+                       if (cfg.selmode) {
+                               if (nselected)
+                                       updateselbuf(path, newpath);
+                               cfg.selmode = 0;
+                       }
+
                        /* Save current */
                        if (ndents)
                                copycurname();