summaryrefslogtreecommitdiffstats
path: root/src/openvg
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.7Alexis Menard2010-03-251-9/+4
|\ | | | | | | | | | | | | Conflicts: mkspecs/common/symbian/symbian.conf qmake/generators/symbian/symmake.cpp src/3rdparty/webkit/WebCore/WebCore.pro
| * Fix #ifdef logic for Symbian conversion functions in QVGPixmapData.Jason Barron2010-03-221-9/+4
| | | | | | | | | | | | | | | | | | | | The previous #ifdef logic had the entire body of fromNativeType() and toNativeType() #ifdef'ed out meaning that the OpenVG graphics system could not convert CFbsBitmap instances to VGImage instances. This was obviously incorrect because this code has no dependancy on RSgImage (or EGL) and should therefore be outside of the #ifdef. Reviewed-by: TrustMe
* | Merge branch '4.6-s60' into 4.7-s60axis2010-03-222-34/+33
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure.exe mkspecs/common/symbian/symbian.conf src/gui/graphicsview/qgraphicswidget.h src/gui/kernel/qapplication.cpp src/gui/text/qtextlayout.cpp src/openvg/qpixmapdata_vg.cpp src/s60installs/s60installs.pro tools/runonphone/main.cpp tools/runonphone/serenum_unix.cpp qtextlayout.cpp fixed up together with Eskil. Kept the configure.exe from 4.7 without recompile.
| * Change fromSymbianRSgImage() to use the newer version of RSgImageJason Barron2010-03-191-34/+31
| | | | | | | | | | | | | | | | | | Symbian have changed the implementation of RSgImage to be more lightweight and have moved it to a new library. This patch changes Qt's usage of RSgImage to the new version and fixes some minor code style issues. Reviewed-by: Aleksandar Sasha Babic
| * Build OpenVG on Symbian with QVG_RECREATE_ON_SIZE_CHANGE.Jason Barron2010-03-181-0/+2
| | | | | | | | | | | | | | | | | | If the size of the window changes, then there is a chance that this will require a re-allocation so it's better to handle the re-allocation here when the window size has changed because we don't want the error to occur in eglSwapBuffers. Reviewed-by: TrustMe
* | Fix compilation of OpenVG.Jason Barron2010-03-182-17/+17
| | | | | | | | | | | | As simple as QEglContext::display -> QEgl::display. Reviewed-by: Tom Cooksey
* | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-s60axis2010-03-182-21/+17
|\ \ | |/ | | | | | | Conflicts: qmake/generators/symbian/symmake_abld.cpp
| * Fix linking issues of QtOpenVG.dllAlessandro Portale2010-03-162-21/+17
| | | | | | | | | | | | | | | | QEglContext::display() is a static function, and exported as such. qpixmapdata_vg.cpp and qwindowsurface_vgegl.cpp referenced it as a non- static function which made the linking of QtOpenVG.dll fail. Reviewed-by: Jason Barron
* | Merge remote branch 'origin/4.6' into qt-4.7-from-4.6Thiago Macieira2010-03-151-1/+2
|\ \ | |/ | | | | | | Conflicts: src/gui/styles/qs60style_s60.cpp
| * Added check for null pointer in qt_vg_unregister_pixmap.Miikka Heikkinen2010-03-101-1/+2
| | | | | | | | | | | | | | | | | | | | The method qt_vg_unregister_pixmap is sometimes called when the QVGSharedContext is already destroyed. Do not try to access it if it is null. Part of QtP delta reduction effort. Reviewed-by: Jason Barron
* | Fix compilation of OpenVG paint engine with OpenVG 1.0Rhys Weatherley2010-03-141-0/+9
| | | | | | | | Task-number: QTBUG-9006
* | Renamed QPainter::Fragment/Hint -> QPainter::PixmapFragment/HintTrond Kjernåsen2010-03-092-3/+4
| | | | | | | | Reviewed-by: Kim
* | Merge remote branch 'origin/4.6' into qt-4.7-from-4.6Rohan McGovern2010-03-061-76/+72
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure.exe examples/multimedia/audioinput/audioinput.cpp src/corelib/io/qfsfileengine.cpp src/gui/egl/qegl_wince.cpp src/gui/egl/qeglproperties.cpp src/gui/egl/qeglproperties_p.h src/gui/embedded/directfb.pri src/gui/kernel/qapplication_win.cpp src/gui/painting/qdrawutil.cpp src/opengl/qgl_p.h src/sql/drivers/odbc/qsql_odbc.cpp src/sql/drivers/odbc/qsql_odbc.h tests/auto/auto.pro tests/auto/qgl/tst_qgl.cpp translations/assistant_adp_ru.ts
| * Image drawing in OpenVG was off by 0.5 of a pixelRhys Weatherley2010-03-051-9/+14
| | | | | | | | | | | | | | | | | | Path transforms need to be adjusted by 0.5 for the difference in OpenVG and Qt co-ordinate systems. Image transforms do not need to be adjusted because OpenVG implicitly adjusts by 0.5. Task-number: QT-2999 Reviewed-by: Sarah Smith
| * When using OpenVG alpha mask, turn off scissor-as-maskRhys Weatherley2010-03-051-0/+1
| | | | | | | | | | Task-number: QT-3033 Reviewed-by: Julian de Bhal
| * Remove vgClearPath() change to OpenVG paint engineRhys Weatherley2010-03-031-67/+57
| | | | | | | | | | | | | | | | | | Upon further investigation, vgClearPath() doesn't help as much on target devices as just making a new path. Revert "Improve performance of VGPath creation by reusing the same path" This reverts commit 8597e03495f54614e53c6063f1f13077a08109fd.
* | Move qegl_p.h -> qeglcontext_p.h and add a new qegl_p.hTom Cooksey2010-03-024-4/+4
| | | | | | | | | | | | | | | | This puts the QEgl namespace in a single file which can be used by both qeglcontext and qeglproperties. Files which need QEglContext should now include qeglcontext_p.h. Reviewed-By: Aleksandar Sasha Babic
* | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into master-s60axis2010-02-261-59/+69
|\ \ | |/ | | | | | | | | Conflicts: qmake/generators/symbian/initprojectdeploy_symbian.cpp qmake/generators/symbian/symmake_abld.h
| * Improve performance of VGPath creation by reusing the same pathRhys Weatherley2010-02-221-57/+67
| | | | | | | | | | | | | | | | The vgClearPath() function can be used to clear a path for reuse more efficiently than destroying the path and creating a new one. Task-number: QT-2974 Reviewed-by: Daniel Pope
| * Don't use vgClear() for semi-transparent brushes.Jason Barron2010-02-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the brush is not totally opaque we should not use vgClear() at this point because vgClear() does not support blending. Instead it writes the values directly into the surface which clobbers any existing content. The bug exhibits itself when a child widget fills itself with any transparent color. Instead of blending with the parent widget's content, it writes the semi-transparent color directly to the surface, overwriting the parent content and leaving the surface in a somewhat undefined state because the alpha channel is not honoured unless Qt::WA_TranslucentBackground is set. Task-number: QTBUG-8007 Reviewed-by: Rhys Weatherley
* | Fix compilation error in openVGOlivier Goffart2010-02-231-1/+1
| | | | | | | | After 58533cbc7322c4f821f2
* | Made the qDrawPixmaps() API public (with modifications).Trond Kjernåsen2010-02-232-13/+13
| | | | | | | | | | | | | | | | | | QPainter has now gotten a drawPixmapFragments() function together with a Fragment class that describes how each pixmap fragment is supposed to be drawn. Reviewed-by: Gunnar Reviewed-by: Samuel
* | Merge remote branch 'origin/master' into qt-master-from-4.6Thiago Macieira2010-02-202-30/+47
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: configure.exe src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp src/opengl/qgl.cpp
| * \ Merge branch 'master' of scm.dev.troll.no:qt/oslo-staging-2 into qstatictext-4.7Eskil Abrahamsen Blomfeldt2010-02-152-22/+11
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp tests/auto/qlineedit/tst_qlineedit.cpp Merge branch 'master' of scm.dev.troll.no:qt/oslo-staging-2 into qstatictext-4.7 Conflicts: src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp tests/auto/qlineedit/tst_qlineedit.cpp Merge branch 'master' of scm.dev.troll.no:qt/oslo-staging-2 into qstatictext-4.7 Conflicts: src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp tests/auto/qlineedit/tst_qlineedit.cpp
| * | | Make QStaticText public API againEskil Abrahamsen Blomfeldt2010-02-101-1/+1
| | | | | | | | | | | | | | | | | | | | QStaticText was previously made private API to support inclusion in Qt 4.6.x. This change turns it back into public API for Qt 4.7.0.
| * | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Eskil Abrahamsen Blomfeldt2010-02-042-13/+157
| |\ \ \ | | | | | | | | | | | | | | | qstatictext-4.6
| * | | | Make QStaticText private APIEskil Abrahamsen Blomfeldt2010-02-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turns QStaticText into private API in preparation for Qt 4.6.x. The related functions in QPainter are marked as internal in the docs. There are already internal functions in QPainter, so this seemed like a reasonable solution. Since the functions require QStaticText they will not be accessible to anyone who does not include private API.
| * | | | Compile for S60Eskil Abrahamsen Blomfeldt2010-01-262-14/+19
| | | | | | | | | | | | | | | | | | | | Make the OpenVG code for QStaticText compile.
| * | | | Attempt at making OpenVG work with QStaticTextEskil Abrahamsen Blomfeldt2010-01-262-25/+37
| | | | | | | | | | | | | | | | | | | | | | | | | Done in the blind, so I don't expect this to compile, but it's to make it easier to get it over into a Symbian-ready repository.
* | | | | Merge branch '4.6' into qt-master-from-4.6Thiago Macieira2010-02-171-4/+0
|\ \ \ \ \ | |_|_|/ / |/| | | / | | |_|/ | |/| | | | | | | | | | Conflicts: mkspecs/common/symbian/symbian.conf src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp tools/assistant/tools/assistant/helpviewer.cpp
| * | | Cleanup QEglContext & EGLDisplaysTom Cooksey2010-02-121-4/+0
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | This basicaly replaces display(), openDisplay() & defaultDisplay() methods with a single display() and nativeDisplay(), the latter being implemented in the platform-specific files and everything else being cross-platform code. Reviewed-By: Trond
* | | Merge remote branch 'qt/4.6' into qt-master-from-4.6Qt Continuous Integration System2010-02-091-11/+65
|\ \ \ | |/ / | | | | | | | | | | | | Conflicts: src/gui/kernel/qcocoapanel_mac.mm src/gui/kernel/qcocoasharedwindowmethods_mac_p.h
| * | Use OpenVG scissor on 90/180/270 rotations and simple clips.Rhys Weatherley2010-02-041-7/+23
| | | | | | | | | | | | | | | Task-number: QTBUG-7864 Reviewed-by: Sarah Smith
| * | Optimize single-rect IntersectClip in OpenVG using the scissorRhys Weatherley2010-02-041-4/+42
| | | | | | | | | | | | | | | Task-number: QTBUG-7791 Reviewed-by: Sarah Smith
* | | Replace qt_vg_imageBits() with constBits() in the OpenVG codeRhys Weatherley2010-02-082-22/+11
|/ / | | | | | | Reviewed-by: Sarah Smith
* | Implementation for QVGPixmapData to/fromSymbianCFbsBitmapJani Hautakangas2010-02-031-2/+92
|/ | | | functions.
* Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-01-0715-15/+15
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.6-integration * '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-1: QIODevice: Fix readAll() Temporary hackiesh solution to prevent BOM in the xml data. Fixed qxmlstream autotest when using shadow builds. Attempt at readding the capital P headers for Phonon Remove special Phonon processing from syncqt. Use the lowercase/shortname.h headers for Phonon includes Fixes a crash when setting focus on a widget with a focus proxy. Update copyright year to 2010 doc: Clarified activeSubControls and subControls. Remove warning "statement with no effect" doc: Clarified that .lnk files are System files on Windows.
| * Update copyright year to 2010Jason McDonald2010-01-0615-15/+15
| | | | | | | | Reviewed-by: Trust Me
* | Avoid deep QImage copies in the OpenVG paint engineRhys Weatherley2010-01-042-9/+12
| | | | | | | | | | Task-number: QTBUG-7015 Reviewed-by: Daniel Pope
* | Reset the OpenVG scissor after a native painting call-outRhys Weatherley2010-01-041-2/+11
|/ | | | | Task-number: QTBUG-7051 Reviewed-by: Daniel Pope
* Add an image allocation pool to the OpenVG paint engineRhys Weatherley2009-12-158-53/+479
| | | | | | | | | | | | | Some OpenVG GPU's have limitations on the amount of memory available to create VGImage's. When the memory runs out, vgCreateImage() will fail. This change introduces QVGImagePool, which keeps track of all QVGPixmapData image allocations and ejects least-recently-used pixmaps when GPU memory is exhausted. Task-number: QT-2554 Reviewed-by: trustme
* Recreate VGImage properly in out of memory caseRhys Weatherley2009-12-091-0/+8
| | | | | | | | | If vgCreateImage() runs out of memory, then the drawPixmap() will fail. But previously, it would also prevent future attempts to call vgImageSubData() to populate the data when memory was present. Task-number: QTBUG-6639 Reviewed-by: Sarah Smith
* Merge oslo-staging-2/4.6 into upstream/4.6Olivier Goffart2009-12-094-29/+169
|\
| * Automatically destroy VG pixmaps when the last window surface goes awayRhys Weatherley2009-12-064-29/+169
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Under S60, Qt will destroy the window surfaces of an application that goes into the background, which frees up EGL surface objects. But the VGImage's for pixmaps, and the EGLContext, were still using GPU memory. This change keeps track of the number of widgets / window surfaces that are in use and then calls hibernate() on all QVGPixmapData objects when it goes to zero. Once all the VGImage's are destroyed, the EGLContext should also be destroyed. Task-number: QT-2555 Reviewed-by: Sarah Smith
* | Assign Symbian UID to QtOpenVg moduleIain2009-12-031-0/+1
|/ | | | Reviewed-by: TrustMe
* Fix infinite recursion in OpenVG scissor-only clippingRhys Weatherley2009-11-271-12/+0
| | | | | | | | | | | When a complex transform was set, clip(QVectorPath) would call clip(QRect) with the control point rect, which would then turn around and say "transform is complex, call clip(QVectorPath)", causing an infinite loop until stack crash. Remove the "fall back to vector path" case as it isn't useful for scissor-only clipping. Doesn't affect mask-based clipping. Reviewed-by: Sarah Smith
* QT_VG_EGL_CONFIG env var to specify explicit EGL configs for OpenVGRhys Weatherley2009-11-261-0/+36
| | | | Reviewed-by: Sarah Smith
* Don't ask for pbuffers when searching for an OpenVG configurationRhys Weatherley2009-11-261-3/+3
| | | | Reviewed-by: Sarah Smith
* Make QVGCompositionHelper::blitWindow() more genericRhys Weatherley2009-11-252-7/+4
| | | | | | | | | | Previously, the composition helper would use the VG window surface private structure to get the VGImage to blit. This change passes the VGImage and size values in directly so that the composition helper can also be used to blit GL surfaces that have been converted into a VGImage via an EGLImage. Reviewed-by: Tom Cooksey
* Support semi-transparent surfaces in the OpenVG graphics systemRhys Weatherley2009-11-223-3/+41
| | | | | Task-number: QT-2026 Reviewed-by: Jason Barron