Ticket #3996: fix of broken dynamic paragraph formatting.

Revert "Ticket #1666: fix paragraph formatting."
This reverts commit ccb7ab341e.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
This commit is contained in:
Andrew Borodin 2019-06-23 20:33:16 +03:00
parent 2dc676eeea
commit 2120010cf9

View File

@ -448,6 +448,7 @@ put_paragraph (WEdit * edit, unsigned char *t, off_t p, long indent, off_t size)
if (c != t[i]) if (c != t[i])
replace_at (edit, p, t[i]); replace_at (edit, p, t[i]);
} }
edit_cursor_move (edit, cursor - edit->buffer.curs1); /* restore cursor position */
} }
/* --------------------------------------------------------------------------------------------- */ /* --------------------------------------------------------------------------------------------- */
@ -527,31 +528,12 @@ format_paragraph (WEdit * edit, gboolean force)
#ifdef HAVE_CHARSET #ifdef HAVE_CHARSET
utf8 = edit->utf8; utf8 = edit->utf8;
#endif #endif
/* scroll up to show 1st line of paragraph */
edit_move_up (edit, lines, TRUE);
/* scroll left as much as possible to show the formatted paragraph */
edit_scroll_left (edit, -edit->start_col);
format_this (t2, q - p, indent, utf8); format_this (t2, q - p, indent, utf8);
put_paragraph (edit, t2, p, indent, size); put_paragraph (edit, t2, p, indent, size);
g_free ((char *) t2); g_free ((char *) t2);
/* move to the end of paragraph */ /* Scroll left as much as possible to show the formatted paragraph */
q = end_paragraph (edit, force); edit_scroll_left (edit, -edit->start_col);
edit_cursor_move (edit, q - edit->buffer.curs1);
/* try move to the start of next paragraph */
if (edit->buffer.curs_line < edit->buffer.lines)
{
edit_execute_cmd (edit, CK_Home, -1);
do
{
edit_execute_cmd (edit, CK_Down, -1);
}
while (edit->buffer.curs_line < edit->buffer.lines
&& edit_line_is_blank (edit, edit->buffer.curs_line));
}
} }
/* --------------------------------------------------------------------------------------------- */ /* --------------------------------------------------------------------------------------------- */