diff options
author | Jani Hautakangas <jani.hautakangas@nokia.com> | 2011-05-10 08:08:59 (GMT) |
---|---|---|
committer | Jani Hautakangas <jani.hautakangas@nokia.com> | 2011-05-10 10:14:19 (GMT) |
commit | ae245c770449f3cc8629d9d9836ef9c03486b852 (patch) | |
tree | cfec5a38f9d2a23b0f598225dce86f62ed870b4c /src/gui/kernel | |
parent | 0ec06f76484d64676bcd8b981b54593cdb8b539e (diff) | |
download | Qt-ae245c770449f3cc8629d9d9836ef9c03486b852.zip Qt-ae245c770449f3cc8629d9d9836ef9c03486b852.tar.gz Qt-ae245c770449f3cc8629d9d9836ef9c03486b852.tar.bz2 |
Introduce platform extension to QGraphicsSystem
Qt on Symbian needs some special capabilities to be able
to work on 32MB GPU. This patch introduces some Symbian
specific functions to QGraphicsSystem
Task-number: QTBUG-17882
Reviewed-by: Laszlo Agocs
Diffstat (limited to 'src/gui/kernel')
-rw-r--r-- | src/gui/kernel/qwidget_p.h | 1 | ||||
-rw-r--r-- | src/gui/kernel/qwidget_s60.cpp | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h index c9dba29..7bf65f6 100644 --- a/src/gui/kernel/qwidget_p.h +++ b/src/gui/kernel/qwidget_p.h @@ -227,6 +227,7 @@ struct QTLWExtra { #elif defined(Q_OS_SYMBIAN) uint inExpose : 1; // Prevents drawing recursion uint nativeWindowTransparencyEnabled : 1; // Tracks native window transparency + uint forcedToRaster : 1; #endif }; diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index a5d8f9f..1dd1477 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -825,7 +825,8 @@ void QWidgetPrivate::s60UpdateIsOpaque() RWindow *const window = static_cast<RWindow *>(q->effectiveWinId()->DrawableWindow()); #ifdef Q_SYMBIAN_SEMITRANSPARENT_BG_SURFACE - if (QApplicationPrivate::instance()->useTranslucentEGLSurfaces) { + if (QApplicationPrivate::instance()->useTranslucentEGLSurfaces + && !extra->topextra->forcedToRaster) { window->SetSurfaceTransparency(!isOpaque); extra->topextra->nativeWindowTransparencyEnabled = !isOpaque; return; @@ -1009,6 +1010,7 @@ void QWidgetPrivate::createTLSysExtra() { extra->topextra->inExpose = 0; extra->topextra->nativeWindowTransparencyEnabled = 0; + extra->topextra->forcedToRaster = 0; } void QWidgetPrivate::deleteTLSysExtra() |