aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authornyamatongwe <unknown>2013-03-15 19:59:09 +1100
committernyamatongwe <unknown>2013-03-15 19:59:09 +1100
commitb020d57a6223d6cecdad4718eddbf5b8f9d6e5d8 (patch)
tree916bda8ac67f87cb2248c7084cd318253e0934fc
parent3ee697fc002bd2ac942ce40b32e317f431974b46 (diff)
downloadscintilla-mirror-b020d57a6223d6cecdad4718eddbf5b8f9d6e5d8.tar.gz
Simplify calculation of visible line for point.
-rw-r--r--src/Editor.cxx6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx
index 740162faa..4f00e501a 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -9,6 +9,7 @@
#include <string.h>
#include <stdio.h>
#include <ctype.h>
+#include <math.h>
#include <assert.h>
#include <string>
@@ -480,10 +481,7 @@ SelectionPosition Editor::SPositionFromLocation(Point pt, bool canReturnInvalid,
return SelectionPosition(INVALID_POSITION);
}
pt.x = pt.x - vs.fixedColumnWidth + xOffset;
- int visibleLine = pt.y / vs.lineHeight + topLine;
- if (pt.y < 0) { // Division rounds towards 0
- visibleLine = (static_cast<int>(pt.y) - (vs.lineHeight - 1)) / vs.lineHeight + topLine;
- }
+ int visibleLine = floor(pt.y / vs.lineHeight) + topLine;
if (!canReturnInvalid && (visibleLine < 0))
visibleLine = 0;
int lineDoc = cs.DocFromDisplay(visibleLine);