From b0cb031feddc18002e1911afc300ff960cf5dad3 Mon Sep 17 00:00:00 2001 From: "michal.lazo" Date: Thu, 2 Aug 2018 16:29:42 +0200 Subject: [PATCH] move QTextCursor to Start when there isn't any previous line TP-17496 --- src/widgets/widgets/qwidgettextcontrol.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index e179ea3..930c274 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -218,6 +218,14 @@ bool QWidgetTextControlPrivate::cursorMoveKeyEvent(QKeyEvent *e) else if (e == QKeySequence::SelectPreviousLine) { op = QTextCursor::Up; mode = QTextCursor::KeepAnchor; + { + QTextBlock block = cursor.block(); + QTextLine line = currentTextLine(cursor); + if (!block.previous().isValid() + && line.isValid() + && line.lineNumber() == 0) + op = QTextCursor::Start; + } } else if (e == QKeySequence::SelectNextLine) { op = QTextCursor::Down; -- 2.9.2.windows.1