diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index e7f03bbc..69e0b00a 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -1259,6 +1259,10 @@ void QWidgetPrivate::create() for (const QByteArray &propertyName : dynamicPropertyNames) { if (!qstrncmp(propertyName, "_q_platform_", 12)) win->setProperty(propertyName, q->property(propertyName)); + + // Forward the property to the window handle if it is a ukui_surface property + if (!qstrncmp(propertyName, "ukui_surface_", 13)) + win->setProperty(propertyName, q->property(propertyName)); } Qt::WindowFlags &flags = data.window_flags; @@ -9102,6 +9106,10 @@ bool QWidget::event(QEvent *event) } if (windowHandle() && !qstrncmp(propName, "_q_platform_", 12)) windowHandle()->setProperty(propName, property(propName)); + + // Forward the property to the window handle if it is a ukui_surface property + if (windowHandle() && !qstrncmp(propName, "ukui_surface_", 13)) + windowHandle()->setProperty(propName, property(propName)); Q_FALLTHROUGH(); } #endif