diff options
author | Lars Knoll <lars.knoll@qt.io> | 2017-10-30 15:21:33 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2017-11-03 15:37:48 +0000 |
commit | e180ab18c1e5dabcbf5965325fb957bd745d4e97 (patch) | |
tree | fba042ef686077d9522376b715ad1987515bb224 /src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h | |
parent | e7b73cc5e2cd1564d7f2ee9de1340b0913b4ecdf (diff) |
Mark layers in the SW rasterizer as opaque if possible
If the content of a layer completely covers every pixel of
it, mark that layer as opaque so that we can avoid alpha
blending where possible.
Change-Id: Ia0be4e7a96ecddd31a26f353509de976bcc9e397
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Reviewed-by: Volker Krause <volker.krause@kdab.com>
Diffstat (limited to 'src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h')
-rw-r--r-- | src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h b/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h index 04a17ea377..c68a933384 100644 --- a/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h +++ b/src/quick/scenegraph/adaptations/software/qsgabstractsoftwarerenderer_p.h @@ -86,6 +86,8 @@ protected: void setBackgroundSize(const QSize &size); QColor backgroundColor(); QSize backgroundSize(); + // only known after calling optimizeRenderList() + bool isOpaque() const { return m_isOpaque; } private: void nodeAdded(QSGNode *node); @@ -102,6 +104,7 @@ private: QRegion m_dirtyRegion; QRegion m_obscuredRegion; + bool m_isOpaque; QSGSoftwareRenderableNodeUpdater *m_nodeUpdater; }; |