summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Chen <chenke@deepin.org>2023-06-08 14:19:52 +0800
committerMike Chen <chenke@deepin.org>2023-06-26 16:21:30 +0000
commit4afcdc488f4e77f599406efe990e8534d38daf31 (patch)
tree3d2d02c4cdd5eee74e2feb6aa19221ed41804960
parent02ca59c4c89199ae6bd68d117507f01b984e60a4 (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.cpp1
-rw-r--r--src/widgets/widgets/qtextedit.cpp1
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) {