diff options
Diffstat (limited to 'src/MainWindow.cpp')
-rw-r--r-- | src/MainWindow.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 63f20752..51b23e0f 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -376,6 +376,20 @@ MainWindow::showChatPage() emit switchToChatPage(); } +bool +NhekoFixupPaletteEventFilter::eventFilter(QObject *obj, QEvent *event) +{ + // Workaround for the QGuiApplication palette not being applied to toplevel windows for some + // reason?!? + if (event->type() == QEvent::ChildAdded && + obj->metaObject()->className() == QStringLiteral("QQuickRootItem")) { + for (const auto window : QGuiApplication::topLevelWindows()) { + QGuiApplication::postEvent(window, new QEvent(QEvent::ApplicationPaletteChange)); + } + } + return false; +} + void MainWindow::closeEvent(QCloseEvent *event) { |