From 48305b653580f60adfc9d8b9460a9d150769c834 Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik Date: Thu, 4 Jan 2024 21:02:33 +0100 Subject: QWaylandWindow: Update decoration when application palette/font changes Ensures the decoration can redraw to adjust for the new colors/font. Pick-to: 6.7 6.6 6.5 Change-Id: Ib46acde1d14baafda49f379f8279c396bc976bdc Reviewed-by: David Edmundson --- src/client/qwaylandwindow.cpp | 11 +++++++++++ src/client/qwaylandwindow_p.h | 2 ++ 2 files changed, 13 insertions(+) (limited to 'src/client') diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp index a6c0b97b7..b34e448b6 100644 --- a/src/client/qwaylandwindow.cpp +++ b/src/client/qwaylandwindow.cpp @@ -1788,6 +1788,17 @@ void QWaylandWindow::reinit() } } +bool QWaylandWindow::windowEvent(QEvent *event) +{ + if (event->type() == QEvent::ApplicationPaletteChange + || event->type() == QEvent::ApplicationFontChange) { + if (mWindowDecorationEnabled && window()->isVisible()) + mWindowDecoration->update(); + } + + return QPlatformWindow::windowEvent(event); +} + } QT_END_NAMESPACE diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h index 2f6d2921b..c2815cb8e 100644 --- a/src/client/qwaylandwindow_p.h +++ b/src/client/qwaylandwindow_p.h @@ -238,6 +238,8 @@ public: virtual void reinit(); void reset(); + bool windowEvent(QEvent *event) override; + public Q_SLOTS: void applyConfigure(); -- cgit v1.2.3