Sadly removing call to CompresRedlines is not good solution…
AppendRedlines still calls CompresRedlines and CompresRedlines does it dirty job by invalidating 
indexes…
I prefer to modify CompresRedlines so it only compresses Redlines if they are inside same node and 
disable cross-node compressions. As only same-minute redlines can be compressed this viewed as 
allowable solution.
With these modification LO is stable when autocreecting and Undo/Redo
Patch is here https://gerrit.libreoffice.org/47686
Anyone (especially those with commit rights)are welcomed to review this patch.
------ Исходное сообщение ------
От: "Miklos Vajna" <vmiklos@collabora.co.uk<mailto:vmiklos@collabora.co.uk>>
Кому: "libreoffice@lists.freedesktop.org" 
<libreoffice@lists.freedesktop.org<mailto:libreoffice@lists.freedesktop.org>>
Отправлено: 10.01.2018 19:26:27
Тема: Re: Bug 83260
Hi,
On Tue, Jan 09, 2018 at 05:10:00AM +0000, Yemelyanenko Fyodor 
<fyodor_e@hotmail.com<mailto:fyodor_e@hotmail.com>> wrote:
 I think that the best solution for bug in question is to remove call to CompresRedlines from 
Undo/Redo. So Undo/Redo won't compress redlines and change indexes.
 I don't like to change CompresRedlines as it called by AppendRedline and from several other places.
 For me such solution can be safest.
That sounds like a good approach, I was also confused how redlining and
undo compresses the events.
This would also ensure that the behavior of how to compress redline in
saved documents is not changing, which is probably a good thing.
 PS Its funny, that if you type some text in single paragraph with
 change tracking = ON, you'll get new redline every single minute, even
 if you type continuously :-) This is by design, as AppendRedline calls
 CanCombine which only allows combining those text, which has been
 typed during single minute
 (https://opengrok.libreoffice.org/xref/core/sw/source/core/doc/DocumentRedlineManager.cxx#861)
Yes, that's a known behavior, in the past I broke it and it created a
new redline every second, that was not funny. ;-)
Regards,
Miklos
Context
   
 
  Privacy Policy |
  
Impressum (Legal Info) |
  
Copyright information: Unless otherwise specified, all text and images
  on this website are licensed under the
  
Creative Commons Attribution-Share Alike 3.0 License.
  This does not include the source code of LibreOffice, which is
  licensed under the Mozilla Public License (
MPLv2).
  "LibreOffice" and "The Document Foundation" are
  registered trademarks of their corresponding registered owners or are
  in actual use as trademarks in one or more countries. Their respective
  logos and icons are also subject to international copyright laws. Use
  thereof is explained in our 
trademark policy.