summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2019-06-25 18:42:59 +0200
committerTor Arne Vestbø <tor.arne.vestbo@qt.io>2019-12-17 20:19:37 +0100
commit04f5008f51dee9feec68afcee8cd8314b8e5ac62 (patch)
tree85cefe55ede43ffb789535e4a4e38d9cbd598a0f /src/widgets
parent87cedab94e4ca17e8c77602c0d1d285e3c68cb83 (diff)
Let sendApplicationPaletteChange() decide when it needs to exit early
Change-Id: I7a8e6c0b54d2a16a17b292a4102e05f743bcbe29 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/kernel/qapplication.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp
index 5a21a3a15c..6120e0e164 100644
--- a/src/widgets/kernel/qapplication.cpp
+++ b/src/widgets/kernel/qapplication.cpp
@@ -1390,10 +1390,9 @@ void QApplicationPrivate::setPalette_helper(const QPalette &palette, const char*
hash->insert(className, pal);
}
- if (QApplicationPrivate::is_app_running && !QApplicationPrivate::is_app_closing) {
- // Send ApplicationPaletteChange to qApp itself, and to the widgets.
+
+ if (qApp)
qApp->d_func()->sendApplicationPaletteChange(all, className);
- }
if (!className && (!QApplicationPrivate::sys_pal || !palette.isCopyOf(*QApplicationPrivate::sys_pal))) {
QCoreApplication::setAttribute(Qt::AA_SetPalette);
@@ -4431,6 +4430,9 @@ void QApplicationPrivate::notifyThemeChanged()
void QApplicationPrivate::sendApplicationPaletteChange(bool toAllWidgets, const char *className)
{
+ if (!is_app_running || is_app_closing)
+ return;
+
QGuiApplicationPrivate::sendApplicationPaletteChange();
QEvent event(QEvent::ApplicationPaletteChange);