From 31e99433cb66c37596183552cc3cc6d3499cec3d Mon Sep 17 00:00:00 2001 From: Vadim Lopatin Date: Fri, 14 Oct 2016 13:50:32 +0300 Subject: [PATCH] fix selection with shift+arrows --- src/dlangui/widgets/editors.d | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/dlangui/widgets/editors.d b/src/dlangui/widgets/editors.d index 31cab269..0c704a7a 100644 --- a/src/dlangui/widgets/editors.d +++ b/src/dlangui/widgets/editors.d @@ -1129,8 +1129,15 @@ class EditWidgetBase : ScrollWidgetBase, EditableContentListener, MenuItemAction _selectionRange.end = _caretPos; } } else { - _selectionRange.start = _caretPos; - _selectionRange.end = _caretPos; + if (oldCaretPos < _caretPos) { + // start selection forward + _selectionRange.start = oldCaretPos; + _selectionRange.end = _caretPos; + } else { + // start selection backward + _selectionRange.start = _caretPos; + _selectionRange.end = oldCaretPos; + } } } else { _selectionRange.start = _caretPos;