diff options
Diffstat (limited to 'src/gui/kernel/qguiapplication.cpp')
-rw-r--r-- | src/gui/kernel/qguiapplication.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index 8c9bb75844..2ccaf2565b 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -2585,13 +2585,27 @@ void QGuiApplicationPrivate::processSafeAreaMarginsChangedEvent(QWindowSystemInt void QGuiApplicationPrivate::processThemeChanged(QWindowSystemInterfacePrivate::ThemeChangeEvent *tce) { if (self) - self->notifyThemeChanged(); + self->handleThemeChanged(); if (QWindow *window = tce->window.data()) { QEvent e(QEvent::ThemeChange); QGuiApplication::sendSpontaneousEvent(window, &e); } } +void QGuiApplicationPrivate::handleThemeChanged() +{ + updatePalette(); + + QAbstractFileIconProviderPrivate::clearIconTypeCache(); + + if (!(applicationResourceFlags & ApplicationFontExplicitlySet)) { + const auto locker = qt_scoped_lock(applicationFontMutex); + clearFontUnlocked(); + initFontUnlocked(); + } + initThemeHints(); +} + void QGuiApplicationPrivate::processGeometryChangeEvent(QWindowSystemInterfacePrivate::GeometryChangeEvent *e) { if (e->window.isNull()) @@ -4198,20 +4212,6 @@ QPoint QGuiApplicationPrivate::QLastCursorPosition::toPoint() const noexcept return thePoint.toPoint(); } -void QGuiApplicationPrivate::notifyThemeChanged() -{ - updatePalette(); - - QAbstractFileIconProviderPrivate::clearIconTypeCache(); - - if (!(applicationResourceFlags & ApplicationFontExplicitlySet)) { - const auto locker = qt_scoped_lock(applicationFontMutex); - clearFontUnlocked(); - initFontUnlocked(); - } - initThemeHints(); -} - #if QT_CONFIG(draganddrop) void QGuiApplicationPrivate::notifyDragStarted(const QDrag *drag) { |