From 64aab4aa75fcff3a4a032ddc7216f3ba3a4d536d Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=BCrgen=20Spitzm=C3=BCller?= Date: Sat, 25 Mar 2006 16:38:28 +0000 Subject: [PATCH] * src/text.C (bool LyXText::Delete): move cursor to next par after deleting a paragraph break in change tracking mode. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13495 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/text.C | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/text.C b/src/text.C index d19a338493..dfe9a3f304 100644 --- a/src/text.C +++ b/src/text.C @@ -1579,17 +1579,21 @@ bool LyXText::Delete(LCursor & cur) recordUndo(cur, Undo::DELETE, cur.pit()); setCursorIntern(cur, cur.pit(), cur.pos() + 1, false, cur.boundary()); needsUpdate = backspace(cur); - Paragraph & par = cur.paragraph(); - if (cur.pos() < par.size() - && par.lookupChange(cur.pos()) == Change::DELETED) + if (cur.paragraph().lookupChange(cur.pos()) == Change::DELETED) cur.posRight(); } else if (cur.pit() != cur.lastpit()) { LCursor scur = cur; - setCursorIntern(cur, cur.pit()+1, 0, false, false); + setCursorIntern(cur, cur.pit() + 1, 0, false, false); if (pars_[cur.pit()].layout() == pars_[scur.pit()].layout()) { recordUndo(scur, Undo::DELETE, scur.pit()); needsUpdate = backspace(cur); + if (cur.buffer().params().tracking_changes) { + // move forward after the paragraph break is DELETED + Paragraph & par = cur.paragraph(); + if (par.lookupChange(par.size()) == Change::DELETED) + setCursorIntern(cur, cur.pit() + 1, 0); + } } else { setCursorIntern(scur, scur.pit(), scur.pos(), false, scur.boundary()); } -- 2.39.2