Updated distance field glyph caches to use QDistanceField.
authorYoann Lopes <yoann.lopes@digia.com>
Wed, 21 Aug 2013 12:40:01 +0000 (14:40 +0200)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Tue, 27 Aug 2013 18:35:55 +0000 (20:35 +0200)
commit184e27c0e69f9f8c342339e83cdf79ec5a97b58e
tree0529dcf5a0b5b86b98c40d257f69ecb7dcb9b3ee
parentcb9672c86d2679bcb0d9e10f76b12eb03f4c515e
Updated distance field glyph caches to use QDistanceField.

Some OpenGL drivers assume alpha-only images are always tightly packed,
regardless of what is set for GL_UNPACK_ALIGNMENT. We now use
QDistanceField to store glyphs, which aligns scanlines on a 1-byte
boundary, instead of QImage which uses a 4-byte boundary. A previous
workaround uploaded scanlines one at a time, but this is also broken
with some other drivers...

Task-number: QTBUG-30908
Task-number: QTBUG-32861
Change-Id: I46527fb48de1e00116f776427c45baa752c6176d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
src/quick/scenegraph/qsgadaptationlayer.cpp
src/quick/scenegraph/qsgadaptationlayer_p.h
src/quick/scenegraph/qsgdefaultdistancefieldglyphcache.cpp
src/quick/scenegraph/qsgdefaultdistancefieldglyphcache_p.h
src/quick/scenegraph/qsgshareddistancefieldglyphcache.cpp
src/quick/scenegraph/qsgshareddistancefieldglyphcache_p.h