summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-06-013-7/+20
|\ | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Avoid buffer overrun in QMacPixmapData resizing Fix glyph metrics with QStaticText/Freetype/raster and light/no hinting Missing glyphs transforming QStaticText on X11/raster with subpixel AA Fixed clipping errors for non-extended paint engines.
| * Missing glyphs transforming QStaticText on X11/raster with subpixel AAEskil Abrahamsen Blomfeldt2011-05-302-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | Static text took an untested and broken code path for the combo of subpixel AA, X11, raster engine and transformation. This would cause missing glyphs. The reason was that QStaticText took an unused code path which turned out not to work. The workaround is to use gray AA on transformed text, like we already do for the GL engine. In Qt 4.8, the static text code path has been rewritten to use the Freetype cache instead of the image glyph cache, so the bug will be fixed more properly there. Reviewed-by: Samuel
| * Fixed clipping errors for non-extended paint engines.Samuel Rødal2011-05-301-0/+9
| | | | | | | | | | | | | | | | Partially revert change a33ef62469fd71bec for the non-extended paint engine path. Task-number: QTBUG-19525 Reviewed-by: Andy Shaw
* | Fix for BCM2727 chip detection on SymbianJani Hautakangas2011-05-302-7/+32
|/ | | | | | | | | | | | | | QSymbianGraphcisSystemEx::hasBCM2727() uses bool QApplicationPrivate::useTranslucentEGLSurfaces to decide if Symbian is running on BCM2727 chip which is not entirely correct. bool QApplicationPrivate::useTranslucentEGLSurfaces should be assigned according to QSymbianGraphcisSystemEx::hasBCM2727() and QSymbianGraphcisSystemEx::hasBCM2727() should be also static function. Task-number: QTBUG-19578 Reviewed-by: Laszlo Agocs
* Re-apply licenseheader text in source files for qt4.7Jyri Tahtela2011-05-183-51/+51
| | | | | | New files after previous license change round. Reviewed-by: Trust Me
* Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-05-17170-2876/+2876
|\ | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Updating file with CRLF line endings for the updated header Fix a regression in QList::mid() update gitignore remove -fno-stack-protector Fix make confclean Update licenseheader text in source files
| * Update licenseheader text in source filesJyri Tahtela2011-05-13170-2876/+2876
| | | | | | | | | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* | Introduce platform extension to QGraphicsSystemJani Hautakangas2011-05-106-5/+247
| | | | | | | | | | | | | | | | | | 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
* | QPainterPath: Ignore calls with NaN/Infinite parametersAdemar de Souza Reis Jr2011-05-031-19/+47
|/ | | | | | | | | | | | | | | | | | | | | | | | | QPainterPath can't handle NaNs/Inf inside coordinates, but instead of safely ignoring or aborting an operation, it shows a warning and keeps going on, with undefined behavior. Sometimes leading to infinite loops, leaks or crashes (see qtwebkit example below). This is particularly bad when QPainterPath is used to render content from untrusted sources (web or user data). As an example, there's a qtwebkit bug where the browser crashes when a particular SVG is loaded: https://bugs.webkit.org/show_bug.cgi?id=51698. Please note that "untrusted sources" doesn't apply only to network sources. This behavior can probably be exploited on applications such as file-browsers with previews enabled. Task-number: QTBUG-16664 Signed-off-by: Ademar de Souza Reis Jr <ademar.reis@openbossa.org> Merge-request: 1026 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> Reviewed-by: Samuel
* Fix crash in raster on X11 when text contains unsupported charactersEskil Abrahamsen Blomfeldt2011-04-281-1/+1
| | | | | | | | We would assume the font engine was a FT engine and do a static cast here, which would cause a crash if the box engine was in use instead. Task-number: QTBUG-17443 Reviewed-by: Samuel
* Let QTextLine decide its own x position in QPainterJiang Jiang2011-04-191-4/+8
| | | | | | | | | | So that it can take trailing space width into account when doing right aligned text drawing. Backported from master. Task-number: QTBUG-18303 Reviewed-by: Eskil
* Support text decoration in QML when using static text back-endEskil Abrahamsen Blomfeldt2011-04-181-11/+11
| | | | | | | | | | When the QStaticTextItem code path in QML was copy-pasted, QStaticText did not support text decoration yet. It has since been implemented. We copy-paste the fix as well (which means we have to export a private function from QtGui to avoid duplicating that code as well.) Task-number: QTBUG-18428 Reviewed-by: Jiang Jiang
* Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-04-081-3/+1
|\ | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Let's not write to the source buffer when blending argb32 on rgb16.
| * Let's not write to the source buffer when blending argb32 on rgb16.Samuel Rødal2011-04-081-3/+1
| | | | | | | | | | | | | | Even though we're writing the same values back, we might get a segfault when the source is in read-only memory. Reviewed-by: Kim
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2011-04-041-2/+4
|\ \ | |/ |/| | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Fix QGradient stop with NaN position on Symbian. Do not add project path to SYMBIAN_MATCHED_TRANSLATIONS if not needed QApplication does not define flag for "single touch" Native dialog softkeys are covered by QApplication softkeys
| * Fix QGradient stop with NaN position on Symbian.Laszlo Agocs2011-04-041-2/+4
| | | | | | | | | | | | | | | | | | | | The qbrush autotest was failing on Symbian, because gradient stops with NaN position cannot be inserted on Symbian. This is caused by the pos > 1 || pos < 0 check in setColorAt() which is incorrect on ARM as NaN > 1 will evaluate to true. Task-number: QTBUG-17874 Reviewed-by: Samuel Rødal
* | Fixed rounding of coordinates pre-transformation in CG paintengine.Samuel Rødal2011-03-291-1/+1
| | | | | | | | | | | | | | | | | | Rounding the coordinate pre-transformation leads to pretty big positioning errors when the painter has a large scale, and small source coordinates are used. Task-number: QTBUG-18416 Reviewed-by: Eskil Abrahamsen Blomfeldt
* | Fixed infinite loop in QPainterPath::intersects() when qreal=float.Samuel Rødal2011-03-281-8/+8
|/ | | | | | | | Similar to c30714122c58a3dc6fd8401427da60c4afc4127b, we need to limit the max number of recursions. Task-number: QTBUG-16422 Reviewed-by: Kim
* Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2011-03-191-9/+19
|\ | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Add flag for forcibly propagating backing store alpha to framebuffer Fixed unmatched quotes in s60installs.pro
| * Add flag for forcibly propagating backing store alpha to framebufferGareth Stockwell2011-03-181-9/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the following rules applies to the creation and blitting of the Symbian raster backing store: 1. Creation of backing store with an alpha channel: Backing store has an alpha channel only if !QWidget::isOpaque. 2. Pre-filling of backing store prior to paint loop: Backing store is filled with transparent pixels if !QWidget::isOpaque. 3. Blitting of backing store: CGraphicsContext::EDrawModeWriteAlpha is used (meaning that backing store alpha values are propagated into the frame buffer), if QWidget::isOpaque. In order for the direct camera viewfinder to be visible on DSA devices, alpha=0 must be written into the framebuffer in the region where the viewfinder will be displayed. This requires a backing store with an alpha channel (1), use of CGraphicsContext::EDrawModeWriteAlpha (3), but not pre-filling of the entire backing store (2). This patch adds a new enum value, QWExtra::BlitWriteAlpha, which can be used by camera backends to achieve the desired behaviour. Task-number: QTMOBILITY-1278 Reviewed-by: Jani Hautakangas
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-161-1/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: QMeeGoLivePixmapData : when creating QImage, use constructor with pitch. Added automatic graphicssystem switching on meego when app is minimized.
| * | Added automatic graphicssystem switching on meego when app is minimized.Samuel Rødal2011-03-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When all top-level widgets are minimized we switch to raster to reduce GPU memory consumption. We switch back to graphicssystem meego when at least one top-level widget is shown normally again. The switching only applies when the runtime graphicssystem is being used. The switching only applies when the runtime graphicssystem is being used. Task-number: QTBUG-18013 Reviewed-by: Armin Berres
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-141-4/+4
|\ \ \ | |/ / | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Prevented infinite recursion in QPainterPath::contains().
| * | Prevented infinite recursion in QPainterPath::contains().Samuel Rødal2011-03-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Limit the amount of recursions in qt_painterpath_isect_curve to prevent a crash. Task-number: QTBUG-16422 Reviewed-by: Kim
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-101-0/+5
|\ \ \ | |/ / | | / | |/ |/| | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Partial update window surfaces always need a repaint before flush.
| * Partial update window surfaces always need a repaint before flush.Samuel Rødal2011-03-091-0/+5
| | | | | | | | | | | | | | | | When we get an Expose, we need to repaint the window surface before we can flush if the window surface doesn't support partial updates, otherwise we'll end up with garbage on the screen. Reviewed-by: Bjørn Erik Nilsen
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt into 4.7Laszlo Agocs2011-03-016-21/+29
|\ \ | | | | | | | | | | | | | | | Conflicts: src/s60installs/bwins/QtGuiu.def src/s60installs/eabi/QtGuiu.def
| * \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-02-241-0/+1
| |\ \ | | |/ | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: QRuntimeWindowSystem: Track window size properly
| | * QRuntimeWindowSystem: Track window size properlySami Kyostila2011-02-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The runtime window system has a 'proxy' window surface which wraps the currently active window surface. When the window geometry changes, the new geometry is properly communicated to the wrapped window surface. However, the new geometry is not updated into the runtime window surface proxy itself, which means that when queried, the geometry for the window surface will always be invalid. This patch fixes the issue. Fixes: QT-4588 Merge-request: 1098 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-02-221-0/+7
| |\ \ | | |/ | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Prevent infinite loop in raster engine on zero dash pattern length.
| | * Prevent infinite loop in raster engine on zero dash pattern length.Samuel Rødal2011-02-221-0/+7
| | | | | | | | | | | | | | | Task-number: QTBUG-17053 Reviewed-by: Kim
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2011-02-141-2/+2
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Fix for ARMV6 drawhelper blending
| * \ \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2011-02-091-4/+13
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: 4.7.2 changes Change paging attributes for Symbian binaries Fix build failure Fix regression in creating mkspecs/default Changes for 4.7.2 Recreate Symbian raster backing store when WA_TranslucentBackground set
| * \ \ \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt into 4.7David Boddie2011-01-261-0/+2
| |\ \ \ \ | | | |_|/ | | |/| |
| * | | | Merge branch '4.7' of ../qt into 4.7David Boddie2011-01-13170-209/+321
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/src/declarative/qdeclarativeintro.qdoc doc/src/declarative/qdeclarativereference.qdoc doc/src/snippets/declarative/focus/focusColumn.qml tools/qdoc3/apigenerator.cpp tools/qdoc3/apigenerator.h tools/qdoc3/archiveextractor.cpp tools/qdoc3/bookgenerator.cpp tools/qdoc3/bookgenerator.h tools/qdoc3/ccodeparser.cpp tools/qdoc3/command.cpp tools/qdoc3/command.h tools/qdoc3/cpptoqsconverter.cpp tools/qdoc3/dcfsection.cpp tools/qdoc3/dcfsection.h tools/qdoc3/jambiapiparser.cpp tools/qdoc3/jambiapiparser.h tools/qdoc3/javacodemarker.cpp tools/qdoc3/javacodemarker.h tools/qdoc3/javadocgenerator.cpp tools/qdoc3/javadocgenerator.h tools/qdoc3/linguistgenerator.cpp tools/qdoc3/linguistgenerator.h tools/qdoc3/loutgenerator.h tools/qdoc3/mangenerator.cpp tools/qdoc3/mangenerator.h tools/qdoc3/polyarchiveextractor.cpp tools/qdoc3/polyarchiveextractor.h tools/qdoc3/polyuncompressor.cpp tools/qdoc3/polyuncompressor.h tools/qdoc3/qsakernelparser.cpp tools/qdoc3/qscodemarker.cpp tools/qdoc3/qscodemarker.h tools/qdoc3/qscodeparser.cpp tools/qdoc3/qscodeparser.h tools/qdoc3/sgmlgenerator.cpp tools/qdoc3/sgmlgenerator.h tools/qdoc3/test/qt-html-templates.qdocconf tools/qdoc3/uncompressor.cpp tools/qdoc3/webxmlgenerator.cpp tools/qdoc3/webxmlgenerator.h
| * \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-12-162-10/+25
| |\ \ \ \ \
| * \ \ \ \ \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-doc-team into 4.7David Boddie2010-12-161-11/+0
| |\ \ \ \ \ \
| * \ \ \ \ \ \ Merge branch '4.7' into qdoc-simplifiedDavid Boddie2010-12-154-27/+29
| |\ \ \ \ \ \ \
| * \ \ \ \ \ \ \ Merge branch 'qdoc-simplified' into mimir-simplifiedDavid Boddie2010-12-142-0/+12
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: tools/qdoc3/atom.h tools/qdoc3/qdoc3.pro
| * \ \ \ \ \ \ \ \ Merge branch 'qdoc-simplified' into mimir-simplifiedDavid Boddie2010-12-0716-1059/+410
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/src/platforms/compiler-notes.qdoc tools/qdoc3/ditaxmlgenerator.cpp tools/qdoc3/ditaxmlgenerator.h tools/qdoc3/htmlgenerator.cpp tools/qdoc3/htmlgenerator.h tools/qdoc3/node.cpp tools/qdoc3/pagegenerator.h
| * | | | | | | | | | doc: Moved some table headers ahead of the rows.Martin Smith2010-10-222-6/+6
| | | | | | | | | | |
| * | | | | | | | | | doc: Moved some table headers before the rows.Martin Smith2010-10-201-9/+9
| | | | | | | | | | |
| * | | | | | | | | | doc: Moved some table headers to be before the rows.Martin Smith2010-10-201-6/+6
| | | | | | | | | | |
| * | | | | | | | | | Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-131-4/+2
| |\ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-121-3/+5
| |\ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-081-0/+1
| |\ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-071-22/+41
| |\ \ \ \ \ \ \ \ \ \ \ \ \
* | | | | | | | | | | | | | | Add internal function for releasing cached GPU resources.Jani Hautakangas2011-03-012-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-17849 Reviewed-by: Samuel Rødal
* | | | | | | | | | | | | | | Changed QPixmap VG backend to use CFbsBitmap on Symbian.Laszlo Agocs2011-02-281-2/+19
| |_|_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similarly to QS60PixmapData, that is used on raster, QVGPixmapData is also backed by a CFbsBitmap from now on (at least when it makes sense to do so). This allows copy-less bitmap handle duplication in from- and toSymbianCFbsBitmap() in case of certain image formats, reduces local heap usage and improves performance with the s60 style due to a reduced number of pixel data copies. Task-number: QT-2505 Reviewed-by: Jason Barron Reviewed-by: Jani Hautakangas
* | | | | | | | | | | | | | Fix for ARMV6 drawhelper blendingJani Hautakangas2011-02-141-2/+2
| |_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Asm code used wrong source register when doing constant alpha blending. Task-number: QTBUG-16008 Reviewed-by: TRUSTME