| Qt 4.6.1 is a bug-fix release. It maintains both forward and backward |
| compatibility (source and binary) with Qt 4.6.0. For more details, |
| refer to the online documentation included in this distribution. The |
| documentation is also available online: |
| |
| http://qt.nokia.com/doc/4.6 |
| |
| The Qt version 4.6 series is binary compatible with the 4.5.x series. |
| Applications compiled for 4.5 will continue to run with 4.6. |
| |
| Some of the changes listed in this file include issue tracking numbers |
| corresponding to tasks in the Qt Bug Tracker, the (now obsolete) Task |
| Tracker, or the Merge Request queue of the public source repository. |
| |
| Qt Bug Tracker: http://bugreports.qt.nokia.com |
| Task Tracker: http://qt.nokia.com/developer/task-tracker |
| Merge Request: http://qt.gitorious.org |
| |
| **************************************************************************** |
| * General * |
| **************************************************************************** |
| |
| Optimizations |
| ------------- |
| |
| - Optimized empty QUrl creation |
| * [QTBUG-4030] Empty QUrls no longer allocate memory now |
| |
| * See list of Important Behavior Changes below |
| |
| |
| **************************************************************************** |
| * Library * |
| **************************************************************************** |
| |
| QtCore |
| ------ |
| |
| - QFile |
| * Improve performance of getting the canonical filename on Linux |
| and Symbian by using realpath() system call. |
| * Avoid stat() when opening a file. |
| |
| - QLibrary and QPluginLoader |
| * Do not look at the Qt patch-level version embedded in plugins' |
| buildkeys when trying to determine if the plugin is compatible |
| |
| - QProcessEnvironment |
| * [QTBUG-6701] Ensure we don't crash in operator== |
| |
| - QTextEncoder |
| * [merge request 399] QTextEncoder::fromUnicode as QT3 support |
| member |
| |
| - QXmlStreamreader |
| * [merge request 1926] Fix parsing of DTDs that contain empty markup |
| declarations. |
| |
| QtGui |
| ----- |
| |
| - QApplication |
| * [QTBUG-6654] Fix crashes when deleting QWidgets in touch event |
| handlers. |
| - QGraphicsEffect |
| * [QTBUG-5918] Fixed redraw bugs when using graphics effects on |
| items while animating them by transformations. |
| - QGraphicsItem |
| * [QTBUG-5917] Fixed memory leaks when removing a QGraphicsEffect from |
| a QGraphicsItem or QWidget with setGraphicsEffect(0). |
| * [QTBUG-5859] Fixes incorrect rounding of the exposed rectangle of the |
| QGraphicsItem causing painting issues when scaling the QGraphicsView. |
| * [QTBUG-5071] Fixes transformation problems when grouping/ungrouping |
| the item with a QGraphicsItemGroup. |
| - QGraphicsObject |
| * 'id' property was removed. Use the 'objectName' property instead. |
| - QGraphicsScene |
| * [QTBUG-6654] Fix crashes when deleting QGraphicsItems in touch |
| event handlers. |
| - QGraphicsView |
| * [QTBUG-6935] When using CacheBackground, the background is now |
| correctly repainted after the QGraphicsView is shown after being |
| hidden. |
| * [QTBUG-6835] Mouse tracking is now automatically enabled when using |
| AnchorUnderMouse for view transformation. |
| * [QTBUG-6958] Fix speed regression in _q_polishItems() |
| * [QTBUG-6544] Fix a crash on the focus chain when removing items from |
| the scene. |
| * Fix a crash in KDE/Plasma with QGraphicsView with topLevels. |
| - QGraphicsWidget |
| * [QTBUG-6272] Only call updateFont if the font has changed. |
| - QPainter |
| * [QTBUG-5939] Fixed incorrect redirection matrix that was causing |
| wrong transformation for QGraphicsProxyWidgets. |
| * [QTBUG-6684] Added optimizations of 32-bit blend functions |
| for ARM platforms with NEON support. |
| - QPixmap |
| * load() and loadFromData() can now support compressed GL textures |
| in the DDS, ETC1, PVRTC2, and PVRTC4 formats if the OpenGL graphics |
| system is active and the appropriate extensions are present in the |
| GL implementation. |
| * [QTBUG-6840] Fixed load() to not modify referenced copies. |
| * [QTBUG-5840] Fixed a crash in fromImage() when passing in a null image. |
| * [QTBUG-6116] Fixed memory leak where a global object was not destroyed |
| at program exit. |
| - QPixmapCache |
| * Fixed a small leak when using the new QPixmapCache::Key based API. |
| - QPrinter |
| * [QTBUG-3412] QGraphicsProxyWidgets are now rendered correctly when |
| printing a QGraphicsScene to PDF format. |
| - QRasterPixmapData |
| * [QTBUG-6985] Fixed metric() to return the correct height in mm. |
| - QTextDocument |
| * [QTBUG-5397] Fixed printing of QTextDocuments not including custom |
| text objects. |
| * [QTBUG-6051] Fixed an endless loop when printing a QTextDocument. |
| |
| QtDBus |
| ------ |
| |
| - QDBusConnection |
| * [QTBUG-5979] Fixed the signal-delivery mechanism to update |
| correctly when the sender name changes/appears on the bus. |
| * [QTBUG-7041] Fixed marshalling of booleans in release mode. |
| * [QT-2307] Fixed calls with the QDBus::BlockWithGui mode. |
| - QDBusInterface |
| * Made it continue working even when the remote object |
| introspection fails. |
| - QDBusInterface and qdbuscpp2xml |
| * [QTBUG-5563] Fixed an issue with generating annotations in |
| signals. |
| - QDBusPendingReply and QDBusReply |
| * [QTBUG-6571] Fixed a crash that would happen if you tried to |
| make a call with a disconnected QDBusConnection. |
| |
| QtMultimedia |
| ------------ |
| |
| - QAudioOutput |
| * [Merge request 418] Fixed compilation the example provided for |
| QAudioOutput::start. |
| |
| QtNetwork |
| --------- |
| |
| - QNetworkAccessManager |
| * HTTP: Send our locale with the HTTP request. |
| * HTTP: Start Accept-language and Authorization header with capital letter. |
| * HTTP: Fix caching algorithm, matching RFC 2612 and the documentation. |
| * HTTP [QTBUG-7060]: Fix an issue with headers like "private, max-age=300". |
| * file: Introduce special subclass for higher performance with file:// URLs. |
| - QTcpSocket |
| * [QTBUG-5799] Fix waitForConnected() on Windows. |
| - QNetworkProxyFactory |
| * Fixed systemProxyForQuery(), it could sometimes return invalid empty list |
| on Windows. |
| - QNetworkCookieJar |
| * [QTBUG-5815] Do not check paths when accepting cookies. |
| - QHostInfo |
| * Use five parallel threads for host lookup instead of one. |
| |
| QtOpenGL |
| -------- |
| |
| - QGL2PaintEngineEx |
| * Performance: Don't mark brush as dirty if it hasn't changed. |
| * Performance: Use 3x3 PMV matrices rather than 4x4. |
| * Performance: Move the 0.5 offset we add for aliased rendering to |
| updateMatrix(). |
| * Performance: Remove superfluous enable/disable vertex attrib arrays. |
| * Performance: Track the glVertexAttribPointer and only update it if it's |
| changed. |
| * [QTBUG-7094] Introduce new "snapToPixelGrid" flag for drawText. |
| - QGLContext |
| * bindTexture(QString) now supports DDS, ETC1, PVRTC2, and PVRTC4 |
| compressed textures if the appropriate extensions are present |
| in the GL implementation. |
| * bindTexture(QImage): Reduce double-copying of textures when flipping. |
| * [QTBUG-6454] Better EGL extension checking to avoid prefix problems |
| with EGL_foo matching EGL_foo_bar. |
| * [QTBUG-6217] Work around problems with glColor4ub() on Intel Q45/Q43 |
| Express by consistently using glColor4f() everywhere. |
| * bindTexture(QImage): Fix GL_BGRA formats under OpenGL/ES by using |
| the same value for both internal and external texture formats. |
| * [QTBUG-5041] Disable depth testing while in renderText(). |
| - QGLEngineSelector |
| * [QTBUG-5638] Detect GL2 based on fragment shaders, not programs. |
| Fragment programs are a GL1 feature. |
| - QGLFramebufferObject |
| * [QTBUG-6712] Update docs to better explain how QPainter changes |
| the GL state when used on an FBO. |
| - QGLGlyphCache |
| * [QTBUG-6936] Fix memory leak of QGLGlyphCoord objects. |
| - QGLPaintDevice |
| * [QTBUG-6204] Rebind window surface FBO after native GL rendering. |
| - QGLPixmapData |
| * [QTBUG-6902] Align GL_RGB data on a 4-byte line boundary. |
| - QGLWidget |
| * [QTBUG-5002, QTBUG-6931] Fixed QGLWidget::renderText(). |
| * Fixed WA_TranslucentBackground for QGLWidgets on X11/EGL. |
| * Fix EGL surface leaks when re-parenting on X11/EGL. |
| - QTriangulatingStroker |
| * [QTBUG-6045] Crash in dashed line handling in the GL stroker. |
| |
| QtOpenVG |
| -------- |
| |
| - [QT-2555] Automatically destroy VG pixmaps when the last window surface |
| goes away to reduce memory consumption of backgrounded applications. |
| - [QTBUG-6639] Recover from out-of-memory when creating VGImage's. |
| - [QT-2554] Add a VGImage allocation pool to support reclaiming older |
| images when the GPU runs out of memory. |
| - [QTBUG-7051] Reset the OpenVG scissor after a native painting call-out. |
| - [QTBUG-7015] Avoid deep copies of QImage in QImage::bits() calls. |
| |
| QtWebKit |
| -------- |
| |
| - Fixed user agent string on Symbian (webkit.org/b/31961). |
| - QWebInspector: Don't disable when hiding (webkit.org/b/31851). |
| - Fix JavaScript prompt behaviour for empty/null strings (webkit.org/b/30914). |
| - Fixed lastIndexOf() on Symbian (webkit.org/b/31773). |
| - Fixed crash with Flash on Windows with MinGW. |
| - Fixed wrapping of QObjects with recurring identity (webkit.org/b/31681). |
| - Fixed compilation with ICC. |
| - Fixed assertion when dragging SVG images (webkit.org/b/32511). |
| - Added the framecapture example to the default build (merge request 2235) |
| - Fixed crash with ACID3 test on Symbian |
| - Fixed security issue XSL stylesheets and security origins. |
| |
| QtSql |
| ----- |
| |
| - [QTBUG-5373] Fixed QSqlRelationalTableModel doesn't correctly work with |
| relation in other database schema. |
| - [QTBUG-5298] (OCI) Fixed QSqlDatabase.tables() does not work with system |
| tables. |
| - [QTBUG-6421] Fixed setForwardOnly() for both OCI and SQLite. |
| - [QTBUG-6618] (ODBC) Fixed segfault when error string is larger than 256 |
| chars. |
| - [QTBUG-4461] (OCI) Fixed problem with clobs being handled as binary. |
| |
| QtSvg |
| ----- |
| |
| - QSvgRenderer |
| * [QTBUG-6867] Fixed regression in the parsing of paths with relative |
| offsets. |
| * [QTBUG-6899] Fixed crash when parsing invalid coordinate list. |
| - QtXmlPatterns |
| * [QTBUG-6771] Fixed static builds. |
| |
| Qt Plugins |
| ---------- |
| |
| - JPEG plugin |
| * Remove obsolete parameter string handling. |
| * [QT-2023] Re-implement ScaledSize, ClipRect, ScaledClipRect with |
| libjpeg features for greater performance. |
| - PBM plugin |
| * [QTBUG-6937] Use Mono instead of MonoLSB when writing pbm files. |
| - TIFF plugin |
| * [QTBUG-6870] BitsPerSample should default to 1 in TIFF files. |
| - PNG plugin |
| * [QTBUG-7161] Avoid a deep copy of QImage::bits() in the png writer. |
| |
| |
| **************************************************************************** |
| * Platform Specific Changes * |
| **************************************************************************** |
| |
| Qt for Unix (X11 and Mac OS X) |
| ------------------------------ |
| |
| - [QTBUG-6755] Ensure we don't call select(2) with a negative timeout |
| if the timer expires during timeout recalculation. |
| - Added mkspecs for Sun CC that enable -library=stlport by default, |
| to restore STL capability with that compiler. |
| - [QTBUG-6576] Fixed compilation on HP-UX 11.11. |
| - [QTBUG-6961] Fixed compilation on HURD. |
| |
| Qt for Linux/X11 |
| ---------------- |
| |
| - [QTBUG-5732] Fixed querying of GLX extensions under X11. |
| - [QTBUG-5547] Fixed handling of the "..." button. |
| - Added new mkspec for Maemo targets (linux-g++-maemo). |
| - Added new mkspec for Scratchbox host compiler (unsupported/linux-host-g++). |
| - QGuiEventDispatcherGlib (internal class) |
| * Fix regression introduced in 4.6.0 that could cause X11 event |
| processing to starve timer events. |
| - QFileSystemWatcher |
| * [QTBUG-4840] Fix memory leak in the dnotify implementation. |
| - QIcon |
| * [QTBUG-6121] Fixed a problem causing svg-based icon themes to look fuzzy. |
| - QGtkStyle |
| * [QTBUG-6484] Ensure that gtk-enable-mnemonics is respected. |
| |
| Qt for Windows |
| -------------- |
| |
| - [QTBUG-5145] Compile fixes for win32-icc. |
| - QAtomicPointer |
| * [QTBUG-6079] Fix compilation for 64-bit Windows targets. |
| - QEventDispatchWin32 (internal class) |
| * [QTBUG-6083] Fix a performance regression introduced in 4.6.0 |
| that would cause all Qt posted events to be sent at 15-16ms |
| intervals (instead of as quickly as possible). |
| - Vista/XP styles |
| * [QTBUG-6271] Fixed a compatibility issue with MDI windows in |
| certain non-standard themes. |
| |
| Qt for Mac OS X |
| --------------- |
| |
| - QPixmap |
| * [QTBUG-5070] Fixed a crash on Mac that could occur when loading |
| pixmaps of different sizes into the same QPixmap object. |
| - [QTBUG-6973] Fixed a memory leak when using QWidget::setWindowIcon() in |
| Carbon. |
| - [QTBUG-5186] Fixed a bug which caused drag and drop icons to show |
| incorrectly. |
| - [QTBUG-6636] Fixed a crash due to stack overflow in QColorDialog on Cocoa. |
| - [QTBUG-6378] Fix a text cursor rendering bug. |
| - [QTBUG-6636] Fixed a crash when calling removeToolBar on Mac native toolbars |
| using Cocoa. |
| - [QTBUG-5613] Fixed a bug where the application refused to quit when showing |
| a single modal dialog. |
| - Gestures are now available for the Carbon port also when building Qt against |
| SDK < 10.6 |
| |
| Qt for Symbian |
| -------------- |
| |
| - QApplication |
| * [QTBUG-6098] Added a flag to avoid construction of application panes. |
| - Other: |
| * [QTBUG-4990] Rewrote most of the regular pointer handling. |
| |
| |
| **************************************************************************** |
| * Tools * |
| **************************************************************************** |
| |
| - Designer |
| * [QTBUG-6863] Fixed static linking on Mac. |
| * [QTBUG-6760] Fixed display of action shortcut in action editor. |
| * [QTBUG-6505] Fixed handling of QHeaderView properties. |
| * [QTBUG-5335] Fixed handling of layout margins of custom containers. |
| |
| - uic |
| * [QTBUG-5824] Fixed code generation to generate a call to |
| QMainWindow::setCentralWidget() for promoted widgets as well. |
| |
| **************************************************************************** |
| * Important Behavior Changes * |
| **************************************************************************** |
| |
| - Phonon |
| * Include headers have been changed. The only official method for |
| including Phonon headers is <phonon/ClassName> or |
| <phonon/classname.h>. This change was necessary because of |
| frameworks on Mac. |
| |
| Compatibility is provided for <Phonon/*> includes, but is not |
| guaranteed to work. Including <phonon> and <Phonon> is not |
| supported. |
| |