Revision control
++ 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:
++
++
++ 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.
++