summaryrefslogtreecommitdiffstats
path: root/tests/auto/qgl
Commit message (Collapse)AuthorAgeFilesLines
* Make isSharing() reset to false when context no longer sharingRhys Weatherley2009-11-151-0/+5
| | | | | | | | | | The documentation for QGLContext::isSharing() indicates that the function returns true only when the context is sharing. However, previously the sharing flag would stay on if the context was created as sharing but is no longer sharing. Task-number: QTBUG-5578 Reviewed-by: Sarah Smith
* Add a simpler FBO autotest which just uses glClear()Tom Cooksey2009-11-091-0/+31
| | | | If this autotest doesn't pass, FBOs are really broken.
* Mark both the new and original EGL contexts as sharingRhys Weatherley2009-11-091-0/+1
| | | | | | | If we succeed in creating a shared context, then mark the original as shared as well. Reviewed-by: Sarah Smith
* Set frameless window hints on QGL test windows under QWSRhys Weatherley2009-11-091-0/+15
| | | | | | | | | | | | | | QWS combines the window title bar and the top-level widget into one window surface, which causes problems when the top-level widget is a QGLWidget: the raw GL surface contents are not the same as on other platforms where only the top-level widget contents are included in the window surface. This change sets Qt::FramelessWindowHint on QWS systems on widgets where we need to read back the top-level widget for comparison against a reference image. Reviewed-by: Sarah Smith
* Make qgl autotests more stable & passing in test farmTom Cooksey2009-11-061-6/+18
| | | | | | | | | There were problems with false-failures due to the test farm's GL implementation having off-by-one pixel errors. To fix this, we don't compare every pixel but rather sample pixels in a grid pattern which avoids boundries. Reviewed-By: Samuel
* Enable & fix qgl autotests on 16-bpp systemsTom Cooksey2009-11-061-49/+111
| | | | | | | | | Introduce a fuzzy pixel and image compare which changes it's allowed fuzz based on the system's color depth. If the compared images are different, the autotests will also save the two images to the current directory for comparison. Reviewed-By: Samuel
* Removed the FBO stacking behaviour and the test attached to it.Trond Kjernåsen2009-11-051-105/+0
| | | | | | | Having this behaviour in QGLFrameBufferObject complicates alot of things and isn't really necessary. Reviewed-by: Tom Cooksey
* Fix some test failures in the qgl test on 16 bit servers.Trond Kjernåsen2009-10-301-0/+22
| | | | | | | These tests are designed to run in 24 or 32 bit mode, and won't work unless they do.. Reviewed-by: Samuel
* Add unit tests for QGLContextResourceRhys Weatherley2009-10-041-1/+49
| | | | Reviewed-by: trustme
* QGLContext::areSharing() to check for GL share relationshipsRhys Weatherley2009-10-011-21/+21
| | | | Reviewed-by: Samuel
* Add unit tests for QGLShareRegisterRhys Weatherley2009-10-011-0/+122
| | | | Reviewed-by: Sarah Smith
* Make QGLFramebufferObject crash-proof if QGLContext destroyed firstRhys Weatherley2009-10-011-0/+28
| | | | | | | | | | | | | | | | Sometimes it isn't possible to arrange for the QGLFramebufferObject to be destroyed before the QGLContext group in which it was created. Especially during application shutdown or in applications with multiple shared contexts. This change modifies QGLFramebufferObject to use QGLSharedResourceGuard, which ensures that when the last QGLContext in a sharing group is destroyed, any remaining FBO's will revert to !isValid(). It is now safe to destroy the context before the FBO, or the FBO before the context. Unit test included. Reviewed-by: Sarah Smith
* Optimized GL2 engine to use scissor clipping more aggressively.Samuel Rødal2009-09-211-1/+183
| | | | | | | | | | | | | | | | There's no reason to stop using a scissor clip when a more complex clip is set. Instead, we can use a combination of scissoring and depth clipping to represent the final clip. When intersecting with a new clip path, if the clip path is a rectangle we simply intersect it against the scissor clip, and otherwise we intersect its bounding rect against the scissor clip and write the actual path to the depth buffer. The patch simplifies the logic in clip() quite a bit, except in the UniteClip case in which we don't care about performance anyways. It also fixes a bug which could cause rendering errors if the stencil buffer contains junk before painting. Reviewed-by: Gunnar Sletta
* Skip the multipleFBOInterleavedRendering autotest on when using OpenGL 1Tom Cooksey2009-09-171-0/+5
| | | | | | | Interleaved rendering to GL targets is going to be flaky with the GL1 engine and wont be supported. Reviewed-by: Trustme
* Fix tst_QGL::openGLVersionCheck() autotest on OpenGL ES platformsTom Cooksey2009-09-161-1/+9
| | | | Reviewed-by: Trustme
* Autotest preventing gl from crashing on shutdown with dangling contextsGunnar Sletta2009-09-141-0/+13
|
* Add an autotest for QGLWidget::renderPixmap()Tom Cooksey2009-09-101-0/+30
|
* Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | Reviewed-by: Trust Me
* Add operator== and != to QGLFramebufferObjectFormatRhys Weatherley2009-09-081-0/+49
| | | | Reviewed-by: Sarah Smith
* Sample buffers are on by default for OpenGL/ES 2.0, off for others.Rhys Weatherley2009-09-071-0/+6
| | | | Reviewed-by: trustme
* Unit tests for QGLFormat option constructorRhys Weatherley2009-09-071-0/+10
| | | | Reviewed-by: trustme
* Unit tests for QGLFormat::defaultFormat and ::defaultOverlayFormat()Rhys Weatherley2009-09-071-0/+41
| | | | Reviewed-by: trustme
* Unit tests for QGLFramebufferObjectFormatRhys Weatherley2009-09-071-0/+56
| | | | Reviewed-by: trustme
* Unit tests for QGLFormat copy constructor and operator=Rhys Weatherley2009-09-061-0/+14
| | | | Reviewed-by: trustme
* Update QGLFormat::operator== to include all fields.Rhys Weatherley2009-09-061-0/+83
| | | | | | | The documentation says "Returns true if all the options of the two QGLFormats are equal", but that's not what it was doing. Reviewed-by: Sarah Smith
* Fixed compilation of tst_qgl.Samuel Rødal2009-09-031-4/+8
| | | | | | | | Commit 66961012e6eb494541bdc166e21f7af55eef73a5 changed the QGLFramebufferObjectFormat API, so the test needed to be updated as well. Reviewed-by: Kim
* Add autotests for FBO stacking and interleaved paintingTom Cooksey2009-09-021-0/+211
| | | | Reviewed-By: Samuel
* Autotest which checks you can paint to an fbo in a gl widget's p.e.Tom Cooksey2009-09-011-0/+55
| | | | | | | | The test mimics examples/opengl/framebufferobjects in that it begins a QPainter on a QGLWidget in it's paint event, then begins a second QPainter on a QGLFramebufferObject, leaving 2 painters active at the same time. When the FBO's painter is ended, GL rendering should be re-targetted at the QGLWidget automatically.
* An an autotest to check QPainter rendering to an FBO worksTom Cooksey2009-09-011-0/+63
| | | | | | | The test also checks that when we ask for CombinedDepthStencil, that's what we get. Reviewed-by: Samuel
* Merge branch '4.5' into 4.6Thiago Macieira2009-08-311-13/+13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: demos/boxes/glshaders.cpp demos/boxes/vector.h demos/embedded/fluidlauncher/pictureflow.cpp demos/embedded/fluidlauncher/pictureflow.h doc/src/desktop-integration.qdoc doc/src/distributingqt.qdoc doc/src/examples-overview.qdoc doc/src/examples.qdoc doc/src/frameworks-technologies/dbus-adaptors.qdoc doc/src/geometry.qdoc doc/src/groups.qdoc doc/src/objecttrees.qdoc doc/src/platform-notes.qdoc doc/src/plugins-howto.qdoc doc/src/qt3support.qdoc doc/src/qtdbus.qdoc doc/src/qtdesigner.qdoc doc/src/qtgui.qdoc doc/src/qtmain.qdoc doc/src/qtopengl.qdoc doc/src/qtsvg.qdoc doc/src/qtuiloader.qdoc doc/src/qundo.qdoc doc/src/richtext.qdoc doc/src/topics.qdoc src/corelib/tools/qdumper.cpp src/gui/embedded/qkbdpc101_qws.cpp src/gui/embedded/qkbdsl5000_qws.cpp src/gui/embedded/qkbdusb_qws.cpp src/gui/embedded/qkbdvr41xx_qws.cpp src/gui/embedded/qkbdyopy_qws.cpp src/gui/embedded/qmousebus_qws.cpp src/gui/embedded/qmousevr41xx_qws.cpp src/gui/embedded/qmouseyopy_qws.cpp src/gui/painting/qpaintengine_d3d.cpp src/gui/painting/qwindowsurface_d3d.cpp src/opengl/gl2paintengineex/glgc_shader_source.h src/opengl/gl2paintengineex/qglpexshadermanager.cpp src/opengl/gl2paintengineex/qglpexshadermanager_p.h src/opengl/gl2paintengineex/qglshader.cpp src/opengl/gl2paintengineex/qglshader_p.h src/opengl/util/fragmentprograms_p.h src/plugins/kbddrivers/linuxis/linuxiskbdhandler.cpp src/plugins/mousedrivers/linuxis/linuxismousehandler.cpp src/script/parser/qscript.g src/script/qscriptarray_p.h src/script/qscriptasm_p.h src/script/qscriptbuffer_p.h src/script/qscriptclass.cpp src/script/qscriptclassdata_p.h src/script/qscriptcompiler.cpp src/script/qscriptcompiler_p.h src/script/qscriptcontext.cpp src/script/qscriptcontext_p.cpp src/script/qscriptcontext_p.h src/script/qscriptcontextfwd_p.h src/script/qscriptecmaarray.cpp src/script/qscriptecmaarray_p.h src/script/qscriptecmaboolean.cpp src/script/qscriptecmacore.cpp src/script/qscriptecmadate.cpp src/script/qscriptecmadate_p.h src/script/qscriptecmaerror.cpp src/script/qscriptecmaerror_p.h src/script/qscriptecmafunction.cpp src/script/qscriptecmafunction_p.h src/script/qscriptecmaglobal.cpp src/script/qscriptecmaglobal_p.h src/script/qscriptecmamath.cpp src/script/qscriptecmamath_p.h src/script/qscriptecmanumber.cpp src/script/qscriptecmanumber_p.h src/script/qscriptecmaobject.cpp src/script/qscriptecmaobject_p.h src/script/qscriptecmaregexp.cpp src/script/qscriptecmaregexp_p.h src/script/qscriptecmastring.cpp src/script/qscriptecmastring_p.h src/script/qscriptengine.cpp src/script/qscriptengine_p.cpp src/script/qscriptengine_p.h src/script/qscriptenginefwd_p.h src/script/qscriptextenumeration.cpp src/script/qscriptextenumeration_p.h src/script/qscriptextqobject.cpp src/script/qscriptextqobject_p.h src/script/qscriptextvariant.cpp src/script/qscriptfunction.cpp src/script/qscriptfunction_p.h src/script/qscriptgc_p.h src/script/qscriptmember_p.h src/script/qscriptobject_p.h src/script/qscriptprettypretty.cpp src/script/qscriptprettypretty_p.h src/script/qscriptvalue.cpp src/script/qscriptvalueimpl.cpp src/script/qscriptvalueimpl_p.h src/script/qscriptvalueimplfwd_p.h src/script/qscriptvalueiteratorimpl.cpp src/script/qscriptxmlgenerator.cpp src/script/qscriptxmlgenerator_p.h tests/auto/linguist/lupdate/testdata/recursivescan/project.ui tests/auto/linguist/lupdate/testdata/recursivescan/sub/finddialog.cpp tests/auto/qkeyevent/tst_qkeyevent.cpp tools/linguist/shared/cpp.cpp
| * Update tech preview license header.Jason McDonald2009-08-311-13/+13
| | | | | | | | Reviewed-by: Trust Me
| * Update license headers.Jason McDonald2009-08-111-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Add an autotest to check QPainter rendering to a QGLPixelBuffer worksTom Cooksey2009-08-281-0/+33
| | | | | | | | Reviewed-by: Trustme
* | Fix QtOpenGL autotestTom Cooksey2009-08-281-5/+5
| | | | | | | | | | | | | | The GL2 paint engine now has it's own class ID. This patch also reduces the excessive 2000ms delays to 200ms. :-) Reviewed-by: Trustme
* | Add an autotest to check reparenting a QGLWidget worksTom Cooksey2009-08-271-0/+68
| | | | | | | | | | | | | | If this is broken it will usually seg-fault, but there's a few checks in there just to make sure. Reviewed-by: Samuel
* | Add an autotest to check rendering to a QGLWidget worksTom Cooksey2009-08-271-0/+46
| | | | | | | | Reviewed-by: Samuel
* | Update contact URL in license headers.Jason McDonald2009-08-121-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Unit tests and bug fixes for QGLColormapRhys Weatherley2009-07-301-0/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | QGLColormap::setEntry() was inserting entries instead of replacing them; QGLColormap::setEntries() had an incorrect assert and weird behaviour for the "base". The documentation for QGLColormap::isEmpty() has been updated to reflect that it will also report empty if the colormap has not been set on a QGLWidget even if it has entries in it. This behaviour is required by existing code. Reviewed-by: Rohan McGovern
* | Increase coverage of QGLFormat unit tests.Rhys Weatherley2009-07-301-19/+190
| | | | | | | | Reviewed-by: trustme
* | Disable private unit tests when Qt is configured withoutRohan McGovern2009-07-092-21/+5
|/ | | | | | | | | | | | -developer-build, part 2. Some autotests use private (unexported) code, either because they're testing private classes or because that's the easiest way to test the public classes. Configuring Qt with `-developer-build' is needed for these tests. This commit fixes the tests so configuring without `-developer-build' only builds the tests which strictly use public API.
* Update license headers as requested by the marketing department.Jason McDonald2009-06-161-2/+2
| | | | Reviewed-by: Trust Me
* Stabilize auto test added in 8ebe882b077fffedc3ff80fb80d2e181d5e56ab8Bjoern Erik Nilsen2009-04-271-0/+4
| | | | | QWidget::repaint() is not immediate on the Mac; it has to go through the event loop.
* Fixes wrong QPaintEvent::region() in QGLWidget::paintEvent.Bjoern Erik Nilsen2009-04-271-0/+61
| | | | | | | | | | | | | | QGLWidget does not support partial updates unless the context is single buffered and auto-fill background is disabled. The problem was that QPaintEvent::region() returned the requested update region without taking into account the limitation of QGLWidget. If QGLWidget doesn't support partial updates, it means everything has to be updated, and QPaintEvent::region() must return the whole widget rect. Auto test included. Task-number: 241785 Reviewed-by: Trond
* Long live Qt 4.5!Lars Knoll2009-03-233-0/+419