Contain Qt::AA_SetPalette logic in QApplicationPrivate::setPalette_helper

Change-Id: I88b36e800139389895ecb1a15553207a24b3e3a4
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
This commit is contained in:
Tor Arne Vestbø 2019-12-19 12:28:46 +01:00
parent c7ecff0460
commit 761025d08c

View File

@ -1380,6 +1380,10 @@ void QApplicationPrivate::setPalette_helper(const QPalette &palette, const char*
QApplicationPrivate::app_pal = new QPalette(pal);
else
*QApplicationPrivate::app_pal = pal;
if (!QApplicationPrivate::sys_pal || !palette.isCopyOf(*QApplicationPrivate::sys_pal))
QCoreApplication::setAttribute(Qt::AA_SetPalette);
if (hash && hash->size()) {
all = true;
if (clearWidgetPaletteHash)
@ -1389,9 +1393,6 @@ void QApplicationPrivate::setPalette_helper(const QPalette &palette, const char*
hash->insert(className, pal);
}
if (!className && (!QApplicationPrivate::sys_pal || !palette.isCopyOf(*QApplicationPrivate::sys_pal)))
QCoreApplication::setAttribute(Qt::AA_SetPalette);
if (qApp)
qApp->d_func()->sendApplicationPaletteChange(all, className);
}