summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QGLContext on EGL gets an additional QEglProperties static field applied to ↵Michael Dominic K2011-04-013-1/+12
| | | | | | | | | every window surface created. Conflicts: src/opengl/qgl_egl.cpp src/opengl/qgl_p.h
* Actually do use the properties parameter in ::createSurface for x11egl.Michael Dominic K2011-04-011-4/+7
|
* Modified pvrqwswsegl.c to make PowerVR work for processors using flipbuffer ↵Arun Voleti2011-04-011-2/+3
| | | | | | | chain Merge-request: 1083 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Check that pixmap is not null before accessing itPauli Nieminen2011-04-011-1/+1
| | | | | | | | | | | | | | | | If QMeeGoGraphicsSystem::createPixmapData is called with origin raster pixmap data holding null image would result to null pointer deference when trying to fetch data pointer. To avoid the crash at graphics system switch pixmap data should be checked if it is NULL. Fixes: NB#237972 Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com> Merge-request: 1160 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Merge remote-tracking branch 'origin/master' into fire-masterJørgen Lind2011-04-0113-59/+144
|\
| * Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-03-2913-59/+144
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Unix configure: Add support for --sysroot Add a 'capabilities' flag to the marshaller and demarshaller Add a set of connection capabilities to QDBusConnection Move the main D-Bus session and system connections to the main thread Add a way to obtain the DBusConnection* pointer from a QDBusConnection Make the QIconvCodec on Unix not enforce the Latin1 codec.
| | * Unix configure: Add support for --sysrootThiago Macieira2011-03-292-2/+27
| | | | | | | | | | | | Reviewed-By: axis
| | * Add a 'capabilities' flag to the marshaller and demarshallerThiago Macieira2011-03-297-34/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The marshaller and demarshaller need to know the features negotiated with the peer so as to determine what's permitted. This is especially important to the marshaller: the libdbus-1 API may "throw a fit" if we try to pass a type that isn't allowed or the server may disconnect us. The use of the capabilities in the demarshaller are for symmetry and for us to toggle the feature in unit tests. Task-number: QTBUG-17478
| | * Add a set of connection capabilities to QDBusConnectionThiago Macieira2011-03-294-2/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The capabilities are negotiated with the D-Bus peer or bus at connection time and may include extra features not available when D-Bus 1.0 was released. Currently (as of D-Bus 1.4), the only additional feature is Unix file descriptor passing. Proposed features are "maybe types" and single-precision floating point. They may be added to D-Bus 1.6. Task-number: QTBUG-17478
| | * Move the main D-Bus session and system connections to the main threadThiago Macieira2011-03-291-1/+11
| | | | | | | | | | | | | | | | | | Some applications experience weird behaviour that sometimes it works and sometimes it doesn't, due to D-Bus being first used in a thread. So instead do everything in the main thread for the two main connections.
| | * Add a way to obtain the DBusConnection* pointer from a QDBusConnectionThiago Macieira2011-03-292-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is internal API and the behaviour may change without notice. In the future, I could use a different implementation without libdbus-1, so this pointer may be something different. The use of DBusConnection is also entirely implementation-defined, so keeping this connection around is entirely unsupported. You have been warned.
| | * Make the QIconvCodec on Unix not enforce the Latin1 codec.Thiago Macieira2011-03-291-20/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Originally, the QIconvCodec created and disposed of the iconv_t structure at every turn. In Qt 4.5, we started saving it for later in a thread-local storage. We had to introduce a fix to make sure that we didn't create the iconv_t structure before the setlocale(LC_ALL, "") call was made, though: otherwise, we'd keep forever an iconv_t that pointed to the wrong encoding. So now simply restore the Qt 4.4 behaviour: create and dispose of the iconv_t structure if we're called before the QCoreApplication constructor is run or after the static destructors are run. Note: this means QIconvCodec will probably default to US-ASCII when run before QCoreApplication, not Latin 1. Non-ASCII characters (anything with the high bit set) will fail to convert. Task-number: QTBUG-15229? Reviewed-by: Denis Dzyubenko
* | | opengl2: Make maximum cached glyph size configurableSami Kyöstilä2011-03-311-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As the DPI of displays continues to rise, especially on mobile devices, the maximum glyph size of 64 pixels for the glyph cache has become a limitation. This problem is made worse by the fact that when the maximum glyph size is exceeded, the OpenGL paint engine falls back to using rasterized geometry for glyph rendering. This does not produce acceptable quality if the OpenGL rendering surface lacks support for multisampling. This patch offers a solution to the problem by making the cached glyph size configurable at build time. This way the limit can be set according to the capabilities of the target hardware. Signed-off-by: Sami Kyöstilä <sami.kyostila@nokia.com> Merge-request: 1131 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | | QWS: fix the software/hardware cursor switcherRitt Konstantin2011-03-312-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | because of typo, this never worked before. drop the meaningless local qt_sw_cursor variable and use the correct application-wide qws_sw_cursor one Merge-request: 2587 Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
* | | Fix horizontal centered text drawing without word wrapJiang Jiang2011-03-314-23/+30
| | | | | | | | | | | | | | | | | | | | | | | | In this case we can't use line width to align the text, we have to use the rectangle width given in QPainter::drawText for alignment instead. Reviewed-by: Eskil
* | | Remove Font Smoothing hack for OS XJiang Jiang2011-03-311-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | It only affects text rendering with static text/QTextLayout, rendering to images is not affected. Task-number: QTBUG-18048 Reviewed-by: Eskil
* | | Revert "Fixed underline offset after raster coordinate system change."Samuel Rødal2011-03-301-2/+1
| | | | | | | | | | | | | | | Temporarily revert commit eeca1aee72a69584aa20bdb9f5c4e48d7e3cbc16, which seemed to cause auto-test failures on Windows 7.
* | | Fix the painting for widgets painting directly on screen.Fabien Freling2011-03-301-7/+4
| | | | | | | | | Reviewed-by: Jiang Jiang
* | | Fixed bad merges in GL windowsurface and get rid of redundant variable.Samuel Rødal2011-03-291-2/+9
| | | | | | | | | | | | Reviewed-by: Jani Hautakangas
* | | Added WindowSurfaceFeature enum to QWindowSurface.Samuel Rødal2011-03-2916-58/+55
| | | | | | | | | | | | | | | | | | | | | | | | Now that we've added hasPreservedContents() it's cleaner to convert the various features to feature flags, which is also more extensible in case more flags are needed in the future. Reviewed-by: Bjørn Erik Nilsen
* | | Added preserved contents property to QWindowSurface.Samuel Rødal2011-03-295-28/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we used hasPartialUpdateSupport() to deduce whether the window surface's contents are preserved when flush is called or not, but that limits us from fully supporting platforms which might allow partial updates even though the surface contents aren't preserved on flush. If hasPreservedContents() returns false, that means a flush of a region is never allowed without first painting to that region. If hasPartialUpdateSupport() returns false, the whole window surface must always be painted whenever an update is requested. Note that hasPreservedContents() will typically imply hasPartialUpdateSupport(), but not vice versa. Reviewed-by: Bjørn Erik Nilsen
* | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-fire-teamaavit2011-03-291-1/+2
|\ \ \ | |/ / |/| |
| * | Fixed underline offset after raster coordinate system change.Samuel Rødal2011-03-281-1/+2
| | | | | | | | | | | | | | | | | | | | | This avoids the double-thickness lines at low point sizes which were caused by a line just barely straddling two pixels. Reviewed-by: Jens Bache-Wiig
* | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-fire-staging into ↵Qt Continuous Integration System2011-03-2819-242/+366
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/qt-fire-staging: Fix crash and infinite recursion caused by previous commits Fix remaining regressions in QWS Take Xft.hintstyle by default to match the behavior of GTK+ Fixed remaining issues in subpixel positioning with FreeType Fix QTransform debug output qFloor the decoration line width before painting Let QTextLine decide its own x position in QPainter Avoid repeatedly trying to load unloadable plugins, causing slowness Reset GL glyph cache when texture limit is reached unlockFace was put in the wrong place in previous patch Implement subpixel positioning with FreeType
| * \ \ Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qt-fire-teamQt Continuous Integration System2011-03-2819-242/+366
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'master' of git://scm.dev.nokia.troll.no/qt/qt-fire-team: Fix crash and infinite recursion caused by previous commits Fix remaining regressions in QWS Take Xft.hintstyle by default to match the behavior of GTK+ Fixed remaining issues in subpixel positioning with FreeType Fix QTransform debug output qFloor the decoration line width before painting Let QTextLine decide its own x position in QPainter Avoid repeatedly trying to load unloadable plugins, causing slowness Reset GL glyph cache when texture limit is reached unlockFace was put in the wrong place in previous patch Implement subpixel positioning with FreeType
| | * | Fix crash and infinite recursion caused by previous commitsJiang Jiang2011-03-282-2/+3
| | | | | | | | | | | | | | | | Reviewed-by: TrustMe
| | * | Fix remaining regressions in QWSJiang Jiang2011-03-253-2/+7
| | | | | | | | | | | | | | | | Reviewed-by: TrustMe
| | * | Take Xft.hintstyle by default to match the behavior of GTK+Jiang Jiang2011-03-252-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For Qt apps running in GNOME, we use the GTK+ settings by default (instead of fontconfig settings). Task-number: QTBUG-13800 Reviewed-by: Samuel
| | * | Fixed remaining issues in subpixel positioning with FreeTypeJiang Jiang2011-03-246-142/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Merge QStaticText and QGlyphs drawing code of raster engine into glyph drawing code for normal QTextItem, it simplify the caching system (we don't use QImageTextureGlyphCache for raster anymore, just glyph set cache in FreeType engine is enough), and fix some regressions in QStaticText and QGlyphs drawing. 2. Fix subpixel positioning support for OpenGL texture glyph cache. Including a transform handling regression introduced by the initial patch. 3. Disable subpixel positioning for bitmap fonts (mono format). After this change, we only have two code paths for glyph rendering with FreeType: raster will always use the simple code path (with QFontEngine_FT cache) while GL will always use QTextureGlyphCache. Reviewed-by: Eskil
| | * | Fix QTransform debug outputJiang Jiang2011-03-241-0/+3
| | | | | | | | | | | | | | | | Reviewed-by: Eskil
| | * | qFloor the decoration line width before paintingJiang Jiang2011-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It's a special case when enabling design (fractional) metrics, we need to floor it to keep consistency with integer metrics. Reviewed-by: Eskil
| | * | Let QTextLine decide its own x position in QPainterJiang Jiang2011-03-241-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So that it can take trailing space width into account when doing right aligned text drawing. Task-number: QTBUG-18303 Reviewed-by: Eskil
| | * | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-fire-teamaavit2011-03-2313-105/+209
| | |\ \
| | | * | Reset GL glyph cache when texture limit is reachedEskil Abrahamsen Blomfeldt2011-03-236-2/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a port of 72f161739b270b01807f97cd853030440f0fd430 which was reverted in integration to master, since it was incompatible with the refactored glyph cache. When the GL glyph cache reached its texture limit, we have to reset it and start over. Added a new cleanup() function in QGLContextGroupResourceBase which deletes the resource for a given context and removes itself from that context group. Task-number: QTBUG-13784 Reviewed-by: Samuel
| | | * | unlockFace was put in the wrong place in previous patchJiang Jiang2011-03-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Should only unlock once after the loop. Reviewed-by: TrustMe
| | | * | Implement subpixel positioning with FreeTypeJiang Jiang2011-03-228-105/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFontEngineFT are used in raster/OpenGL paint engine and QGLWidget, also in Symbian, etc. We want to make sure it works well in raster and QGLWidget first. Regardless subpixel antialiasing (LCD filtering) is enabled or not (though it does look better when subpixel antialiasing is on). We also need to support transformations. The tricky part here is that, under X11, we have a different code path for QFontEngineFT and other font engines in raster engine, which uses QFontEngineFT's own glyph cache system. While in other platforms (Windows and Mac) and QGLWidget, we will use the generic QTextureGlyphCache. The generic QTextureGlyphCache already has support for subpixel positions, this solution is ported to QFontEngineFT for its QGlyphSet: the key for QGlyphSet hash table has been extended from glyph_t to <glyph_t, QFixed subPixelPosition> pair. The real work to enable subpixel positioning with FreeType is in fact really simple, we just set the horizontal translation to the subpixel position * 64 (FreeType uses a coordinate system of 1/64 of a pixel resolution internally) immediately before loading the glyph. A slight tweek to bitmap width is applied when we are getting the bitmap ourselves instead of using FT_Render_Glyph to accommodate the subpixel translation, which will only be used in non-LCD filtering cases (grayscale antialiasing). From what we have observed, FreeType can generate different bitmaps for at least 12 different subpixel positions (each with a slight difference). To limit the memory consumption, we restrict the number of subpixel positions to be 4 (hardcoded), which should be good enough for most low resolution displays. Subpixel positioning (and fractional glyph advances) will only be enabled when the hintingPreference for the font being used is PreferNoHinting or PreferVerticalHinting. We will use fontconfig hintstyle setting by default when no hintingPreference is set for the font. Task-number: QTBUG-12279 Reviewed-by: Eskil
| | * | | Avoid repeatedly trying to load unloadable plugins, causing slownessaavit2011-03-231-2/+7
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In certain uncommon situations, where different Qt versions are used on the same system, the plugin caching optimization may identify a dll as a valid plugin, even though it will later fail to load. This fix will avoid that Qt repeatdly tries to reopen such dlls, something which caused a significant performance hit in these cases. E.g. where Qt would unsuccessfully try to load a number of KDE image format plugins for every image loading operation. Task-number: QTBUG-10066 Reviewed-by: thiago Reviewed-by: janarve
* | | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-tools-staging into ↵Qt Continuous Integration System2011-03-283-52/+54
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/qt-tools-staging: Designer: Fix tab order in action editor dialog. Make QtUiTools use the lib-infix passed to configure.
| * | | | Designer: Fix tab order in action editor dialog.Friedemann Kleint2011-03-281-48/+48
| | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-18400
| * | | | Make QtUiTools use the lib-infix passed to configure.Friedemann Kleint2011-03-252-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch contributed by OpenEmbedded project. Reviewed-by: hjk Task-number: QTBUG-7169
* | | | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2011-03-283-2/+120
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1: tst_qlocale: improve failure message in tst_QLocale::macDefaultLocale Add a once-over unrolled fromLatin1 conversion (32 characters) Add 16-byte loads of the Neon fromLatin1 functions Fix warning about unused parameter
| * | | | tst_qlocale: improve failure message in tst_QLocale::macDefaultLocaleRohan McGovern2011-03-281-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use QVERIFY2 to output more details about this failure. Reviewed-by: Toby Tomkins
| * | | | Add a once-over unrolled fromLatin1 conversion (32 characters)Thiago Macieira2011-03-271-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | This was suggested by Matthias Kretz on my blog. It improves on GCC (one case up to 5%), but worsens on ICC (up to 5%).
| * | | | Add 16-byte loads of the Neon fromLatin1 functionsThiago Macieira2011-03-271-0/+68
| | | | |
| * | | | Fix warning about unused parameterThiago Macieira2011-03-271-1/+1
|/ / / /
* | | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging into ↵Qt Continuous Integration System2011-03-254-4/+57
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging: Skip failing tests QDir: Fix absolute paths when using file engines
| * | | | Skip failing testsJoão Abecasis2011-03-252-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c7748b7838522ec38ec01423f1267acf1f163606 fixed a bug in QDir::absoluteFilePath that was masking failures in QtScript's v8 test suite. Those will have to be looked into separately. For now, skipping the tests. These are the uncovered failures, broken out by platform and test, and formatted as "test-name:line-number: actual-value / expected-value": * linux-icc_ubuntu1004 - math-min-max:50: Inf / -Inf - negate-zero:50: false / true - str-to-num:50: Inf / -Inf * linux-icc_ubuntu1004 & macx-g++_cocoa_osx106 - smi-negative-zero:50: -Inf / Inf * linux-icc_ubuntu1004 & macx-g++_cocoa & macx-g++_cocoa_osx106 & win32-msvc2005_windows_xp & win32-msvc2008_windows_xp - to-precision:50: 1.235e+27 / 1.234e+27 Reviewed-by: Kent Hansen
| * | | | QDir: Fix absolute paths when using file enginesJoão Abecasis2011-03-182-4/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFileSystemEntry doesn't know about paths as implemented by custom file engines, such as is the case with resource files. In such cases, we need to allow the engine to make the relative to absolute conversion. Expanded QDir's test case to ensure resource paths are considered in more places. Task-number: QTBUG-17921 Reviewed-by: Prasanth Ullattil
* | | | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-releng-staging into ↵Qt Continuous Integration System2011-03-252-20/+0
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/qt-releng-staging: Removed old autotest references from Symbian build files
| * | | | | Removed old autotest references from Symbian build filesEckhart Koppen2011-03-242-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tests not in use anymore, removed from the layers and package definition files. Reviewed-by: TrustMe