aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2013-08-08 18:13:09 +1000
committerNeil <nyamatongwe@gmail.com>2013-08-08 18:13:09 +1000
commit08da59a992ebdd1d19614073ae39d929636270fc (patch)
treee07a1ec9a4d43a91553cc8e74366660b40d14994 /src
parent4120b34e5c7bd5837ded943344270b2d9e26cd90 (diff)
downloadscintilla-mirror-08da59a992ebdd1d19614073ae39d929636270fc.tar.gz
Bug [#1512]. Fix bug with horizontal caret position when margin changed.
From Neomi.
Diffstat (limited to 'src')
-rw-r--r--src/Editor.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx
index 3aa949f77..bf4144d36 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -7681,6 +7681,7 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {
return vs.rightMarginWidth;
case SCI_SETMARGINLEFT:
+ lastXChosen += lParam - vs.leftMarginWidth;
vs.leftMarginWidth = lParam;
InvalidateStyleRedraw();
break;
@@ -8429,6 +8430,7 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {
if (ValidMargin(wParam)) {
// Short-circuit if the width is unchanged, to avoid unnecessary redraw.
if (vs.ms[wParam].width != lParam) {
+ lastXChosen += lParam - vs.ms[wParam].width;
vs.ms[wParam].width = lParam;
InvalidateStyleRedraw();
}