summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@nokia.com>2011-05-20 19:45:38 +0200
committerSamuel Rødal <samuel.rodal@nokia.com>2011-05-20 19:46:19 +0200
commitd671acd5b296b83440db9836a92189c501c87ff3 (patch)
treebd9c1a000e17c70124c207666cfb3276b5518ffd /src/widgets
parent42f5786104f9eef9542df2c7469a03324978281d (diff)
parent4f2138ecfbdc58e5cb5b0c7d762197ef69752957 (diff)
Merge remote branch 'staging/master' into refactor
Conflicts: src/opengl/qgl_qpa.cpp src/plugins/platforms/glxconvenience/qglxconvenience.cpp src/plugins/platforms/platforms.pro src/plugins/platforms/wayland/qwaylandwindow.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/plugins/platforms/xcb/qxcbwindow.h src/plugins/platforms/xcb/qxcbwindowsurface.cpp src/widgets/kernel/qwidget_qpa.cpp tests/auto/qvariant/tst_qvariant.cpp
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/kernel/qwidget_qpa.cpp7
-rw-r--r--src/widgets/platforms/x11/qapplication_x11.cpp4
2 files changed, 9 insertions, 2 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);
}
diff --git a/src/widgets/platforms/x11/qapplication_x11.cpp b/src/widgets/platforms/x11/qapplication_x11.cpp
index 20542ea328..d1f9eb1b8a 100644
--- a/src/widgets/platforms/x11/qapplication_x11.cpp
+++ b/src/widgets/platforms/x11/qapplication_x11.cpp
@@ -1740,8 +1740,8 @@ void qt_init(QApplicationPrivate *priv, int,
} else {
// Qt controls everything (default)
- if (QApplication::testAttribute(Qt::AA_X11InitThreads))
- XInitThreads();
+ // With the threaded QML renderer, we always need this.
+ XInitThreads();
// Set application name and class
char *app_class = 0;