]> git.lyx.org Git - features.git/commitdiff
Fix application of PARAGRAPH_PARAMS* in selection.
authorPavel Sanda <sanda@lyx.org>
Sat, 22 Jul 2023 15:46:23 +0000 (17:46 +0200)
committerPavel Sanda <sanda@lyx.org>
Sat, 22 Jul 2023 16:17:46 +0000 (18:17 +0200)
- Setting in the last paragraph of selection was not applied
  at certain conditions (i.e. relative cursor position in first
  paragraph > rel.c.pos. in last paragraph).

Getting back + fixing typo from e2b42b17265f.

https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg220019.html

src/Text.cpp

index dfef748640ec2a85b3cb2abebb3c0db736613299..9850f5513c02428e8760ac946dd7b6c744657740 100644 (file)
@@ -2908,7 +2908,8 @@ void Text::setParagraphs(Cursor const & cur, docstring const & arg, bool merge)
        Layout priorlayout;
        Cursor c(cur.bv());
        c.setCursor(cur.selectionBegin());
-       for ( ; c <= cur.selectionEnd() ; ++c.pit()) {
+       pit_type const last_pit = cur.selectionEnd().pit();
+       for ( ; c.pit() <= last_pit ; ++c.pit()) {
                Paragraph & par = c.paragraph();
                ParagraphParameters params = par.params();
                params.read(argument, merge);
@@ -2934,7 +2935,8 @@ void Text::setParagraphs(Cursor const & cur, ParagraphParameters const & p)
        Layout priorlayout;
        Cursor c(cur.bv());
        c.setCursor(cur.selectionBegin());
-       for ( ; c < cur.selectionEnd() ; ++c.pit()) {
+       pit_type const last_pit = cur.selectionEnd().pit();
+       for ( ; c.pit() <= last_pit ; ++c.pit()) {
                Paragraph & par = c.paragraph();
                // Changes to label width string apply to all paragraphs
                // with same layout in a sequence.