aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--doc/ScintillaHistory.html4
-rw-r--r--src/Editor.cxx5
2 files changed, 8 insertions, 1 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html
index b3a58e810..7d6566f60 100644
--- a/doc/ScintillaHistory.html
+++ b/doc/ScintillaHistory.html
@@ -566,6 +566,10 @@
Avoid unnecessary IME caret movement on Win32.
<a href="https://sourceforge.net/p/scintilla/feature-requests/1304/">Feature #1304</a>.
</li>
+ <li>
+ Setting rectangular selection made faster.
+ <a href="https://sourceforge.net/p/scintilla/bugs/2130/">Bug #2130</a>.
+ </li>
</ul>
<h3>
<a href="https://sourceforge.net/projects/scintilla/files/scintilla/3.11.1/scintilla3111.zip/download">Release 3.11.1</a>
diff --git a/src/Editor.cxx b/src/Editor.cxx
index cb7269685..b26d19c8b 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -591,8 +591,11 @@ void Editor::SetRectangularRange() {
const Sci::Line lineCaret =
pdoc->SciLineFromPosition(sel.Rectangular().caret.Position());
const int increment = (lineCaret > lineAnchorRect) ? 1 : -1;
+ AutoSurface surface(this);
for (Sci::Line line=lineAnchorRect; line != lineCaret+increment; line += increment) {
- SelectionRange range(SPositionFromLineX(line, xCaret), SPositionFromLineX(line, xAnchor));
+ SelectionRange range(
+ view.SPositionFromLineX(surface, *this, line, xCaret, vs),
+ view.SPositionFromLineX(surface, *this, line, xAnchor, vs));
if ((virtualSpaceOptions & SCVS_RECTANGULARSELECTION) == 0)
range.ClearVirtualSpace();
if (line == lineAnchorRect)