summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix crash of QtScript on Mac OS XSimon Hausmann2009-09-091-2/+6
| | | | | | | | | When compiling on 10.4 but running on 10.5 the flags passed to vm_map cause it to crash. For now fall back to the use of mmap() as allocator instead. Reviewed-by: Kent Hansen
* Added a standard copyright header to files generated by rcc.Martin Smith2009-09-091-0/+40
|
* Add missing \since 4.6 in the QMargins documentationOlivier Goffart2009-09-091-0/+1
|
* QMenubar could popup a menu when undocking a toolbarThierry Bastian2009-09-091-5/+6
| | | | | | | | | This is due to the fact that it receives a mousemoveevent. But as it doesn't receive a mousepress event, we can detect whether it should popup or not. Task-number: 260873 Reviewed-by: prasanth
* Fix unresolved reference to q_sk_free with openssl 1.0Bernhard Rosenkraenzer2009-09-093-3/+10
| | | | | | | Previous fix introduced an unresolved reference in the lib Merge-request: 1409 Reviewed-by: Peter Hartmann <peter.hartmann@trolltech.com>
* Fix build with openssl 1.0.0 betasBernhard Rosenkraenzer2009-09-091-1/+2
| | | | | | | | | The recent addition of sk_pop_free to src/network/ssl/qsslsocket_openssl_symbols.cpp broke the build with openssl 1.0.0 betas; this commit fixes it Merge-request: 1409 Reviewed-by: Peter Hartmann <peter.hartmann@trolltech.com>
* Fix a possible crash when deleting the QMainWindow layoutThierry Bastian2009-09-091-1/+2
| | | | | | | | It can happen that an item is still a gap and could then be deleted twice. We now check that to avoid double deletion. Note: it doesn't fix the bug but avoids the crash. Task-number: 260873
* Unable to access file means QFile::PermissionsErrorJoão Abecasis2009-09-091-1/+1
| | | | | | | Relates to changes introduced in 6d87a01f2d3108bbee5b9995f20edfc26a01cd57. Reviewed-by: Marius Storm-Olsen
* Fixed all but one of the failures in the headers autotest.Martin Smith2009-09-091-1/+1
| | | | The resource compiler still generates files that don't have the LPGL header.
* Getting text widget OOM tests working in Symbianmread2009-09-091-1/+1
| | | | | | | | | | | | | | There is one actual bug fix, checking for null pointer return. The exception safety test code now initialises the fonts system. The S60 fonts system does not survive OOM testing without this. Otherwise some duplicate tests are removed and code tidied up. Reviewed-by: Liang Qi Reviewed-by: Harald Fernengel Reviewed-by: Alessandro Portale
* Merge branch '4.6' of git@scm.dev.troll.no:qt/qt into 4.6Janne Anttila2009-09-096-18/+47
|\
| * Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Gunnar Sletta2009-09-091-1/+2
| |\
| | * Fix crash in QtScript with exceptions.Simon Hausmann2009-09-091-1/+2
| | | | | | | | | | | | | | | | | | | | | When trying to determine if there is a handler for an exception, determine the returnPC for the call frame traversal frmo the corrent CallFrame object. Reviewed-by: Kent Hansen
| * | Made GL1 engine have proper y-rotation since qgldrawable refactorGunnar Sletta2009-09-092-10/+23
| | | | | | | | | | | | Reviewed-by: Tom
| * | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Gunnar Sletta2009-09-093423-14629/+15335
| |\ \ | | |/ | | | | | | | | | | | | | | | Conflicts: src/opengl/qgl.cpp src/opengl/qgl_p.h src/opengl/qpaintengine_opengl.cpp
| | * Fix build breakage on Mac CarbonTom Cooksey2009-09-091-1/+1
| | | | | | | | | | | | | | | | | | | | | A new QGLFramebufferObject constructor was added after the QGLPaintDevice was branched which therefore didn't get patched. Reviewed-by: Trustme
| | * Remove duplicate setFBO calls introduced by QGLPaintDevice mergeTom Cooksey2009-09-091-2/+0
| | | | | | | | | | | | Reviewed-by: Trustme
| * | Fixed y-inversion of pixmap drawing on gl graphics systemGunnar Sletta2009-09-095-12/+29
| | | | | | | | | | | | Reviewed-by: Trond
* | | Resolved ordinals for Qt/4.6 added OpenSSL symbols for Symbian OS.Janne Anttila2009-09-091-0/+2
| |/ |/| | | | | | | This fix gets rid of warnings/errors such as: QWARN : cannot call unresolved function sk_pop_free
* | Merge branch '4.6' of git@scm.dev.troll.no:qt/qt into 4.6Janne Anttila2009-09-093411-14416/+14918
|\ \
| * | Fix the bactkrace in the QScript DebuggerOlivier Goffart2009-09-093-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch remove the 'fake' context that appears in the debugger backtrace when there is a break point in the global context. This problem never appeared in the tests because the QScriptContext::backtrace has always at least two items in the backtrace as it needs the native 'bt' function to be called. Changed QScriptEnginePrivate::contextForFrame to skip the fake frame (instead of QScriptContext::parentContext). So we never have a QScriptContext pointing to that frame. The changes in QScriptContextInfo are for retreiving the right filename information for the global context when the global context is on top. Reviewed-by: Kent Hansen
| * | Fix crash on QGraphicsItem destruction related to focus handling (redone)Kai Koehne2009-09-091-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Reset the dangling subFocusItem pointer in ~QGraphicsItem, after all the child items have been deleted. This replaces commit d724c91a0ae. Reviewed-by: Thomas Hartmann
| * | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Rhys Weatherley2009-09-093406-13541/+13570
| |\ \
| | * | Update license headers again.Jason McDonald2009-09-093406-13534/+13563
| | | | | | | | | | | | | | | | Reviewed-by: Trust Me
| | * | Merge commit '4feb4019cfc144cef4cd9177d52e52dee9ebdf32' into 4.6Rohan McGovern2009-09-091-7/+7
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/network-settings.h tests/auto/qpainter/tst_qpainter.cpp
| | | * | Fixed bug in drawImage() when fall-back code path is used.Samuel Rødal2009-09-081-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to floor instead of round to prevent rectangles that are on the edge from being shifted one pixel down / right. Task-number: 258776 Reviewed-by: Kim
| * | | | Clean up shader programs properlyRhys Weatherley2009-09-094-191/+232
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QGLShader and QGLShaderProgram used to delete the GL object id in the wrong context. But fixing this means we must keep track of when contexts are destroyed so that we don't try to access a context from a shader if it goes away. We also need to transfer ownership from one context to another when they are shared. This change introduces QGLSharedResourceGuard, which keeps track of a context and a GL object identifier. When the context goes away, ownership is passed to a shared context. When there are no more shared contexts, the identifier automatically zeroes. Reviewed-by: trustme
| * | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Rhys Weatherley2009-09-093-1/+4
| |\ \ \
| | * | | Fix windows implemetation of QLocalSocket to emit bytesWritten() signalabcd2009-09-093-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Have QWindowsPipeWriter emit a bytesWritten signal and have QLocalSocket connect this to its own bytesWritten signal. This change contains an autotest to check for the signal emission. Previously there was no implementation to emit the signal.
| * | | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Rhys Weatherley2009-09-091-6/+30
| |\ \ \ \ | | |/ / /
| | * | | Fix QDirectFBPixmapData::fromImageAnders Bakken2009-09-081-6/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fix should optimize pixmap loading on most platforms and also fixes a bug on a certain hardware where the alpha channel of an image was not retained upon loading it. This patch also takes care of handling dithering better in QDirectFBPixmapData::fromImage(). Reviewed-by: Donald Carr <donald.carr@nokia.com>
| * | | | Clean up the gradient cache in the right contextRhys Weatherley2009-09-091-0/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QGLGradientCache for the OpenGL1 paint engine has to destroy the cached gradient textures if the QGLContext changes. Problem is, it wasn't changing back to the previous context to destroy those textures. Task-number: 249919 Reviewed-by: Sarah Smith
| * | | Fix define in QDirectFBScreenAnders Bakken2009-09-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | It's QT_NO_DIRECTFB.*, not QT_DIRECTFB_NO.* Reviewed-by: TrustMe
| * | | memset DFBWindowDescription to 0Anders Bakken2009-09-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | This makes debugging easier. Reviewed-by: TrustMe
| * | | Doc: A timeline's current value is not reset when the duration changes.David Boddie2009-09-081-0/+4
| | | | | | | | | | | | | | | | | | | | Task-number: 219152 Reviewed-by: Trust Me
| * | | Cleanup of QGLPaintDevice before it goes inTom Cooksey2009-09-089-430/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the last patch in the QGLPaintDevice series. Although previous patches have not been reviewed individually, Samuel's reviewed QGLPaintDevice API and all the changes as the code stands with this patch. Reviewed-by: Samuel
| * | | Make QGLPixmapData work with the new QGLPaintDevice APITom Cooksey2009-09-087-85/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch changes the ordering of QGL2PaintEngine::begin a bit because QGLPixmapData needs to use the paint engine's drawTexture method within beginPaint(). Also, this initialises needsSync to true and removes the setState call. So now all the state initialisation is done in ensureActive rather than begin.
| * | | Make QGLWindowSurface use new QGLPaintDevice APITom Cooksey2009-09-085-33/+65
| | | |
| * | | Move buffer clear out of the paint engine and into the QGLPaintDevicesTom Cooksey2009-09-086-63/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the paint engine cleared the surface's buffers in begin. This logic really belongs in QGLPaintDevice::beginPaint as not all paint devices will want this behaviour (in fact most don't). This also makes QGLPaintDevice API much simpler as the virtual getters for the clear color, etc. can be removed. It's much cleaner this way. The only possible problem is with the GL1 engine, which also cleared the accumulation & depth buffers in begin. However, the engine will also clear the depth buffer later as part of it's clipping logic. It also doesn't use the accumulation buffer, so clearing it seems unnessisary.
| * | | Make QGLFramebufferObject work again using new QGLPaintDevice APITom Cooksey2009-09-0811-152/+257
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch also refactors QGL2PaintEngineEx::ensureActive() and the logic which handles multiple paint engines rendering to the same QGLContext. In a nut-shell: * QGLPaintDevice::beginPaint() stores the currently bound FBO * QGLPaintDevice::ensureActiveTarget() makes sure that GL rendering will end up in the paint device (I.e. the right context is current and the right FBO is bound). If a different context or FBO was bound, it is _not_ remembered. * QGLPaintDevice::endPaint() restores whatever FBO was bound when beginPaint() was called. This logic allows interleaved painter rendering to multiple FBOs and contexts to work as expected. It also allows a stacked begin/end to work properly when it's mixed with native GL rendering (as far as current render target is concerened. GL state clobbering is obviously a different topic). QGLPaintDevice::context() also had to be made virtual as there's no good place to call setContext. This might be possible to change in the future though. Finally, to make this work, QGLFramebufferObjectPrivate had to be moved into it's own private header.
| * | | Make QGLPixelBuffer work again using new QGLPaintDevice APITom Cooksey2009-09-084-1/+29
| | | | | | | | | | | | | | | | | | | | Add a new QGLPBufferGLPaintDevice implementation which allows the GL engines to target QGLPixelBuffers again.
| * | | Replace QGLDrawable with a new QGLPaintDeviceTom Cooksey2009-09-0811-84/+483
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new abstract base class which inherits from QPaintDevice called QGLPaintDevice. This base class will contain everything the GL paint engines need to know about the surface they are drawing onto. As such, new surfaces can be targeted by the GL paint engines without having to modify QtOpenGL. This is very useful for plugins, specifically QGraphicsSystem plugins. To unify things a little, the GL paint engines will use the same QGLPaintDevice API to render into existing target surfaces (QGLWidget, QGLPixelBuffer & QGLFrameBufferObject). Ideally we'd make QGLPaintDevice a common ancestor for these surfaces, but obviously that wil break B/C. This patch only implements QGLWidget using the new interface. Rendering to other surfaces will be fixed in following patches.
| * | | Fix crash when instantiating multiple QApplications on QWSPaul Olav Tvete2009-09-081-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Copy variable initialization/cleanup code from X11 Reviewed-by: Tom
| * | | Take right bearing of glyphs into account when doing text layoutEskil Abrahamsen Blomfeldt2009-09-081-54/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To support correctly breaking text and calculating the bounding rect of text that has a right bearing (like italic text), we need to take the bearing into account when doing the layout. We add the bearing when checking whether we need to break the text, and we add it to the natural width of the text whenever we've finished a text line, so that we get the correct bounding rectangle. This patch only takes the last glyph's bearing into account. The theoretically correct approach would be to take all bearings into account and use the one which gives the longest text width. However, in practice the bearing of the glyph will not be great enough for it to span over several other glyphs. Also refactored a little to make the code simpler. Task-number: 176401 Reviewed-by: Simon Hausmann
| * | | exception safety fix for QList::operator+= (const QList&)mread2009-09-081-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The refactoring of current++ and src++ out of the new line makes the code easier to understand but it also seems to be significant at least in the ::isComplex case. I suspect that the ordering increment operations vs throw from new is not well defined, or not implemented as you might hope (with the ++ happening very last). The changes in the catch blocks mean that it deletes the created objects, rather than trying with the first failed object. The test code has been updated with a +=(Container) test, and to force testing of both static and moveable types. Reviewed-by: Harald Fernengel
| * | | Fixed usage of QMargins in QStyleSheetStyleThorbjørn Lindeijer2009-09-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The order of the parameters to the QMargins constructor changed in commit 758f4735bcae034ac25730e53bb371df3b7d6e8a. Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
| * | | Added a public function to enforce usage og the old GL engine.Trond Kjernåsen2009-09-083-9/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some applications that uses a mix of OpenGL and QPainter code may not work correctly with the new GL 2 engine (e.g. the composition demo). The same is most likely also true for user apps, therefore we need a way to enforce the usage of the old GL 1 engine for the sake of compatibility. Task-number: 260872 Reviewed-by: Samuel
| * | | QScriptDebuggerBackend crash fix.Jedrzej Nowacki2009-09-081-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QScriptDebuggerBackend::contextCount() method was trying to count number of context push & pop and result was not equal to elements count in QScriptDebuggerBackend::contextIds() list. Patch change QScriptDebuggerBackend::contextCount() to call count() on ids list. Task-number: 260719 Reviewed-by: Kent Hansen
| * | | fix major memory leak in JavaScriptCore RegisterFile on Windows CEJoerg Bornemann2009-09-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Widows CE we must decommit all committed pages before we release them. See VirtualFree documentation. Desktop Windows behaves much smoother in this situation. Reviewed-by: ariya
| * | | Merge branch '4.6' of git@scm.dev.troll.no:qt/qt into 4.6Miikka Heikkinen2009-09-0810-10/+50
| |\ \ \