Browse Source

Raise TextAnchor.Deleted events before LineManager.LineCountChanged.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3274 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 18 years ago
parent
commit
13814fa026
  1. 3
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/LineManager/LineManager.cs

3
src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/LineManager/LineManager.cs

@ -95,14 +95,15 @@ namespace ICSharpCode.TextEditor.Document @@ -95,14 +95,15 @@ namespace ICSharpCode.TextEditor.Document
// Only fire events after RemoveInternal+InsertInternal finished completely:
// Otherwise we would expose inconsistent state to the event handlers.
RunHighlighter(lineStart, 1 + Math.Max(0, this.TotalNumberOfLines - numberOfLinesAfterRemoving));
if (deferredEventList.removedLines != null) {
foreach (LineSegment ls in deferredEventList.removedLines)
OnLineDeleted(new LineEventArgs(document, ls));
}
deferredEventList.RaiseEvents();
if (this.TotalNumberOfLines != oldNumberOfLines) {
OnLineCountChanged(new LineCountChangeEventArgs(document, lineStart, this.TotalNumberOfLines - oldNumberOfLines));
}
deferredEventList.RaiseEvents();
}
void RemoveInternal(ref DeferredEventList deferredEventList, int offset, int length)

Loading…
Cancel
Save