aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authornyamatongwe <unknown>2009-07-06 02:36:39 +0000
committernyamatongwe <unknown>2009-07-06 02:36:39 +0000
commit83727f14427060201bdaff829d27c79abdf72604 (patch)
tree476635c73503f09b0ef8149ddcc25664111ef4e6 /src
parente77dc4242312ae3f0832020e2c8ce13e3fe9ca8e (diff)
downloadscintilla-mirror-83727f14427060201bdaff829d27c79abdf72604.tar.gz
Fix up some drawing glitches with end of line selection not being removed.
Diffstat (limited to 'src')
-rw-r--r--src/Editor.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx
index 88fd0bbeb..a2abba607 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -711,9 +711,10 @@ void Editor::InvalidateSelection(SelectionRange newMain, bool invalidateWholeSel
if (sel.Count() > 1 || !(sel.RangeMain().anchor == newMain.anchor) || sel.IsRectangular()) {
invalidateWholeSelection = true;
}
- int firstAffected = newMain.Start().Position();
+ int firstAffected = Platform::Minimum(sel.RangeMain().Start().Position(), newMain.Start().Position());
// +1 for lastAffected ensures caret repainted
int lastAffected = Platform::Maximum(newMain.caret.Position()+1, newMain.anchor.Position());
+ lastAffected = Platform::Maximum(lastAffected, sel.RangeMain().End().Position());
if (invalidateWholeSelection) {
for (size_t r=0; r<sel.Count(); r++) {
firstAffected = Platform::Minimum(firstAffected, sel.Range(r).caret.Position());