Go to file
Eskil Abrahamsen Blomfeldt 070d9c00c4 Avoid double caching glyphs in raster/QPA/FreeType
Since FreeType has internal caching, it has had a special
code path in the raster engine which avoided using Qt's glyph
cache, as that would be redundant. However, when compiling
with QPA, we want the same behavior without being able to
access the QFontEngineFT class. To achieve this, I've made
a new abstraction and added it to QFontEngine which allows
the FT engine to provide direct pointers into the alpha maps
stored by FT. This requires a locking/unlocking mechanism.

Yes, the QFontEngine::alphaMap* API is slowly becoming a horrible
mess, but due to time constraints, the task of refactoring these
functions into a more flexible API needs to wait. I've added a
TODO comment for this.

Change-Id: I08237403c2967f8fb952258178676f33a87c0353
Reviewed-on: http://codereview.qt-project.org/5155
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-09-20 12:00:23 +02:00
bin Merge branch 'refactor' 2011-09-13 08:54:45 +02:00
config.profiles Update licenseheader text in source files for qtbase Qt module 2011-05-24 12:34:08 +03:00
config.tests Fixed xcb-render config test. 2011-09-19 08:37:40 +02:00
dist added QMAKE_MOC_OPTIONS variable to qmake 2011-09-07 19:04:20 +02:00
doc/src Move the module qdoc files from qtdoc and split up doc/src. 2011-09-19 10:24:25 +02:00
examples Fix compilation 2011-09-19 21:05:28 +02:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs Mac: fix linking with Qt frameworks which don't exist at qmake time 2011-09-17 01:32:51 +02:00
qmake Merge branch 'refactor' 2011-09-13 08:54:45 +02:00
src Avoid double caching glyphs in raster/QPA/FreeType 2011-09-20 12:00:23 +02:00
tests Improve globaldata testlib selftest. 2011-09-20 08:46:27 +02:00
tools Ensure build_all is propagated to all modules when appropriate. 2011-09-15 01:03:11 +02:00
util drop an obsolete QChar::NoCategory enum value 2011-07-13 13:31:13 +02:00
.gitattributes Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
.gitignore Remove uilib and QtUiTools from QtBase 2011-09-13 20:11:40 +02:00
.gitmodules Add QtV8 library to QtBase 2011-08-29 10:16:01 +02:00
.tag Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
configure Re-add QT_GCC_*_VERSION qmake variables 2011-09-15 16:36:34 +02:00
configure.exe New configure.exe binary 2011-09-05 08:55:31 +02:00
header.BSD Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
header.FDL Update licenseheader text in source files for qtbase Qt module 2011-05-24 12:34:08 +03:00
header.LGPL Update licenseheader text in source files for qtbase Qt module 2011-05-24 12:34:08 +03:00
header.LGPL-ONLY Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
INSTALL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LGPL_EXCEPTION.txt Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.LGPL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.PREVIEW.COMMERCIAL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
qtbase.pro Fix make confclean 2011-09-12 16:03:47 +02:00
sync.profile Remove uilib and QtUiTools from QtBase 2011-09-13 20:11:40 +02:00