summaryrefslogtreecommitdiffstats
path: root/src/openvg/qwindowsurface_vgegl.cpp
diff options
context:
space:
mode:
authorRhys Weatherley <rhys.weatherley@nokia.com>2009-10-13 23:17:46 (GMT)
committerRhys Weatherley <rhys.weatherley@nokia.com>2009-10-13 23:17:46 (GMT)
commit495ba974b6f84205be48bfd478cc71d8078eceb2 (patch)
tree6b0a5a393e80b837ddf5651826cc8bbecc8b367e /src/openvg/qwindowsurface_vgegl.cpp
parent5cf4e269ecaeda3cd847b2d7704fa5c94dbf0fae (diff)
downloadQt-495ba974b6f84205be48bfd478cc71d8078eceb2.zip
Qt-495ba974b6f84205be48bfd478cc71d8078eceb2.tar.gz
Qt-495ba974b6f84205be48bfd478cc71d8078eceb2.tar.bz2
Explicitly request the alpha mask in the EGL configuration
The EGL implementation used in S60/NGA for OpenVG does not return a configuration with alpha masking unless it is explicitly requested. Reviewed-by: Julian de Bhal
Diffstat (limited to 'src/openvg/qwindowsurface_vgegl.cpp')
-rw-r--r--src/openvg/qwindowsurface_vgegl.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/openvg/qwindowsurface_vgegl.cpp b/src/openvg/qwindowsurface_vgegl.cpp
index 3ae911f..d622c1f 100644
--- a/src/openvg/qwindowsurface_vgegl.cpp
+++ b/src/openvg/qwindowsurface_vgegl.cpp
@@ -211,6 +211,10 @@ static QEglContext *createContext(QPaintDevice *device)
int redSize = configProps.value(EGL_RED_SIZE);
if (redSize == EGL_DONT_CARE || redSize == 0)
configProps.setPixelFormat(QImage::Format_ARGB32); // XXX
+#ifndef QVG_SCISSOR_CLIP
+ // If we are using the mask to clip, then explicitly request a mask.
+ configProps.setValue(EGL_ALPHA_MASK_SIZE, 1);
+#endif
#ifdef EGL_VG_ALPHA_FORMAT_PRE_BIT
configProps.setValue(EGL_SURFACE_TYPE, EGL_WINDOW_BIT | EGL_PBUFFER_BIT |
EGL_VG_ALPHA_FORMAT_PRE_BIT);