diff options
Diffstat (limited to 'src/widgets/kernel/qwidget_qpa.cpp')
-rw-r--r-- | src/widgets/kernel/qwidget_qpa.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/widgets/kernel/qwidget_qpa.cpp b/src/widgets/kernel/qwidget_qpa.cpp index 6721fdbb6a..02487679bf 100644 --- a/src/widgets/kernel/qwidget_qpa.cpp +++ b/src/widgets/kernel/qwidget_qpa.cpp @@ -96,6 +96,12 @@ void QWidgetPrivate::create_sys(WId window, bool initializeWindow, bool destroyO win->setWindowFlags(data.window_flags); win->setGeometry(q->geometry()); + if (q->testAttribute(Qt::WA_TranslucentBackground)) { + QWindowFormat format = win->requestedWindowFormat(); + format.setAlphaBufferSize(8); + win->setWindowFormat(format); + } + if (QWidget *nativeParent = q->nativeParentWidget()) { if (nativeParent->windowHandle()) win->setParent(nativeParent->windowHandle()); @@ -396,6 +402,7 @@ void QWidgetPrivate::show_sys() surface->resize(geomRect.size()); } } + if (window) window->setVisible(true); } |