]> git.wh0rd.org Git - nano.git/commitdiff
when indenting lines, properly keep track of the mark coordinates
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Fri, 28 Apr 2006 13:37:42 +0000 (13:37 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Fri, 28 Apr 2006 13:37:42 +0000 (13:37 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3449 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

src/text.c

index 495e985f467f94d909044cb62b1ee92e5b7eefeb..1e074ce5036b942a13f4cf81aecefcfb538281f7 100644 (file)
@@ -278,10 +278,12 @@ void do_indent_marked(ssize_t len)
                null_at(&f->data, line_len - indent_len + 1);
                openfile->totsize -= indent_len;
 
-               /* If this is the current line, adjust the x-coordinate
-                * to compensate for the change in it. */
-               if (f == openfile->current)
+               /* If this is the current line, keep track of the change
+                * in it. */
+               if (f == openfile->current) {
                    openfile->current_x -= indent_len;
+                   openfile->mark_begin_x -= indent_len;
+               }
 
                /* We've unindented, so set indent_changed to TRUE. */
                if (!indent_changed)
@@ -296,10 +298,12 @@ void do_indent_marked(ssize_t len)
            strncpy(f->data, line_indent, line_indent_len);
            openfile->totsize += line_indent_len;
 
-           /* If this is the current line, adjust the x-coordinate to
-            * compensate for the change in it. */
-           if (f == openfile->current)
+           /* If this is the current line, keep track of the change in
+            * it. */
+           if (f == openfile->current) {
                openfile->current_x += line_indent_len;
+               openfile->mark_begin_x += line_indent_len;
+           }
 
            /* If the NO_NEWLINES flag isn't set, and this is the
             * magicline, add a new magicline. */