summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets/qplaintextedit.cpp
diff options
context:
space:
mode:
authorVolker Hilsheimer <volker.hilsheimer@qt.io>2020-07-02 11:16:39 +0200
committerVolker Hilsheimer <volker.hilsheimer@qt.io>2020-07-02 19:28:29 +0200
commit634ce491e8e943519593140b858eb2e67253c13e (patch)
treea5d85ecdce62222ccc92ce6ebc1eb28711429dc5 /src/widgets/widgets/qplaintextedit.cpp
parentb5ae228aa089e1dd84a50e112faf96f2c3a0455d (diff)
Manage keyboard modifier state in QPlainTextEdit
Gets rid of a call to QApplication::keyboardModifiers, at the expense of some more bytes in QPlainTextEditPrivate. Task-number: QTBUG-73829 Change-Id: I0394cb773034e832cffe5fa643ac308493f815b4 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/widgets/widgets/qplaintextedit.cpp')
-rw-r--r--src/widgets/widgets/qplaintextedit.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/widgets/widgets/qplaintextedit.cpp b/src/widgets/widgets/qplaintextedit.cpp
index 58203ba921..fb90667915 100644
--- a/src/widgets/widgets/qplaintextedit.cpp
+++ b/src/widgets/widgets/qplaintextedit.cpp
@@ -759,6 +759,7 @@ QPlainTextEditPrivate::QPlainTextEditPrivate()
tabChangesFocus(false),
lineWrap(QPlainTextEdit::WidgetWidth),
wordWrap(QTextOption::WrapAtWordBoundaryOrAnywhere),
+ keyboardModifiers{},
clickCausedFocus(0), placeholderVisible(1),
topLine(0), topLineFracture(0),
pageUpDownLastCursorYIsValid(false)
@@ -1621,7 +1622,7 @@ void QPlainTextEdit::timerEvent(QTimerEvent *e)
const QPoint globalPos = QCursor::pos();
pos = d->viewport->mapFromGlobal(globalPos);
QMouseEvent ev(QEvent::MouseMove, pos, d->viewport->mapTo(d->viewport->topLevelWidget(), pos), globalPos,
- Qt::LeftButton, Qt::LeftButton, QGuiApplication::keyboardModifiers());
+ Qt::LeftButton, Qt::LeftButton, d->keyboardModifiers);
mouseMoveEvent(&ev);
}
int deltaY = qMax(pos.y() - visible.top(), visible.bottom() - pos.y()) - visible.height();
@@ -1686,6 +1687,7 @@ void QPlainTextEdit::setPlainText(const QString &text)
void QPlainTextEdit::keyPressEvent(QKeyEvent *e)
{
Q_D(QPlainTextEdit);
+ d->keyboardModifiers = e->modifiers();
#ifdef QT_KEYPAD_NAVIGATION
switch (e->key()) {
@@ -1833,6 +1835,9 @@ void QPlainTextEdit::keyPressEvent(QKeyEvent *e)
*/
void QPlainTextEdit::keyReleaseEvent(QKeyEvent *e)
{
+ Q_D(QPlainTextEdit);
+ d->keyboardModifiers = e->modifiers();
+
#ifdef QT_KEYPAD_NAVIGATION
Q_D(QPlainTextEdit);
if (QApplicationPrivate::keypadNavigationEnabled()) {