summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fixed memory leak in GL texture cache with QRuntimePixmapData.Samuel Rødal2011-03-071-1/+1
| | | | | | | | The cached texture is associated with the QRuntimePixmapData, not to the proxied QPixmapData. Task-number: QT-4655 Reviewed-by: Gunnar Sletta
* Invalidate the EGL surface of QMeeGoLivePixmapData when switching to RasterPauli Nieminen2011-03-077-1/+48
| | | | | | | | | | | | | | | QMeeGoLivePixmap fails to lock the EGL surface and texture after switch to raster graphics system. The EGL surface is invalid after eglTerminate call in switch. But QMeeGoLivePixmapData doesn't know about the switch. Marking EGL surfaces and texture invalid after switch makes live pixmap automatically recreate the surface when next time requiring live pixmap. Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com> Merge-request: 2571 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Added image conversion flag to prevent conversions.Samuel Rødal2011-03-044-2/+10
| | | | | | | | This is needed in the meego graphics system to support the shared image fallback path (when using the raster graphicssystem). The flag is internal. Reviewed-by: Gunnar Sletta
* Fix Mac synthesized italic fonts clipping issue for QGLWidgetJiang Jiang2011-02-281-5/+10
| | | | | | | Backport 43d5a0757d857c2a6694ae81d6b70c04ef876aff from 4.8. Task-number: QTBUG-16954 Reviewed-by: Eskil
* Merge branch 'graphics-team-text-4.7' into 4.7Eskil Abrahamsen Blomfeldt2011-02-282-3/+14
|\
| * Fix cursor position adjustment when removing stringsJiang Jiang2011-01-252-1/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 0ba1b4d0 introduced a regression to QTextDocument: it postponed cursor position adjustment until the move operation is done, but contentsChanged will be triggered by finishEdit() in this move operation, thus cursor positions in this signal handler will be in inconsistent states (normally we should first update cursor position then trigger contentsChanged). In this case we should also postpone finishEdit() handling after cursor positions have been adjusted, then the states expose to applications will be consistent. Task-number: QTBUG-15857 Reviewed-by: Eskil
| * Fix out of bounds handling in Mac shaperJiang Jiang2011-01-142-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After ensure space, local QGlyphLayout variable should be updated to the moved address. stringToCMap returns true for success, so stringToCMapFailed should be the reverse of the return value. Out of bounds happened quite often in all situations using the QStackedTextEngine, because the memory allocated at the first time is usually not much, making it easier to trigger out of bounds in shaping. But it can also happen when using normal QTextLayout. Test it by comparing the width returned by normal QTextLayout and the width returned by QTextLayout created from QStackedTextEngine via QFontMetricsF. Task-number: QTBUG-16648 Reviewed-by: Eskil
* | QSortFilterProxyModel::reset() should invalidate.Olivier Goffart2011-02-253-7/+66
| | | | | | | | | | | | | | | | | | | | | | | | This was broken by: d149a3faca9b97ce806249bc7ef73fe2f59589d5 The connection was removed in that commit because we did not want the layoutChanged signal to be emitted. So instead of calling invalidate(), we call clearMapping() directly. In order to do that, clear_mapping has been turned into a private slot Task-number: QTBUG-17812 Reviewed-by: Gabriel
* | 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>
* | Prevent infinite loop in raster engine on zero dash pattern length.Samuel Rødal2011-02-222-0/+29
| | | | | | | | | | Task-number: QTBUG-17053 Reviewed-by: Kim
* | Added test case for corrupt pixel count in XPM image.Samuel Rødal2011-02-182-0/+14
| | | | | | | | | | | | Fixed by merge request 1080. Task-number: QTBUG-17254
* | QImage crash when invalid XPM is read.Niklas Kurkisuo2011-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | Add sanity check for cpp, which would otherwise lead to a segfault later in the code. Task-number: QTBUG-17254 Merge-request: 1080 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | Fix an issue with removing rows in a table model.Michael Goddard2011-02-183-3/+24
| | | | | | | | | | | | | | | | | | | | Tables with nulls in a row were not being deleted properly in some cases. Made sure the responsible function no longer has default parameters so this doesn't happen again. Change-Id: I479121172d5ac172ca49da78638b9353d7a67548 Task-number: QTBUG-16007, QTBUG-15979 Reviewed-by: Charles Yin
* | RGBA32 -> RGB565 dithering in Meego Graphicssystem,Tero Tiittanen2011-02-171-95/+52
| | | | | | | | | | | | | | | | | | | | | | Dithering in QMeeGoPixmapData::imageToEGLSharedImage is now done using Ordered Dithering, not anymore Floyd-Steinberg dithering. This provides better overall results. Fixes: NB#208927 - X dithering looks better than meego graphicssystem one Merge-request: 1079 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | QStyleSheetStyle: dont crash in PE_WIDGET when widget is nullOlivier Goffart2011-02-142-1/+20
| | | | | | | | | | Reviewed-by: Gabriel Task-number: QTBUG-15910
* | Fixed tst_qpixmap::toImageDeepCopy autotest for GL graphicssystem.Samuel Rødal2011-02-091-0/+6
| | | | | | | | | | | | We need to copy the image if painting is active. Reviewed-by: Jani Hautakangas
* | Move the QtHelp tests in its own profileOlivier Goffart2011-02-043-10/+9
| | | | | | | | Reviewed-by: Sergio Ahumada
* | Namespace compilation - OCI typedefs should be outside Qt namespace.Michael Goddard2011-02-041-3/+3
| | | | | | | | | | | | | | | | psql, sqlite2 drivers already do this correctly. Change-Id: I1f02401432d5c39fa1572e2f6255941b8a67e591 Task-number: QTBUG-17076 Reviewed-by: Charles Yin
* | Fix some removeRows issues with QSqlTableModel.Michael Goddard2011-02-042-24/+158
| | | | | | | | | | | | | | | | Added some better unit testing around the problem areas. Change-Id: Ie4749da298aebbae6aec9558ebe8c8f2196c705f Task-number: QTBUG-14916 Reviewed-by: Charles Yin
* | Mention the requirement for OCI when building the SQL oracle driver.Michael Goddard2011-02-041-1/+3
| | | | | | | | | | | | | | | | As suggested by Jean-Louis Mounier. Change-Id: I2284d00453ddcb981fe3e1b710d4453323fe1e9e Task-number: QTBUG-8875 Reviewed-by: Charles Yin
* | Try to document that invalid database arguments use the default database.Michael Goddard2011-02-042-2/+4
| | | | | | | | | | | | | | | | Some places documented this, some didn't. Change-Id: Id66678dbcd9af6ec9687db745ba6f5506e951d1d Task-number: QTBUG-3240 Reviewed-by: Charles Yin
* | Update some documentation about what happens with select()/setQuery().Michael Goddard2011-02-042-0/+4
| | | | | | | | | | | | Change-Id: I5f1afada766d40273526f2cd7537ad68d5f9d09a Task-number: QTBUG-12094 Reviewed-by: Charles Yin
* | Make sure that setRecord emits dataChanged() with OnManualSubmit.Michael Goddard2011-02-042-2/+10
| | | | | | | | | | | | | | | | | | Since the change is immediately visible through data(), this is needed so that QSortFilterProxyModel etc work correctly. Change-Id: Ied7afce2e6a1f516b502d3501f9d214df54e52f2 Task-number: QTBUG-14831 Reviewed-by: Charles Yin
* | QSqlTableModel/QSqlQueryModel and insertColumns problem.Michael Goddard2011-02-045-14/+223
| | | | | | | | | | | | | | | | | | | | | | | | | | | | After inserting a column, fetching data through QSqlTableModel was off by one or more, since it passed the indexInQuery through to QSQM. Also, the headerData would sometimes return a blank string for an inserted column, and sometimes the column number. The autotests have been beefed up a little to check insertRows and insertColumns play nicely. Change-Id: I7399d4c4d94f958884b67ab9b39b5cf2485d8416 Task-number: QTBUG-12626 Reviewed-by: Charles Yin
* | tst_qsvgrenderer: works on shadowbuildOlivier Goffart2011-02-032-2/+9
| |
* | Fix QMutex can deadlock when calling tryLockOlivier Goffart2011-02-022-1/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | in the unix code, if the QMutexPrivate::wait() with a timeout expires in the same moment that the mutex is released, wakeup would be set, but would be then ignored. (reset to false quickly after) If we waken up between the timeout and the re-aquisition of the internal mutex, we consider that the mutex has been locked. Reviewed-by: brad Task-number: QTBUG-16115
* | Fixed missing text when using static text items in GL 2 engine.Samuel Rødal2011-02-023-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the context is destroyed and recreated, we end up with a new glyph cache, but we only recreate the vertex arrays for the very first static text item. We need to keep track of the glyph cache in each text item, so that we can recreate the vertex arrays and re-populate the cache accordingly. As the pointer might be the same after the glyph cache is recreated, we need to use serial numbers instead. We also need to re-create the cache when the context pointer has been invalidated, so that the static text items also get invalidated, and the texture glyph cache gets repopulated. Reviewed-by: Eskil Abrahamsen Blomfeldt
* | Prevent recursion when creating window surface.Samuel Rødal2011-02-021-1/+7
| | | | | | | | | | | | | | | | | | If we can't access the qt_gl_share_widget() we should just create a raster window surface. This might happen when creating the share widget itself leads to creation of a window surface (which isn't really going to be used anyways). Reviewed-by: Michael Dominic K
* | Fixed es2 configure when both EGL/egl.h and GLES/egl.h are present.Samuel Rødal2011-02-021-7/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change e0c2861976e06658a1d651941310407c15b0bcde fixed es1 configure by only picking EGL/egl.h if GLES/egl.h is not found. This broke es2 configure on platforms where both EGL/egl.h and GLES/egl.h are present, by picking GLES/egl.h instead of EGL/egl.h, which implicitly pulled in the GLES/gl.h header as well, causing inconsistent declarations due to both GLES2/gl2.h and GLES/gl.h getting included. Instead, we need to prioritize depending on whether we're using es1 or es2. For es1, we prefer GLES/egl.h, and for es2, we prefer EGL/egl.h. If only one of the headers is found we still use it unconditionally, to preserve the existing behaviour and minimize the risk of breaking other platforms. Reviewed-by: Ritt Konstantin Reviewed-by: Marius Storm-Olsen
* | document that QThread::exit will exit future event loopsOlivier Goffart2011-02-021-4/+6
| | | | | | | | Reviewed-by: Brad
* | Revert "Restore Qt 4.6 behaviour: exec() always enters the event loop."Olivier Goffart2011-02-022-138/+58
| | | | | | | | | | | | | | | | | | | | | | This reverts commit 2e72a8b19ea6c674fb4777860dac50faa5d387e6. The behavour in Qt 4.6 was wrong. And even if it was not documented, it is too late to change the behaviour back at this point. The tests for QEventLoop and QCoreApplication have not been reverted Reviewed-by: Brad
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-02-015-11/+24
|\ \ | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Don't ignore source-text when generating qsTrId translations for QML Fix a crash when undoing form layout
| * | Don't ignore source-text when generating qsTrId translations for QMLTor Arne Vestbø2011-02-013-1/+9
| | | | | | | | | | | | Reviewed-by: ossi
| * | Fix a crash when undoing form layoutJarek Kobus2011-02-012-10/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a rare case when breaking a layout might make widgets overlap, the internal heuristic failed when recreating an original layout during undo. Some widgets were removed from the grid. The patch fixes this heuristic (makes sure we don't remove other widgets). Creating a form layout from overlapping widgets works better now. Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Task-number: QTCREATORBUG-3616
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-01-3015-179/+358
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Fix potential networking crash due to null-pointer dereference Revert "Improve timer ID safety by using a serial counter per ID." Invalidate QScriptPrograms when engine is destroyed Fix alignment issue causing crash in QtScript/JavaScriptCore Restore Qt 4.6 behaviour: exec() always enters the event loop. Make syncqt not complain about missing header macros.
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-01-2915-179/+358
| |\ \ |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Fix potential networking crash due to null-pointer dereference Revert "Improve timer ID safety by using a serial counter per ID." Invalidate QScriptPrograms when engine is destroyed Fix alignment issue causing crash in QtScript/JavaScriptCore Restore Qt 4.6 behaviour: exec() always enters the event loop. Make syncqt not complain about missing header macros.
| * | Fix potential networking crash due to null-pointer dereferenceSimon Hausmann2011-01-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An internal bug report suggests that we unconditionally dereference the backend pointer in QNetworkReplyImpl when checking for the synchronity of the originating request. The dereferencing code was introduced in commit ad1e82323225e996720136e8b2d669166b8d8441. Unfortunately the report does not detail where/how the crash happened, but it appears plausible that the backend pointer became null, and the surrounding code that has extra checks suggests this, too. In an attempt of defensive programming this patch introduces the missing check in the reported line 112 as well as in other places where it seems appropriate. Reviewed-by: Peter Hartmann
| * | Revert "Improve timer ID safety by using a serial counter per ID."Thiago Macieira2011-01-281-24/+6
| | | | | | | | | | | | | | | This reverts commit 121e2b39043a4ffc6583f250aebb9a3a746076c1. It was considered too dangerous for 4.7.
| * | Invalidate QScriptPrograms when engine is destroyedKent Hansen2011-01-284-7/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the engine is destroyed before the program, the program must be invalidated; otherwise the program destructor will access a stale engine pointer, which can cause a crash (it crashes on Symbian, but "only" gives a Valgrind warning on Linux for our autotests). We need to keep track of all associated programs, just like we already do for values and strings. This fix follows the exact same pattern, but uses a QSet to keep the patch minimal. No new tests, but the evaluateProgram() test runs successfully on Symbian now, and there are no more Valgrind warnings. Task-number: QTBUG-16987 Reviewed-by: Olivier Goffart
| * | Fix alignment issue causing crash in QtScript/JavaScriptCoreKent Hansen2011-01-284-84/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When creating a substring, JSC::UStringImpl required that the base string pointer was 8-byte aligned. However, on platforms where FastMalloc isn't enabled (such as Symbian), it's possible that the system malloc() returns a pointer that is only 4-byte aligned. (On Symbian, this can happen if the argument to malloc() itself isn't a multiple of 8.) Cherry-picked http://trac.webkit.org/changeset/54743 from WebKit trunk, which fixes this issue. (The commit happened shortly after we rebased QtScript/JSC for 4.7, so it applies cleanly to our copy.) Task-number: QTBUG-16828 Reviewed-by: Simon Hausmann
| * | Restore Qt 4.6 behaviour: exec() always enters the event loop.Thiago Macieira2011-01-274-61/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Qt 4.6 as well as 4.7's QCoreApplication and QEventLoop, calling exec() always enters the event loop, even if you had tried to quit()/exit() it before entering, with one exception (noted in the unit tests; this difference has been in Qt since at least Qt 4.2). Add unit tests to ensure all of the three classes have the same behaviour. Decide if we want to match the behaviours in Qt 4.8. Reviewed-by: Bradley T. Hughes
| * | Make syncqt not complain about missing header macros.Thiago Macieira2011-01-271-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | qsharedpointer_impl.h contains class definitions that are also mirrored in qsharedpointer.h (which is there for qdoc3), so we have a macro to stop processing. Task-number: QTBUG-16912 Reviewed-by: Olivier Goffart
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2011-01-2910-86/+145
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Fix generated mif file cleaning in symbian-abld Fix typo in qglthreads auto test. Orientation control implementation for Symbian No longer replace dash and dot in TARGET with underscore in Symbian
| * | Fix generated mif file cleaning in symbian-abldMiikka Heikkinen2011-01-282-2/+4
| | | | | | | | | | | | | | | | | | | | | Mif file cleaning was incorrectly done at distclean phase. Task-number: QTBUG-16893 Reviewed-by: axis
| * | Fix typo in qglthreads auto test.Jani Hautakangas2011-01-281-1/+1
| | | | | | | | | | | | Reviewed-by: TRUSTME
| * | Orientation control implementation for Symbianmread2011-01-273-3/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This used the orientation control QWidget attributes API from maemo5, and provides a simple implementation for Symbian. The essense of the implementation is that the latest setting of one of these QWidget orientation attributes will set the orientation for the whole app. Testing the attributes will return only the last attribute set, it will not return the app orientation state. A new task, QTBUG-16972, has been created to provide a more comprehensive implementation in the future. This may provide a more effective emulation of the maemo5 behaviour, or may incorporate further reaching concepts for QML rotations. Task-number: QTBUG-11785 Reviewed-by: Shane Kearns
| * | No longer replace dash and dot in TARGET with underscore in SymbianMiikka Heikkinen2011-01-275-81/+89
|/ / | | | | | | | | | | | | | | | | | | | | | | | | There is no fundamental reason to not have dash or dot in binary names in Symbian, so do not replace them with underscore. One thing that doesn't work with a dot in the filename is launching an application via resources, so automatic resource generation is suppressed for applications that have a dot in filename portion of the TARGET value. Task-number: QTBUG-16888 Reviewed-by: axis
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-01-268-15/+54
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Fix: define hotSpot for Gestures on Mac Fix warnings in PSQL driver: handle VersionUnknown in switch Fix warning in ODBC driver: passing NULL to non-pointer. QNAM FTP: switch to binary mode before sending a SIZE command Change the D-Bus signal filter to return NOT_YET_HANDLED for signals Check if the interpolators have already been deleted. Improve timer ID safety by using a serial counter per ID.
| * | Fix: define hotSpot for Gestures on MacZeno Albisser2011-01-262-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | If there is no hotSpot defined for a gesture it cannot be propagated propperly within GraphicsView. Task-number: QTBUG-16618 Reviewed-by: Denis Dzyubenko
| * | Fix warnings in PSQL driver: handle VersionUnknown in switchThiago Macieira2011-01-261-0/+6
| | |