diff options
author | Mike Chen <chenke@deepin.org> | 2023-06-08 14:19:52 +0800 |
---|---|---|
committer | Mike Chen <chenke@deepin.org> | 2023-06-26 16:21:30 +0000 |
commit | 4afcdc488f4e77f599406efe990e8534d38daf31 (patch) | |
tree | 3d2d02c4cdd5eee74e2feb6aa19221ed41804960 | |
parent | 02ca59c4c89199ae6bd68d117507f01b984e60a4 (diff) |
Fix QTextEdit/QPlanTextEdit palette not updated on ActivationChange
When a QTextEdit/QPlanTextEdit window loses focus and receives
PaletteChange event, the ColorGroup that controls the palette for
the QWidgetTextControl will be set to 'Inactive'. However, the
QTextEdit does not update the palette when the window is activated again.
This can become more noticeable in applications where different colors
are used for the 'Inactive' and 'Active' ColorGroups.
Pick-to: 6.5 6.6
Change-Id: Idd4dcc55b2bf8e671e7dd9cbd040782e1c3bf1a3
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r-- | src/widgets/widgets/qplaintextedit.cpp | 1 | ||||
-rw-r--r-- | src/widgets/widgets/qtextedit.cpp | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/src/widgets/widgets/qplaintextedit.cpp b/src/widgets/widgets/qplaintextedit.cpp index 9ca2a84d07..dadf154567 100644 --- a/src/widgets/widgets/qplaintextedit.cpp +++ b/src/widgets/widgets/qplaintextedit.cpp @@ -2301,6 +2301,7 @@ void QPlainTextEdit::changeEvent(QEvent *e) d->control->document()->setDefaultFont(font()); break; case QEvent::ActivationChange: + d->control->setPalette(palette()); if (!isActiveWindow()) d->autoScrollTimer.stop(); break; diff --git a/src/widgets/widgets/qtextedit.cpp b/src/widgets/widgets/qtextedit.cpp index b4b16120ea..97d666dc1f 100644 --- a/src/widgets/widgets/qtextedit.cpp +++ b/src/widgets/widgets/qtextedit.cpp @@ -1897,6 +1897,7 @@ void QTextEdit::changeEvent(QEvent *e) || e->type() == QEvent::FontChange) { d->control->document()->setDefaultFont(font()); } else if (e->type() == QEvent::ActivationChange) { + d->control->setPalette(palette()); if (!isActiveWindow()) d->autoScrollTimer.stop(); } else if (e->type() == QEvent::EnabledChange) { |