diff options
author | Liang Qi <liang.qi@qt.io> | 2016-08-22 21:58:37 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-08-22 21:58:45 +0200 |
commit | 2111bf00fef0185d70d3247e74c2c57080711ee0 (patch) | |
tree | 276558c07b3f22e4e5905ab093dc71e02df24fe9 /src/widgets/kernel/qwidget.cpp | |
parent | 53f0b43a4bfa65ad62bb0c144bab7236ad322b8c (diff) | |
parent | 881bda9e6ecdd8729edf7df68f94f72f5d7c9042 (diff) |
Merge remote-tracking branch 'origin/5.6' into 5.7
Change-Id: I4f4ab05b2de67cd4b1d29b294b96a8c9ffb964b2
Diffstat (limited to 'src/widgets/kernel/qwidget.cpp')
-rw-r--r-- | src/widgets/kernel/qwidget.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 5f8676697d..ba02728d7c 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -1482,6 +1482,9 @@ void QWidgetPrivate::create_sys(WId window, bool initializeWindow, bool destroyO data.window_flags = win->flags(); + if (!topData()->role.isNull()) + QXcbWindowFunctions::setWmWindowRole(win, topData()->role.toLatin1()); + QBackingStore *store = q->backingStore(); if (!store) { @@ -6359,13 +6362,11 @@ QString QWidget::windowRole() const */ void QWidget::setWindowRole(const QString &role) { -#if defined(Q_DEAD_CODE_FROM_QT4_X11) Q_D(QWidget); + d->createTLExtra(); d->topData()->role = role; - d->setWindowRole(); -#else - Q_UNUSED(role) -#endif + if (windowHandle()) + QXcbWindowFunctions::setWmWindowRole(windowHandle(), role.toLatin1()); } /*! |