diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index bdedc9d..f6c2c8e 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -1928,6 +1928,7 @@ void QGuiApplicationPrivate::processThemeChanged(QWindowSystemInterfacePrivate:: self->notifyThemeChanged(); if (QWindow *window = tce->window.data()) { QEvent e(QEvent::ThemeChange); + qDebug() << __FUNCTION__; QGuiApplication::sendSpontaneousEvent(window, &e); } } diff --git a/src/gui/kernel/qpalette.cpp b/src/gui/kernel/qpalette.cpp index f284c20..5f7bf5a 100644 --- a/src/gui/kernel/qpalette.cpp +++ b/src/gui/kernel/qpalette.cpp @@ -1141,9 +1141,30 @@ Q_GUI_EXPORT QPalette qt_fusionPalette() } #ifndef QT_NO_DEBUG_STREAM -QDebug operator<<(QDebug dbg, const QPalette &) +QDebug operator<<(QDebug dbg, const QPalette &p) { - dbg.nospace() << "QPalette()"; + QString s; + QTextStream str(&s); + str << "QPalette(currentColorGroup=" << p.currentColorGroup() << '\n'; + for (int r = 0; r < QPalette::NColorRoles; r++) { + str << "Role "; + const int ofw = str.fieldWidth(); + str.setFieldWidth(2); + str << r; + str.setFieldWidth(ofw); + str << ((p.resolve() & (1<setPalette(palette); diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 7eecd3d..ae9c1ff 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -4215,6 +4215,7 @@ void QWidget::setPalette(const QPalette &palette) // propagate this palette to this widget's children. QPalette naturalPalette = d->naturalWidgetPalette(d->inheritedPaletteResolveMask); QPalette resolvedPalette = palette.resolve(naturalPalette); + qDebug() << __FUNCTION__ << this << "resolved" << resolvedPalette << '\n'; d->setPalette_helper(resolvedPalette); } @@ -8422,6 +8423,7 @@ void QWidget::changeEvent(QEvent * event) QApplication::style()->polish(this); QEvent styleChangedEvent(QEvent::StyleChange); QCoreApplication::sendEvent(this, &styleChangedEvent); + qDebug() << this << __FUNCTION__ << "ThemeChange"; if (isVisible()) update(); }