aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--doc/ScintillaHistory.html5
-rw-r--r--src/Editor.cxx14
2 files changed, 15 insertions, 4 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html
index 4f0ebf066..29a5d9241 100644
--- a/doc/ScintillaHistory.html
+++ b/doc/ScintillaHistory.html
@@ -547,6 +547,11 @@
<a href="http://sourceforge.net/p/scintilla/bugs/1919/">Bug #1919</a>.
</li>
<li>
+ Fix drawing failure when in wrap mode for delete to start/end of line which
+ affects later lines but did not redraw them.
+ <a href="http://sourceforge.net/p/scintilla/bugs/1949/">Bug #1949</a>.
+ </li>
+ <li>
On Qt, mouse tracking is reenabled when the window is reshown.
<a href="http://sourceforge.net/p/scintilla/bugs/1948/">Bug #1948</a>.
</li>
diff --git a/src/Editor.cxx b/src/Editor.cxx
index 9020a7051..4b5ecadc2 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -818,8 +818,11 @@ void Editor::MovedCaret(SelectionPosition newPos, SelectionPosition previousPos,
const Sci::Line currentLine = pdoc->LineFromPosition(newPos.Position());
if (ensureVisible) {
// In case in need of wrapping to ensure DisplayFromDoc works.
- if (currentLine >= wrapPending.start)
- WrapLines(WrapScope::wsAll);
+ if (currentLine >= wrapPending.start) {
+ if (WrapLines(WrapScope::wsAll)) {
+ Redraw();
+ }
+ }
XYScrollPosition newXY = XYScrollToMakeVisible(
SelectionRange(posDrag.IsValid() ? posDrag : newPos), xysDefault);
if (previousPos.IsValid() && (newXY.xOffset == xOffset)) {
@@ -5290,8 +5293,11 @@ Sci::Line Editor::ContractedFoldNext(Sci::Line lineStart) const {
void Editor::EnsureLineVisible(Sci::Line lineDoc, bool enforcePolicy) {
// In case in need of wrapping to ensure DisplayFromDoc works.
- if (lineDoc >= wrapPending.start)
- WrapLines(WrapScope::wsAll);
+ if (lineDoc >= wrapPending.start) {
+ if (WrapLines(WrapScope::wsAll)) {
+ Redraw();
+ }
+ }
if (!cs.GetVisible(lineDoc)) {
// Back up to find a non-blank line