Qt 4.7.2 is a bug-fix release. It maintains both forward and backward compatibility (source and binary) with Qt 4.7.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.7 The Qt version 4.7 series is binary compatible with the 4.6.x series. Applications compiled for 4.6 will continue to run with 4.7. Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker or the Merge Request queue of the public source repository. Qt Bug Tracker: http://bugreports.qt.nokia.com Merge Request: http://qt.gitorious.org **************************************************************************** * Library * **************************************************************************** QtCore ------ - QMutex * [QTBUG-16115] Fixed deadlock when calling tryLock repeatedly. - QStateMachine * [QTBUG-14491] Fixed compilation on AIX 5.3 with gcc. - QThread * [QTBUG-15378] QThread::exec returaed immediately if QThread::exit had been called when event loop was not running. QtGui ----- - Painting * [QTBUG-14907] Fix OpenVG painting artifacts after restoreState(). * [QTBUG-15320] QPainter::drawRect crashed when drawing a null QRectF with OpenGL. * [QTBUG-15693] Prevent crash in drawhelper code when the cpu has MMXEXT but no SSE. - QDoubleValidator * [QTBUG-14935] With some locales, QDoubleValidator would not accept "C" locale valid numbers. - QFileDialog * [QTBUG-17298] QFileDialog::getOpenFileNames didn't show any file. - QGraphicsView * [QTBUG-16063] Fix precision loss when querying micro focus rectangle in QGraphicsView. - QPainterPath * [QTBUG-16377] Prevent QPainterPath::connectPath() returning incorrect path, which caused OpenGL paint engine to crash. - QTableWidget * [QTBUG-15973] Resizinag a QTableWidget column where a cell contains a QProgressBar made it crash. - QTextDocument * [QTBUG-15777] Fxied crash in QTextDocument::markContentsDirty. - QTextLayout * [QTBUG-15823] Fixed crash in QTextLayout when drawing full width selection spanning multiple QTextLine's. - QWidget * [QTMOBILITY-645] Send WinIdChange event when winId is set to zero. The window handle of a native widget may be set to zero in two situations: (i) temporarily, during reparenting and (ii) during widget destruction. Previously, no WinIdChange event was sent in either of these cases; now, it is sent in both cases. QtNetwork --------- - Bearer Management * [QTBUG-15276] Fixed possible crash when parsing new connection. - QUrl * [QTBUG-16425] QUrl::setUrl() did not call detach(). QtQuick ------- - [QTBUG-14374] Fixed broken alignment of rich text. - [QTBUG-14727] QML Text element did not play nice with transformations. - [QTBUG-14761] Fixed memory leak in QDeclarativeComponent. - [QTBUG-14830] Fixed crash when adjusting width inside onWidthChanged. - [QTBUG-15710] Ensure header is considered when positioning content with snapping. - [QTBUG-16365] When using a PathView with a VisualDataModel which in turn used a Tree model (DirModel, for example), nothing was shown. - [QTBUG-16769] QML BorderImage failed if .sci file contained a URL. QtScript -------- - General * [QTBUG-17166] Fix ScopeChainNode memory leak in JavaScriptCore. - QScriptContext * [QTBUG-17137] Fix crash when generating backtrace involving a built-in (ECMA) function. - QScriptEngine * [QTBUG-16987] Ensure QScriptProgram objects are invalidated when engine is destroyed. * [QTBUG-16828] Fix alignment issue causing crashes on platforms with only 4-byte-aligned malloc'ed memory (e.g. Symbian debug builds). * [QTBUG-15144] Fix GC-related crash in QScriptValue::setData(). * [QTBUG-15079] Fix crash when QScriptClass property getter returns an invalid value. * [QTBUG-13440] Fix bug that caused Math.random() not to produce random values. - QScriptValue * [QTBUG-14801] Fix crash in QScriptValue::construct() when the function throws a non-Object value. QtSql ----- - [QTBUG-14132] Fix errors in Oracle (xe) stored procedures with bind variables. - [QTBUG-14831] Fix regression in dynamic sorting of a QSortFilterProxyModel on a QSqlTableModel with OnManualSubmit. - [QTBUG-17076] Fix plugins/sqldrivers/oci compile error when using QT_NAMESPACE. **************************************************************************** * Platform Specific Changes * **************************************************************************** Qt for Linux/X11 ---------------- - [QTBUG-15008] Fix broken prefix setting in configure when EPOCROOT shell variable is set. Qt for Windows -------------- - QtQuick * [QTBUG-16885] QDeclarativeEngine::addImportPath() did not work if the drive letter is in lowercase. * [QTBUG-17360] Make sure $QTDIR/plugins/qmldebugging/tcpserver.dll is found in windows release builds. Qt for Mac OS X --------------- - [QTBUG-13772] Returning form fullscreen mode causes assertion failure. - [QTBUG-14023] Added missing plugins to debug-libs package. - [QTBUG-14420] Switching from an application with undocked widgets hid the application. - [QTBUG-15638] Fixed incorrect QComboBox drop-down menu Z-ordering. - [QTBUG-15666] Fixed crash when closing QFontDialog::getFont() dialog before its event loop finished. - [QTBUG-16279] Fixed deadlock in QSyntaxHighlighter::highlightBlock. Qt for Symbian -------------- - Multimedia * [QTBUG-17040] Prevent menu and native title pane area popping up when setting fullscreen mode off during video playback. - Packaging changes * [QTBUG-17399] Remove sqlite3 from Qt SIS for S60 3.2 and 5.0 to allow Nokia Content Signing, which doesn't permit sis files to have other sis files embedded inside. - Paging changes * [QT-3503] Remove PAGED keyword from all Qt-based binaries for MMP-based build systems (abld, SBSv2 (a.k.a. Raptor)). This changes the code paging field in the Symbian (E32Image) header from "paged" to "default". Thus it is left to the configuration of the particular device whether paging is used for the binary or not. All devices that support code paging should have it turned on (the value is stored in the HAL, so can be checked using eg. fshell); data paging may or may not be turned on depending on the device characteristics. Leaving both code and data paging as "default" means that any limitations in the device (eg. around flash wear) can be controlled by that device by disabling the appropriate types of paging rather than being forced by the binary (which may be deployed to several different devices with different characteristics). - Phonon MMF backend * [QTBUG-11436] Added a MediaObject property which allows the client to specify which Internet Access Point should be used for streaming. - QApplication * [QTBUG-15915] Fix crash when creating more than one QApplication in single test case. * [QTBUG-16065] QApplication object with QApplication::GuiServer type caused crash on Symbian devices. - QDesktopWidget * [QTBUG-16095] Resize event for QDesktopWidget was sent too early. - QDialog * [QTBUG-16277] Fix fullscreen/Maximized dialog misplacement in Symbian. * [QTBUG-16110] QMessageBox softkeys were dimmed when application returned to foreground. - QEventDispatcherSymbian * [QTBUG-16380] Fix leaking of RTimer handles. - QFileDialog * [QTBUG-16204] Fix using QFileDialog statics in Symbian. - QFontDatabase * [QTBUG-16514] Avoid collision of application fonts. - QGraphicsView * [QTBUG-16932] Fix rendering errors on QGraphicsView with OpenVG engine. - QLineEdit * [QTBUG-16238] Fix one character displacement for cursor in line edits. - qmake & mkspecs * [QT-4193] Only add ICON for application projects in symbianpkgrules.pri * [QTBUG-13159] Allow pkg_prerules and pkg_postrules to be targeted to separate files. * [QTBUG-13367] Make default application deployment removable & added .flags modifier support for DEPLOYMENT items in Symbian. * [QTBUG-14280] Implement support for DEPLOYMENT.display_name in Symbian. * [QTBUG-13917] Localize .loc and .pkg content based on TRANSLATIONS. * [QTBUG-15159] Use include(original mkspec) instead of copying of mkspec to default. * [QTBUG-15393] Resolve EPOCROOT in qt.conf using same logic as in .pro. * [QTBUG-15501] Fix symbian-mmp.conf include path. * [QTBUG-15539] Use parent class function to generate Makefile headers. * [QTBUG-14472] Add NetworkServices capability automatically for network apps. * [QTBUG-14736] Add libinfix support for QML plugins in Symbian. * [QT-4375] Fix incorrect file name case for OpenGL libraries in symbian.conf. * [QTBUG-16172] Use relative include instead of absolute in default qmake.conf. * [QTBUG-16221] Fix libinfixed usage in Symbian when def files are used. * [QTBUG-16261] Fix infinite loop in qmake when reading malformed .ts files. * [QTBUG-16298] Ignore static_and_shared in Symbian builds. * [QTBUG-16477] Fix compile error when QT_NO_BEARERMANAGEMENT is defined. * [QTBUG-13769] Generate freeze targets in Symbian. * [QTBUG-16691] Remove toolcheck from generic clean targets for symbian-sbsv2. * [QT-4476] Fixed UTF-8 application names in device application menu. * [QTBUG-16753] Improved QMAKE_POST_LINK support in symbian-sbsv2. * [QTBUG-16881] Fix QMAKE_POST_LINK for targets with special characters. * [QTBUG-16888] No longer replace dash and dot in TARGET with underscore. * [QTBUG-17187] Ensure that package generated against Symbian^3 SDK has no Symbian^1 platforms as dependencies. * Fix partial upgrade package UID for libinfixed Qt. * Cleaned up sis_targets.prf. - QNetworkProxyFactory * [QTBUG-13857] Added systemProxyForQuery() for Symbian, allowing network proxies configured on the device to be used by applications. - QPaintEngine * [QTBUG-16008] Fixed broken constant alpha blending on ARMV6. * [QTBUG-16240] Fix blurry text in word-wrapped, center-aligned text items with OpenVG. - QSystemSemaphore * [QTBUG-16615] Fix QSystemSemaphore handle management issues in Symbian. - qtmain.lib * [QTBUG-14735] Use qtmain.lib to provide entry point for all applications. - QtQuick * [QTBUG-15405] QML Plugins were not loaded when installed on different drives. - QtScript * [QTBUG-14293] Enhanced JavaScript heap allocator. * [QTBUG-15800] Creating QScriptEngine on the heap caused app crash. * [QTBUG-15847] Add compiler optimizations. * [QTBUG-16685] Fix crash in JavaScript stack allocator. - QWidget * [QTBUG-16578] In cases where the widget was created from the event loop instead of main(), the middle three softkeys would not get the right visibility and would leave a "hole" in the application where one could see what was beneath it. * [QT-4416, QTBUG-17288] On devices which lack support for transparency in EGL surfaces, setting Qt::WA_TranslucentBackground on a widget whose windowType() is Qt::Window causes that widget to be rendered using the raster graphics system. - Tool scripts * [QTBUG-13886] Disallow patching capabilities of executables. * [QTBUG-13891] Add Location as self signable capability in patch_capabilities.pl. * [QTBUG-15561] Only patch package content that is necessary for self-signing. * Fix epocroot handling in createpackage.pl script. * Unify epocroot usage in createpackage and patch_capabilities scripts. **************************************************************************** * Tools * **************************************************************************** - qmake * [QTBUG-14357] Make qmake to pass all UTF-8 characters unchanged through parser.