Qt Changelog

New in version 5.4.1

February 24th, 2015
  • Qt 5.4.1 restores binary compatibility for Qt 5.3.2 (and the Qt 5 series) on Windows. Unfortunately Qt 5.4.0 broke binary compatibility on Windows when using MSVC 2012 or MSVC 2013, which is now fixed in Qt 5.4.1, and thus it maintains backward and forward compatibility with the Qt 5 series (except for Qt 5.4.0). Qt 5.4.1 also fixes many of the known issues of Qt 5.4.0, including building Qt on Linux without dbus (QTBUG-43205). Starting with Qt 5.4.1, QtDBus is enabled for all builds.
  • Other important fixes in Qt 5.4.1 include enabling JIT by default in the Qt Quick Engine (QTBUG-43171), a couple of critical fixes to OpenGL (QTBUG-43178 and QTBUG-43318), and fixes to Mac binaries (QTBUG-42594, QTBUG-43100). Qt 5.4.1 also provides a large number of improvements to WinRT (for example QTBUG-41769, QTBUG-43862, and QTBUG-44196), and adds support for Windows 10 Technical Preview (QTBUG-43413).
  • The device creation reference stacks for embedded Linux and embedded Android have also been updated to use Qt 5.4.1. There are some improvements in functionality, for example better support for compiling projects using embedded Linux toolchains and having add-on modules built into the image included in the generated Qt Creator custom Kit.

New in version 5.4.0 (December 11th, 2014)

  • RENEWED WEB STORY:
  • HTML5 and Web technologies have become more and more important over the last years, and we have spent the last year developing a completely renewed Web offering for Qt. The Qt WebEngine module is the result of a long-term R&D project where we adopted the Chromium Web engine for use within Qt. With Qt 5.4, it is fully supported on the most used desktop and embedded platforms. Qt WebEngine provides you with an easy-to-use API to embed Web content in both Qt Widgets and Qt Quick based applications.
  • The new Qt WebChannel module provides a simple-to-use bridge between QML/C++ and HTML/Javascript. This enables the creation of hybrid applications that use both Qt and Web technologies. Communication between both sides happens by exposing QObjects in the Web context. The module works not only with Qt WebEngine, but also with any other browser engine that has support for Web sockets.
  • As a third component, Qt 5.4 introduces a Technology Preview of a new module called Qt WebView. The Qt WebView module offers a more limited API to embed the web browser that is native to the underlying operating system for use cases where the full Qt WebEngine isn’t needed, or where it can’t be used because of restrictions coming from the underlying OS. In Qt 5.4, the Qt WebView module supports iOS and Android.
  • Together with the Qt WebSockets module introduced in Qt 5.3, Qt now has great support for many of the latest Web technologies and makes interacting with Web content very easy. Qt WebEngine and Qt WebView make it very easy to embed HTML5, Qt WebChannel creates the communication channel between Qt and HTML5 that is required for hybrid applications, and Qt WebSockets allows for an easy communication between Qt and many Web services.
  • Qt 5.4 also still contains the older Qt WebKit module. Qt WebKit is still supported, but as of Qt 5.4 we consider it done, so no new functionality will be added to it. We are also planning to deprecate Qt WebKit in future releases, as the new Qt WebEngine provides what is needed. In most use cases, migrating from Qt WebKit to Qt WebEngine is rather straightforward. If you are starting a new project that requires web capabilities, we advise that you already start using Qt WebEngine.
  • QT FOR WINRT | COMPLETING OUR CROSS-PLATFORM OFFERING:
  • The second big new feature of Qt 5.4 is the completion of our cross-platform story with the full support for Qt on Windows Runtime. Qt for Windows Runtime was already added as a supported Beta to Qt 5.3, and has now reached the state where it is a fully supported part of Qt. With Qt for Windows Runtime, you can create applications for the Windows Store, targeting both Windows Phone 8.1 and above as well as Windows 8.1 and newer.
  • This port completes our cross-platform story and we feel that Qt now supports all currently relevant desktop, embedded and mobile operating systems.
  • GRAPHICS UPDATES:
  • Qt 5.4 brings also a lot of other new features and improvements. One focus are has been around graphics. With Qt 5.4, we now introduce better support for high-resolution displays for our desktop platforms. The support is still considered experimental in Qt 5.4, if you are interested, check out the overview documentation.
  • OpenGL support on Windows has been problematic in a few cases, since there aren’t always good drivers available. To help with this problem, Qt now has the capability to dynamically select the OpenGL implementation that is being used at application start-up time. Qt will now choose between using the native OpenGL driver, the ANGLE’s OpenGL ES 2.0 implementation that translates to DirectX or a pure Software rasterizer.
  • Qt Data Visualization has been updated to version 1.2 including additional features such as volume rendering and texture support for surface graphs and performance improvements. Qt Charts has now been updated to version 2.0 including better Qt 5 modularization, binary packages and minor improvements.
  • Other improvements on the graphics side is the new QOpenGLWidget class that replaces the old QGLWidget class from Qt 4 and allows us to deprecate the old Qt OpenGL module as all relevant functionality can now be found in Qt Gui. QOpenGLContext can now wrap existing native contexts. You can use the new QQuickRenderControl to render Qt Quick scenes into an offscreen buffer. For more details check out this blog post.
  • Finally, Qt 5.4 contains a technology preview of our new Qt Canvas3D module, that implements a WebGL like API for Qt Quick. This module makes it very easy to use Javascript code using WebGL within Qt Quick.
  • OTHER NEW FEATURES:
  • A large amount of other new features have also found their way into Qt 5.4. I’ll just mention a few of them in this blog post.
  • Qt now supports Bluetooth Low Energy on Linux using BlueZ. Support for other platforms will come in later versions of Qt. Bluetooth LE makes it possible to communicate with many modern Bluetooth devices such as e.g. wearables.
  • On Android we now have native looking Qt Quick Controls, as well as smaller deployment packages and faster application startup times. For iOS and Mac OS X, we have now support for the latest operating system versions, XCode 6 and the new code signing style required to push applications into the App Store. We especially worked hard to fix all issues related to the new style on Mac OS X 10.10.
  • Qt Qml comes now with support for Qt State Machines through the new QtQml.StateMachine import, and Qt Core has gained a new QStorageInfo class giving you information about mounted devices and volumes.
  • Qt Quick Controls now also come with a brand new and great looking ‘flat style’ that can be used on all platforms.
  • Qt 5.4, also comes with a brand new version of Qt Creator, Qt Creator 3.3. For details on all the new things in there check out our separate blog post.
  • QT FOR DEVICE CREATION:
  • We now have preliminary support to run Qt Applications on Wayland using the Weston compositor on i.MX6 based devices, including support for Video and Qt WebEngine.
  • We added a new B2Qt Utils module that gives easy access to device-specific settings such as the display backlight, hostname or power state from both C++ and QML. The B2Qt Wi-Fi module is now officially supported and makes it easy to configure your Wi-Fi network.
  • With this version, we have also added new hardware reference platforms, including a low-end profile for the GPU-less Freescale Vybrid. The complete list of reference hardware supported by Qt for device creation can be found in the documentation.
  • Apart from these new features we have added a large amount of improvements:
  • eAndroid Qt Multimedia plugin update: The implementation of Qt Multimedia for embedded Android has been refactored, resulting in a cleanly separated and easier maintained plugin for that platform.
  • SD Card Flashing Wizard for easier b2qt image deployment: Simple wizard for writing system image to SD card; Integrated into Qt Creator
  • BYOS (Build Your Own Stack) Improvements: Improved scripts for initializing and managing the Yocto build environment: Using repo tool for managing the numerous meta repositories needed for different devices.
  • eLinux: Camera support for i.MX6 devices: All necessary GStreamer plugins for using camera in Qt Quick applications are now integrated into reference device images; MIPI camera support added
  • QT QUICK WITHOUT OPENGL:
  • Another great new feature for our embedded customers is the new Qt Quick 2D Renderer module. This new commercial add-on allows using Qt Quick on embedded devices that have no OpenGL hardware acceleration. The new Qt Quick2DRenderer module can render most of Qt Quick using pure software rasterization or 2D hardware acceleration through e.g. DirectFB or Direct2D. The module support all of Qt Quick with the exception of OpenGL shaders and particles.
  • This enables the creation of Qt Quick based user interfaces with a modern look and feel on lower end devices than before. In addition, the ability to use the Qt Quick API across a device portfolio spanning devices both with and without OpenGL significantly reduces the amount of UI code you need to write and maintain. To showcase the Qt Quick 2D Renderer’s capabilities, we have added the Toradex Colibri VF50 and VF61 devices as new reference hardware to the Boot to Qt software stack, demonstrating our ability to run on the Freescale Vybrid SoCs.
  • INTRODUCTION OF LGPL V3:
  • As announced earlier, the open-source version for Qt 5.4 is also made available under the LGPLv3 license. The new licensing option allows us at The Qt Company to introduce more value-add components for the whole Qt ecosystem without making compromises on the business side. It also helps to protect 3rd party developers’ freedom from consumer device lock-down and prevents Tivoization as well as other misuse.
  • In Qt 5.4, a few modules are exclusively available under GPL/LGPLv3 or commercial license terms. These modules are the new Qt WebEngine and the Technology Previews ofQt WebView and Qt Canvas 3D. The Android style is only available under a commercial license or the LGPLv3. You can find more details here.
  • NEW FEATURES:
  • Qt GUI:
  • QOpenGLContext is now able to adopt existing native contexts (EGL, GLX, …). This allows interop between Qt and other frameworks, like game engines.
  • OpenGL ES 3.0/3.1 support is improved. The header file for the highest usable ES version (gl31.h, gl3.h or gl2.h) is now automatically included by Qt’s headers in -opengl es2 builds. Vertex array objects, framebuffer blits and multisampling are now supported via the standard GLES3 functions, where applicable.
  • Dynamic OpenGL implementation selection on application startup is now available on Windows when configured with -opengl dynamic. This allows using either opengl32.dll or ANGLE’s OpenGL ES 2.0 implementation in Qt and applications without the need for two separate builds of the binaries.
  • QOpenGLWidget: The modern replacement for QGLWidget and the counterpart of QQuickWidget.
  • QOpenGLWindow: Convenience class for performing OpenGL drawing onto a QWindow.
  • QRasterWindow: Covenience class for performing software-based drawing via QPainter onto a QWindow.
  • Support for 10-bit per color channels images. These can be rendered to and from, though internally the raster engine will still only use 8-bit per color channel. If used as the internal format of a QOpenGLFramebufferObject the OpenGL paint engine is able to render in full precision if supported by the OpenGL driver.
  • WinRT: Added support for native file dialogs
  • Qt Core:
  • WinRT: Added support for native settings container (local and roaming):
  • QStorageInfo: Class for providing information about currently mounted storage volumes and drives.
  • QByteArrayList: Convenience class adding similar extra methods on top of QList as QStringList does to QList.
  • QTabletEvent: added information about which stylus buttons are pressed; rotation and tangentialPressure have consistent ranges across platforms; proximity events include the type of stylus or other tool in use; manual tests and debug output are improved for better verification of functionality.
  • Qt Widgets:
  • Improved scaling of widget styles based on DPI.
  • Android style now also works when not using Ministro for deployment
  • Qt QML:
  • Declarative State Machine (DSM): QML wrapper for Qt’s State Machine Framework.
  • Qt Quick:
  • QQuickRenderControl is made public. This API allows efficient rendering of Qt Quick 2 scenes into framebuffer objects. The contents can then be used in arbitrary ways in Qt-based or 3rd party OpenGL renderers.
  • Introduced overlay and “pull back” headers and footers for ListView:
  • Added QQuickFontMetrics, which provides a subset of QFontMetricsF’s API.
  • Added QQuickTextMetrics, which provides a declarative API for the functions in QFontMetricsF which take arguments.
  • QQuickWidget is now supported on Android too.
  • Qt Quick Controls:
  • Android style
  • Qt Bluetooth:
  • Support for Bluez5
  • Tech Preview of Bluetooth Low Energy (client side support only, on Bluez 4 & 5)
  • QPA plugins:
  • The Wayland platform plugin is now part of the release.
  • XCB will now support screen with a depth of 30 (10 bit per color channel).
  • More font settings are parsed by fontconfig and GTK platform backends.
  • More categorized logging is in use so that you can enable it in the standard ways (qtlogging.ini etc.) instead of needing to set obscure environment variables or uncomment #defines. The log also provides more complete information, especially about events.
  • Support for integer device pixel ratios larger than one has been added to the XCB plugin. The ratio is controlled by the environment variable QT_DEVICE_PIXEL_RATIO.
  • Qt WebEngine:
  • New module with a web engine based on Chromium.
  • Qt WebKit:
  • Added support for OpenGL accelerated 2D canvas to QtWebKitWidgets.
  • OpenGL acceleration now also works with QOpenGLWidget.
  • The Qt WebKit module is considered done. It will in future be replaced by Qt WebEngine. This applies to the Widgets as well as to the QML API of Qt WebKit.
  • Qt WebChannel:
  • Introduction of a new module to bridge the gap between QML/C++ and HTML/JavaScript for Qt WebKit and other browser engines.
  • Qt Windows Extras:
  • Multiple thumbnail images when hovering over an application’s taskbar.
  • Qt Sensors:
  • Windows Phone: Added compass and ambient light sensors
  • Qt SQL:
  • Windows Phone: Added support for sqlite
  • Qt Network:
  • New bearer plugin for Android
  • PLATFORMS:
  • Qt for WinRT supported platform
  • Windows Phone 8.1 minimum supported version
  • iOS:
  • Accessibility support added. This enables Qt applications to be read by VoiceOver.
  • iOS port now uses fat builds with both 32-, and 64-bit support.
  • Improved support for iPhone6/6+.
  • QtQuick Controls now uses native text selection and popup menus.
  • Default theme fonts now uses Dynamic Type, which is based on user system settings.
  • DEPRECATED FEATURES:
  • Qt OpenGL:
  • The Qt OpenGL module (which contain classes that start with “QGL”) is now deprecated in favor of the Qt GUI module (which contain classes that start with “QOpenGL”). QGLWidget can now be replaced by QOpenGLWidget.

New in version 5.3.1 (June 27th, 2014)

  • QtCore:
  • QAbstractProxyModel:
  • Fixed QAbstractProxyModel::sibling to work in the same manner as the
  • Qt4 code used to behave. Previously, Qt5's implementation would treat
  • the row and column as positions in the source model instead of a
  • position in the proxy itself.
  • QtGui
  • Text:
  • [QTBUG-36083] Respect QFont::fixedPitch() for fallbacks when font
  • family cannot be matched.
  • [QTBUG-37190] Fixed crash when trying to load a font from invalid
  • data.
  • QtSql
  • QDB2 and QODBC
  • [QTBUG-39137] Fix error handling problem caused by unintialized variable
  • passed to SQLNumResultCols.
  • QPSQL
  • [QTBUG-12477] Fix PSQL column metadata.
  • QSqlQuery
  • Fix misbehavior of seek in special query positions BeforeFirstRow and
  • AfterLastRow. (commit 3e6e70bddd84536deaae69421d05785ae6ce28cd)
  • [QTBUG-33169] Fix for bindvalue(int) memory allocation problem.
  • QtWidgets
  • QMenu:
  • [QTBUG-38498] Accessibility: Menus are now read by screen readers
  • with more reliability.

New in version 5.3.0 (May 20th, 2014)

  • NEW FEATURES:
  • Qt Core:
  • Logging: You can now configure logging rules (i.e. which message types for which categories are printed) on the filesystem, in QtProject/qtlogging.ini. You can also using qCDebug and friends in a printf-style way, in addition to the streaming operator syntax.
  • Qt GUI:
  • Qt’s iOS plugin now implements support for input methods, spell checking and word completion.
  • Embedded Linux platform specifics (plugins like eglfs and linuxfb) are now documented.
  • New classes QPageSize and QPageLayout to manage PDF and printed document page sizes and layout.
  • QPdfWriter uses QPageSize and QPageLayout, can now set page orientation and paint resolution.
  • EGL support is now able to cope with OpenGL ES 3.0 and desktop OpenGL versions
  • Qt Print Support:
  • New QPA class QPlatformPrintDevice to abstract platform print device hardware, new implementations for Windows, Mac and Linux.
  • QPrinterInfo provides more details on the print device hardware
  • QPrinter uses QPageSize and QPageLayout to improve page layout handling
  • QPrinter has had the behaviour of most functions standardised across all platforms (as detailed below)
  • Mac can now have each painted page with a different orientation, and can set Collate Copies and Document Name.
  • Mac and Windows now support setting Document Creator and Duplex Mode
  • Mac and Linux now support using Windows Page ID (DMPAPER values)
  • Qt Quick:
  • Introduced QQuickWidget for easy and flexible integration of Quick views with QWidget-based UIs.
  • MultiPointTouchArea will either handle the mouse as a single touch point, or allow mouse events to pass through if mouseEnabled is false
  • Qt Quick Controls:
  • The Calendar control was added. Calendar allows selection of dates from a grid of days, similar to QCalendarWidget.
  • MenuStyle and MenuBarStyle introduced.
  • Qt Quick Dialogs:
  • The QML implementations are now built with QtQuick.Controls (and therefore the source is moved from qtdeclarative.git to qtquickcontrols.git), which enables adding some features such as folder shortcuts (both standard locations and bookmarked locations), and comboboxes for file filters and writing systems.
  • There is a new Dialog type which provides only the standard buttons, so that you can construct dialogs with arbitrary contents, such as various types of input dialogs and pickers.
  • Qt Network:
  • Support for the SPDY protocol (version 3.0) was added.
  • XCB/X11 platform plugin:
  • Support for XInput2 smooth scrolling. The plugin now listens for XInput2 scrolling events which means it will respond to high resolution smooth scrolling events on devices where they are supported. Currently this is mainly touch pads.
  • iOS platform plugin:
  • Support for input methods added.
  • Support for word completion and spell checking added.
  • Support for QClipboard added.
  • “Hide keyboard” gesture added.
  • Qt Multimedia:
  • A new QCameraInfo class was added. It allows to get static information about cameras such as physical position and sensor orientation. In addition, the class provides a way to list available cameras on the system and deprecates QCamera::availableDevices().
  • Qt WebKit:
  • Support for HTML5 Video Track. Subtitles and captions for HTML5 video.
  • Support for Indexed DB API. See http://www.w3.org/TR/IndexedDB/
  • Improved support for Mac HiDPI mode
  • Qt Positioning:
  • The module has been ported to Android and iOS. Android supports position and satellite updates while iOS supports position updates only.
  • Qt Bluetooth:
  • The module has been ported to Android.
  • Qt QML:
  • Profiling support for V4, using the same event types as the QML profiler.
  • Profile or debug multiple QML engines in one application with the new EngineControl debug service.
  • NEW MODULES:
  • Enginio A Backend-as-a-Service solution to ease the backend development for connected and data-driven applications.
  • Qt WebSockets An add-on module that implements the WebSocket standard (RFC 6455 – http://tools.ietf.org/html/rfc6455 ).
  • QT CREATOR 3.1:
  • Editors:
  • Better support of multiple editors/windows
  • C++:
  • Experimental new Clang based code model as opt-in
  • iOS:
  • Better support of multiple devices
  • QML:
  • Better Qbs support
  • Better defaulting/import resolving
  • Javascript profiler frontend (V4 only), integrated in QML profiler “events” and “timeline” views.
  • Debugger:
  • Improved LLDB support
  • Removed support for GDB builds without Python
  • Devices:
  • SSH parameters now available as QtC variables, e.g. for use in custom run configs
  • INSTALLATION:
  • New reference installers:
  • Qt for WinRT
  • Qt for Windows Phone
  • New target binaries:
  • Qt for MSVC 2013 (32 & 64 bit OpenGL and Angle)
  • DEPRECATED:
  • Mac OS 10.6 support is deprecated and scheduled for removal in Qt 5.4.

New in version 5.3 RC (May 8th, 2014)

  • NEW FEATURES:
  • Qt Core:
  • Logging: You can now configure logging rules (i.e. which message types for which categories are printed) on the filesystem, in QtProject/qtlogging.ini. You can also using qCDebug and friends in a printf-style way, in addition to the streaming operator syntax.
  • Qt GUI:
  • Qt’s iOS plugin now implements support for input methods, spell checking and word completion.
  • New classes QPageSize and QPageLayout to manage PDF and printed document page sizes and layout.
  • QPdfWriter uses QPageSize and QPageLayout, can now set page orientation and paint resolution.
  • EGL support is now able to cope with OpenGL ES 3.0 and desktop OpenGL versions
  • Qt Print Support
  • New QPA class QPlatformPrintDevice to abstract platform print device hardware, new implementations for Windows, Mac and Linux.
  • QPrinterInfo provides more details on the print device hardware
  • QPrinter uses QPageSize and QPageLayout to improve page layout handling
  • QPrinter has had the behaviour of most functions standardised across all platforms (as detailed below)
  • Mac can now have each painted page with a different orientation, and can set Collate Copies and Document Name.
  • Mac and Windows now support setting Document Creator and Duplex Mode
  • Mac and Linux now support using Windows Page ID (DMPAPER values)
  • Linux now requires CUPS 1.4 (RHEL 5 no longer supported)
  • Qt Quick:
  • Introduced QQuickWidget for easy and flexible integration of Quick views with QWidget-based UIs.
  • MultiPointTouchArea will either handle the mouse as a single touch point, or allow mouse events to pass through if mouseEnabled is false
  • Qt Quick Controls:
  • The Calendar control was added. Calendar allows selection of dates from a grid of days, similar to QCalendarWidget.
  • MenuStyle and MenuBarStyle introduced.
  • Qt Quick Dialogs:
  • The QML implementations are now built with QtQuick.Controls (and therefore the source is moved from qtdeclarative.git to qtquickcontrols.git), which enables adding some features such as folder shortcuts (both standard locations and bookmarked locations), and comboboxes for file filters and writing systems.
  • There is a new Dialog type which provides only the standard buttons, so that you can construct dialogs with arbitrary contents, such as various types of input dialogs and pickers.
  • Qt Network:
  • Support for the SPDY protocol (version 3.0) was added.
  • XCB/X11 platform plugin:
  • Support for XInput2 smooth scrolling. The plugin now listens for XInput2 scrolling events which means it will respond to high resolution smooth scrolling events on devices where they are supported. Currently this is mainly touch pads.
  • iOS platform plugin:
  • Support for input methods added.
  • Support for word completion and spell checking added.
  • Support for QClipboard added.
  • “Hide keyboard” gesture added.
  • Qt Multimedia:
  • A new QCameraInfo class was added. It allows to get static information about cameras such as physical position and sensor orientation. In addition, the class provides a way to list available cameras on the system and deprecates QCamera::availableDevices().
  • Qt WebKit:
  • Support for HTML5 Video Track. Subtitles and captions for HTML5 video.
  • Support for Indexed DB API. See http://www.w3.org/TR/IndexedDB/
  • Improved support for Mac HiDPI mode
  • Qt Positioning:
  • The module has been ported to Android and iOS. Android supports position and satellite updates while iOS supports position updates only.
  • Qt Bluetooth:
  • The module has been ported to Android.
  • Qt QML:
  • Profiling support for V4, using the same event types as the QML profiler.
  • Profile or debug multiple QML engines in one application with the new EngineControl debug service.
  • NEW MODULES:
  • Enginio A Backend-as-a-Service solution to ease the backend development for connected and data-driven applications.
  • Qt WebSockets An add-on module that implements the WebSocket standard (RFC 6455 – http://tools.ietf.org/html/rfc6455 ).
  • QT CREATOR 3.1:
  • Editors:
  • Better support of multiple editors/windows
  • C++:
  • Experimental new Clang based code model as opt-in
  • iOS:
  • Better support of multiple devices
  • QML:
  • Better Qbs support
  • Better defaulting/import resolving
  • Javascript profiler frontend (V4 only), integrated in QML profiler “events” and “timeline” views.
  • Debugger:
  • Improved LLDB support
  • Removed support for GDB builds without Python
  • Devices:
  • SSH parameters now available as QtC variables, e.g. for use in custom run configs
  • INSTALLATION:
  • New reference installers:
  • Qt for WinRT
  • Qt for Windows Phone
  • New target binaries:
  • Qt for MSVC 2013 (32 & 64 bit OpenGL and Angle)
  • DEPRECATED:
  • Mac OS 10.6 support is deprecated and scheduled for removal in Qt 5.4.

New in version 5.2.1 (February 5th, 2014)

  • IMPORTANT BEHAVIOR CHANGES:
  • [QTBUG-34345][QTBUG-26008][QTBUG-26430] QPrinter no longer allows you to set an invalid printer name.
  • [QTBUG-34141] Parsing of Qt::ISODate by QDate::fromString() and QDateTime()::fromString() is not as lenient as before, the date component separators are now required to be non-numeric. This means a string like "2000901901" will no longer be recognized as a valid ISO Date, but "2000/01/01" will still be even though it doesn't strictly meet the ISO format of "2000-01-01".
  • LIBRARY:
  • QtCore:
  • [QTBUG-35069] Fixed a bug that caused negative number input using '-' to be rejected because the current locale uses U+2212. QLocale::toString() as well as QIntValidator and QDoubleValidator now accept both '-' and U+2212, as well as the locale minus sign. QString also accepts '-' and U+2212.
  • Fixed sign conversion warnings in code using QMetaTypeId.
  • QTemporaryDir: Fixed a bug in QTemporaryDir name generator that dramatically reduced randomness of the name.
  • QThread: [QTBUG-34840] Fixed handle leaks on Windows.
  • QtGui:
  • [QTBUG-35421] Fixed crash when sending accessibility updates when the corresponding widget does not have a corresponding QAccessibleInterface. This showed on Mac for example with QStatusBar.
  • Qt's generic font database now adds OpenType fonts (.otf).
  • QKeySequence: [QTBUG-24406] return Qt::Key_unknown with invalid modifiers on OS X
  • Text: [QTBUG-35740] Fixed regression when shaping some strings containing characters from multiple fonts.
  • QtPrintSupport:
  • [QTBUG-34700][QTBUG-35500] Fixed bugs that caused QtPrintSupport not to report the correct the paper sizes on Windows and on OS X.
  • QtSql:
  • IBase support: [QTBUG-33345] Custom port numbers are now supported; [QTBUG-13435] Fixed the internal state of IBase driver after a failed open call.
  • MySQL / MariaDB support: [QTBUG-31124] Fixed handling of fractions of second.
  • Oracle support: [QTBUG-34794] Fixed the compilation
  • Sqlite support: [QTBUG-24200] Fixed handling of fractions of second; [QTBUG-35186] Fixed evaluation of driver options
  • QtTestLib:
  • [QTBUG-34630] The (default) plain text logger on Windows now logs to either the system debug log (in case no console is open), or stdout, not both.
  • QtWidgets:
  • QSpinBox: [QTBUG-20691] Entering positive values with the '+' prefix is now
  • allowed.
  • PLATFORM SPECIFIC CHANGES:
  • Android:
  • [QTBUG-34984] Added workarounds for OpenGL bugs on Samsung Galaxy Tab 3.
  • OS X:
  • [QTBUG-34411] Implemented QMainWindow::setUnifiedTitleAndToolBarOnMac.
  • X11 / XCB:
  • [QTBUG-32683] Fixed a bug that caused Qt applications to think the screen DPI had changed when it had not, after connecting or disconnecting monitors.
  • TOOLS:
  • Configure & build system:
  • [QTBUG-34949] EGL works with desktop OpenGL now
  • A build from source will not install the Qt DLLs into lib/ any more. The canonical location is bin/.
  • qmake:
  • [QTBUG-35530] Fixed the detection of multiple VS installations.
  • [QTBUG-35610] Fixed the generation of VS 2010 project files.
  • [QTBUG-32412] Numerous fixes to Windows PDB file handling.
  • [QTBUG-3883] Fixed make distclean not removing static library targets.
  • Added makespec for clang using libc++ on Linux.
  • qmake will not look for mkspecs/ directories in project trees any more. Use .qmake.conf and/or .qmake.cache to "anchor" project roots.

New in version 5.2 (December 12th, 2013)

  • Great Improvements for the Desktop:
  • Qt on desktop operating systems is the heart of Qt and has served as a stepping stone for the immense breadth of our operating system support throughout the years. That said a lot of improvements have happened with Qt 5.2 that are mainly targeting the desktop operating systems.
  • The Qt Quick Controls that were introduced for desktop in Qt 5.1 have received a lot of improvements and a couple of new control types.
  • Accessibility is now fully supported on all desktop platforms (and Android).
  • With Qt Windows Extras and Qt Mac Extras modules we are providing APIs to integrate better with native OS code.
  • Improved time zone and locale support with QTimeZone and QCollator
  • The Qt Widgets have also received multiple enhancements and a completely new class: QKeySequenceEdit
  • Bluetooth is now supported on Linux with the new Qt Bluetooth API
  • Qt on Mobile | Great Opportunities:
  • Qt 5.2 brings Qt to the largest mobile platforms, Android and iOS, and Qt applications can now run natively on all major desktop, embedded and mobile platforms. Qt 5.2 provides developers with great opportunities to be at the forefront of the global mobile markets.
  • Enterprise Mobility. Take your existing desktop or embedded application/services also to the largest mobile platforms by simply reusing your desktop/embedded code or re-scaling the UI to a small-screen layout. Eg. write a mobile client for your enterprise backend systems.
Bring Your Own Device (BYOD). Make an embedded device UI that can also be taken directly to your end users' phones or tablets. Automotive entertainment, remote controls, internet of things...
Cross-Platform Consumer Applications. Target the majority of devices out there with one code base using Qt. All major OSs and versions, phones, tablets. For mobile consumer app creation, we're specifically introducing a new, mobile-only tailored offering, Qt Mobile, with a flexible, subscription based license type.
Multiscreen applications. Qt applications can be designed to run everywhere: Desktop PCs, tablets, phones and separate embedded devices. With Qt Cloud Services you retain an un-interrupted user experience between the devices.
  • Most of the Qt APIs are supported in Qt 5.2 both on Android and iOS. Since these are new platforms, there are, however, some exceptions. Qt WebKit is not yet supported on these platforms (Qt WebKit can’t be brought to iOS due to App Store policies), but we are working on bringing an easy way to embed web content via Qt APIs to these mobile platforms in the future. In the meantime, we recommend the use of native web elements. For Android, there's a new Android extras module with a convenience API for Android JNI usage.
  • Enhanced Internals--More Power & Flexibility:
  • The former JavaScript engine, V8, which was used internally by Qt Quick, has been replaced with a completely new, Qt-specific engine. This new engine is now designed from scratch for the use case of QML and Qt Quick. It internally operates directly with Qt data types, avoiding many costly conversions. It has both a JIT and an interpreter which greatly extends the range of platforms and operating systems it can support. The interpreter also allows us to use the engine on iOS and comply with App Store policies.
  • New Scene Graph renderer. This new renderer improves the graphics performance of Qt Quick even further, freeing up more CPU time for the application and using the GPU in a much more efficient way. Read more from this blog post.
  • Continued Innovation, Enhanced APIs:
  • Qt Positioning API. Supported on all platforms using NMEA data, and using GeoClue on Linux
  • Qt Bluetooth API. Supported on Linux with Bluez 4.x and BlackBerry
  • Animations for QML that can not be blocked by high loads on the main thread
  • Additional mobile-specific controls for Qt Quick Controls
  • Qt WebKit has also received a major update now being based on a WebKit version from summer 2013. This includes many new features such CSS Blending, Geolocation, Web Notifications and a threaded garbage collector.

New in version 5.2 Beta 1 (October 25th, 2013)

  • Enhanced Internals — More Power and Flexibility:
  • Qt 5.2 introduces a new Scene Graph renderer. This new renderer improves the graphics performance of Qt Quick even further, freeing up more CPU time for the application and using the GPU in a much more efficient way.
  • The former JavaScript engine, V8, which was used internally by Qt Quick, has been replaced with a completely new, Qt-specific engine. This new engine is now designed from scratch for the use case of QML and Qt Quick. It internally operates directly with Qt data types, avoiding many costly conversions. It has both a JIT and an interpreter which greatly extends the range of platforms and operating systems it can support. The interpreter also allows us to use the engine on iOS and comply with iOS AppStore policies.
  • Some of the main new features of Qt 5.2 include:
  • Qt Bluetooth: supported on Linux with Bluez 4.x and Blackberry
  • Qt NFC: supported on Blackberry
  • Qt Positioning: supported on all platforms using NMEA data, and using GeoClue on Linux
  • Qt Windows Extras: Integrate with native code on Windows
  • Qt Mac Extras: Integrate with native code on Mac OS X
  • Qt Android Extras: Integrate with native code on Android
  • Improved time zone and locale support with QTimeZone and QCollator
  • Enhancements to multiple Qt Widgets and a new one, the QKeySequenceEdit class
  • Animations for QML that can not be blocked by high loads on the main thread
  • Some new features and mobile specific controls for Qt Quick Controls
  • Accessibility is now fully supported on all desktop platforms and basic support on Android.

New in version 5.2 Alpha (September 30th, 2013)

  • Android and iOS support:
  • Qt 5.2 is the first Qt release to fully support development of Qt applications for Android and iOS. A lot of work has gone into supporting these two platforms, and now make Qt a great solution for development of mobile applications.
  • With the exception of WebKit, all essential modules are supported in both Android and iOS. This includes all of Qt Core, Qt Network, Qt Gui, Qt Widgets, Qt Qml, Qt Quick and Qt Multimedia. From the Qt add-ons Qt Sensors, Qt Graphical Effects, Qt Positioning, Qt Script and Qt SVG are supported. On Android, Qt SerialPort and a special Qt Android Extras module are also supported.
  • New modules:
  • Qt Bluetooth is supported on Linux with Bluez 4.x and Blackberry
  • Qt NFC is supported on Blackberry
  • Qt Positioning is supported on all platforms using NMEA data, and using GeoClue on Linux
  • Qt Windows Extras Integrate with native code on Windows
  • Qt Mac Extras Integrate with native code on Mac OS X
  • Qt Android Extras Integrate with native code on Android
  • The last three add-ons contain platform specific additions, and complement the Qt X11 Extras module introduced with Qt 5.1.
  • Qt base modules:
  • Qt Core got some new functionality, most notably the new QTimezone and QCollator classes. QTimezone is integrated with QDatetime and now allows proper handling of timezones. QCollator allows for locale specific sorting of strings, a long outstanding feature in Qt. Qt Network has received some improvements in its SSL handling. Qt Widgets has gotten lots of smaller improvements and a new QKeySequenceEdit class. Our Accessibility support has been greatly improved, with support for Mac OS X, basic support on Android and a set of public APIs that allow implementing accessibility support for custom widgets.
  • Qt Qml and Qt Quick:
  • The QML engine has undergone some intensive work over the last 9 months, and the first results can be seen in Qt 5.2. Qt Qml is now using its own built-in Javascript engine and does not depend on V8 anymore. As such the QtJSBackend shared library has disappeared.
  • We are now using our own built-in engine instead of V8 for many reasons. One of the immediately visible benefits is that we are actually able to support Qt Quick 2 on iOS. In addition, the size of our Qml stack has decreased by around 5 MB and there’s one shared library less that needs to get deployed. Finally, it makes the whole stack a lot more maintainable and will thus allow us to improve the module at a faster pace in the future.
  • While the new engine is somewhat slower then V8 when it comes to pure Javascript performance, it allows us to optimise for the common use cases in QML and Qt Quick a lot better. Quite a lot of optimisation work is still ongoing now during the release cycle, and we expect to have comparable Javascript performance to Qt Script with 5.2.0. For QML bindings, we will see improvements for most use cases.
  • In addition, Qt Qml now supports File selectors to make it easier to customize your QML code depending on operating system and other variables.
  • Significant improvements also made it into Qt Quick. First and foremost, the module got a new scene graph renderer, that significantly reduces both CPU and GPU load for many use cases. The new Animator QML type offers animations that fully run on the rendering thread and won’t block or stutter even if your main thread has some long running calculations to perform.
  • The Qt Quick Controls have a couple of new Controls and features to offer. Switches and Busy Indicators got added, Table view now supports movable columns and extended selections. In addition, deployment has been greatly simplified.
  • Qt Creator:
  • Last but not least, we are planning to ship Qt 5.2 together with a new release of Qt Creator, Qt Creator 3.0. The new Creator will feature an improved Android support, initial iOS support, extensions for multiple screens, a cleanup in the Creator plugin APIs and initial support for lldb.

New in version 5.1.1 (September 3rd, 2013)

  • GENERAL:
  • Add support for Visual Studio 2013
  • Remove obsolete 'register' C keyword
  • Speed up font database loading with fontconfig
  • [QTBUG-32284] Fix incomplete override of QIODevice::open in QProcess and QLocalSocket
  • LIBRARY:
  • QtCore:
  • Add basic conversion functions from QVariant(QJsonValue)
  • Fix crash when re-creating QThreadData after initially destroying it
  • Fix the host_bins variable in the QtCore pkg-config file
  • QUrl stringprep: fix handling of U+0080: it's prohibited
  • QUrl stringprep: avoid recalculating the surrogates we already know
  • QUrl stringprep: fix handling of prohibited characters
  • QUrl stringprep: fix case folding from non-BMP to BMP
  • QUrl stringprep: recalculate the current position if the size changes
  • [QTBUG-24345] Prevent negative size in QBitArray, QVector and QVarLengthArray ctors
  • [QTBUG-25732] Mention QRect's int min/max constraints in detailed description
  • [QTBUG-29391] fix infinite loop in QProcessPrivate::drainOutputPipes
  • [QTBUG-29391] QWinOverlappedIoNotifier: fix race condition
  • [QTBUG-31341] Fix watch of files/folders with special characters
  • [QTBUG-31606] Fix dead lock in the Qt event handling
  • [QTBUG-31926] Fix the number precision in QJsonDocument.toJson() again
  • [QTBUG-32100] Remove default argument from declarations of qHash as friend
  • [QTBUG-32314] QDir::mkpath shouldn't fail if parent directory denies access
  • [QTBUG-32354] fix endless loop in QProcess/Win drainOutputPipes
  • [QTBUG-32500] Ensure that the user codecs are listed in QTextCodec::availableCodecs
  • QtDBus:
  • [QTBUG-27973] Fix disconnectFrom{Peer,Bus} when the connection failed
  • [QTBUG-31932] Don't crash if the relayed signal was emitted from the wrong thread
  • [QTBUG-32374] Fix QDBusAbstractInterface::isValid() for peer connections
  • QtGui:
  • Restore smooth-scaled drawing of 0.5x-2.0x scaled glyphs in the GL engine
  • QIcon: Avoid fetching twice the same pixmap
  • Fix FBO restoring in QOpenGLTextureGlyphCache
  • [QTBUG-28284] Set projection matrix for systems with OpenGL 3.1
  • [QTBUG-31443] QPdfWriter: Fix setting of paper size
  • [QTBUG-32193] REG: Fix crash when mixing projected/unprojected text painting
  • [QTBUG-32433] Detect popup window correctly in modal window blocked handling
  • QtNetwork:
  • Correct algorithm for digest auth when using the CONNECT verb
  • Add reconnect attempts in more cases in QHttpNetworkConnectionChannel
  • [QTBUG-32404] HTTP internals: do not access reply that was deleted already
  • [QTBUG-32534] QHttpMultiPart: fix data corruption in readData method
  • QtPrintSupport:
  • [QTBUG-31790] Initialize UI of widget-based dialog.
  • QtWidgets:
  • Display sizegrip on QMdiSubWindows, even on OS X 10.7 and later
  • Check if widget inherits from QTextEdit when drawing the frame
  • Fix QWidget::isActiveWindow for window containers
  • Hide placeholder text when QLineEdit has preedit text
  • [QTBUG-19036] Make *ItemBoundingRect modes work with custom shapes.
  • [QTBUG-29945] Fix dropshadow and blur graphics effects
  • [QTBUG-31044] QDockWidget: Keep position when undocking
  • [QTBUG-31569] If a QWidget is ignored for auto-quit, ignore its corresponding QWindow
  • [QTBUG-31664] Recognize separator item in QMenu
  • [QTBUG-31904] Fix rotation of text in vertical QDockWidget titlebars in QFusionStyle
  • [QTBUG-32054] Set correct cell when selecting custom color cell with arrow keys
  • [QTBUG-32061] Fix the cursor position of an empty QLineEdit with a placeholder text
  • [QTBUG-32177] Search toplevel when setting the active window from focus window
  • [QTBUG-32260] Consider virtual screen when determining dock widget visibility
  • PLATFORM SPECIFIC CHANGES:
  • Qt for Linux:
  • XCB: Don't use Xlib's XBell() function
  • XCB: Append 0-character to atom name string
  • Resolve modifier mask conflicts on X11
  • Fix system tray icon on X11
  • [QTBUG-31418] Fix for when we don't have XSettings
  • [QTBUG-32274] Fix handling of non-latin1 shortcuts
  • Qt for Mac:
  • Disable window restoration for the Mac font panel
  • Simplify qt_mac_cgimage_to_nsimage code
  • QMacStyle: fix auto-default button animation
  • Make the macx-xcode spec a wrapper around the default spec
  • Scope cached Mac SDK tool values by mkspec
  • Further followup to Q_OS_MACX changes
  • Fix QSpinBox clipping issue on Mac when frame=false
  • QMacStyle: enable scroll style changes for non-QScrollBars
  • Support Mac key equivalent Cmd+Period
  • Re-establish platform menu QObject hierarchy
  • [QTBUG-28336] Fixed broken prl files in debug-and-release framework builds of qt
  • [QTBUG-31477] Let Cocoa pick the right pixmap for menu item icons
  • [QTBUG-31532] Don't update the menubar when popups are shown
  • [QTBUG-31619] Cocoa save file dialog behavior fix
  • [QTBUG-31819] Fix shared color panel usage
  • [QTBUG-31562] Fix for OS X QFileDialog showing bundle as directory
  • [QTBUG-32440] Avoid a potential crash in unignoredChildren
  • [QTBUG-32831] Don't release the printer after using it to change a property
  • Qt for Windows:
  • Clear window under mouse in destruction of platform window
  • Prevent activation of windows with Qt::WindowDoesNotAcceptFocus
  • Better errorhandling for the fontengine on WINCE
  • Windows: Synthesize expose event for shrinking windows
  • Windows font database: Resolve aliases for extra fonts
  • Bugfix QDesktopServices on Windows
  • ActiveQt: Pass native parent handle property from widget to widget window
  • REG: Fix character size when exporting PDF on Windows
  • Fix crash caused by ~QWindowsWindow flushing the event queue
  • Show native file dialog on Windows XP Professional x64 Edition
  • Fix detection of synthesized mouse events for MSVC / 64bit
  • Display a message box if platform plugin cannot be found
  • Fix auto-enabling of windows style
  • Fixes QKeyEvent::count() on Windows
  • Qt for BlackBerry:
  • Disable xkbcommon when building for QNX from Windows
  • [QTBUG-32385] Handle Qt::WindowDoesNotAcceptFocus correctly
  • Qt for Android:
  • Get SSL root certificates from TrustManager
  • Adjust to new SDK layout on Windows
  • Make PCRE's JIT work on Android devices
  • Qt for iOS:
  • iOS: Make sure we're deleting framebuffers in the right context
  • TOOLS:
  • configure:
  • [QTBUG-5366] Complain about bad arguments to -make/-nomake
  • [QTBUG-21778] Catch accidental use of -no-make
  • [QTBUG-28763] Don't enable EGL support if OpenGL is disabled
  • cmake config files:
  • Use absolute path in the /usr move workaround if -libdir is specified
  • Always use forward slashes in paths passed to cmake
  • Make clients use the QT_NO_DEBUG flag when using QtCore in release mode
  • [QTBUG-32134] Add path to the headers in frameworks to the include dirs
  • [QTBUG-32466] Don't check for the existence of private include directories
  • qmake:
  • [QTBUG-5301] basic manifest tool support in vc(x)proj generator
  • [QTBUG-19352] Resolve output of .depend_command relative to $$OUT_PWD
  • [QTBUG-29826] Only add the res_file to the generated files if there is no rc_file
  • [QTBUG-29988] VPATH resolution: don't crash when $(FOO) expands to nothing
  • [QTBUG-30993] Changed project dependencies for solution files
  • [QTBUG-31877] Make $$list() more backwards-compatible regarding backslashes
  • [QTBUG-31975] MANIFEST:NO is not written to vcproj
  • [QTBUG-32326] Escape paths coming from prl files

New in version 5.1.0 (July 3rd, 2013)

  • GENERAL:
  • General Improvements:
  • Q_PROPERTY gained a MEMBER attribute that let you associate a property to a class member without requiring to explicitly writing a getter or a setter
  • IMPORTANT BEHAVIOR CHANGES:
  • QtWidgets:
  • [QTBUG-8836] QAbstractItemView now allows manual deselect in SingleSelection mode (with control modifier)
  • QtCore:
  • The serialization behavior for QDateTime has reverted to pre-Qt 5. This means that the QDataStream version will be 14 with Qt 5.1.
  • LIBRARY: :
  • QtCore:
  • QRect: Added marginsAdded(), marginsRemoved() and operators +, -, +=, -= taking a QMargins object allowing for conveniently adding or removing margins.
  • QMargins: Added operators for adding and subtracting QMargins objects, multiplication and division for int/qreal and unary minus.
  • QMessageAuthenticationCode: New class for hash-based message authentication code added to QtCore.
  • QRegularExpression: It's now possible to know the names of the named capturing groups inside the pattern string, as well as the numerical index of each named capturing group.
  • QPointer: It is now possible to create a QPointer with a const templated type.
  • QtGui:
  • QOffscreenSurface: New class for rendering graphics using OpenGL in an arbitrary thread without needing to use a hidden QWindow.
  • QtNetwork:
  • QNetworkAccessManager / QNetworkReply: Add a new encrypted() signal so that applications can perform additional checks on the certificate chain.
  • QSslSocket: Support for sending intermediate certificates when QSslSocket is used as a server, and when using client certificates.
  • HTTPS internals: SSL sessions are re-used by default.
  • QHostInfo: Allow QHostInfo::lookupHost() with no receiver to warm the DNS cache.
  • QtWidgets:
  • QGraphicsView: Added function rubberBandRect() and signal rubberBandChanged.

New in version 5.1.0 RC 1 (June 18th, 2013)

  • Online installers available for Mac, Windows and Linux hosts
  • Windows 32bit as well as 32bit and 64 bit Linux host support for Android
  • MinGW toolchain updated to version 4.8.0
  • 32bit VS2012 installer available, and all VS2012 packages built with the SP2 update
  • Perl dependency removed for building Qt (still remains as requirement for building WebKit)

New in version 5.1 Beta (May 14th, 2013)

  • Qt Quick Controls module providing a set of reusable UI components especially for desktop applications created with Qt Quick
  • Qt Quick Layouts module bringing an easier, more intuitive, way to manage scalable UIs by ensuring that items are consistently arranged, and that the UI as a whole remains usable across different screen sizes.
  • Qt Serial Port module providing a cross-platform interface for using hardware and virtual serial ports in Qt applications
  • Possibility to use Qt Quick and Widgets together in the same application window
  • Qt Creator 2.7.1 bundled into the package, providing, for example, Qt Quick Designer for rapid prototyping, as well as improved C++11 code editing
  • Support for static Qt builds making it possible to address those use cases that cannot use dynamic linking
  • Introducing Qt Sensors as an officially supported module

New in version 5.0.2 (April 10th, 2013)

  • HIGHLIGHTS:
  • New binary installers for VS2012 with ANGLE and for VS2010 with OpenGL (for those who do not wish to use ANGLE)
  • Creator 2.7.0 included in the release package (Qt 5.0.1 was shipped with Creator 2.6.2)
  • Possibility to easily skip modules in configure when building Qt yourself
  • Static linking now works correctly for the Qt libraries
  • Overall more than 600 improvements in 17 different modules of Qt
  • GENERAL:
  • General Improvements:
  • Lots of fixes to enable static builds on Windows, Linux and Mac.
  • LIBRARY:
  • QtCore:
  • [QTBUG-29130] Fixed compilation when connecting with the new syntax to a signal that has more than 3 registered meta type arguments, and the compiler does not support variadic templates
  • QtGui:
  • [QTBUG-14766] Fixed potential access violation in QPixmap::copy() for < 32 bit pixmaps.
  • [QTBUG-24762] Fixed dashes being rendered differently depending on system clip.
  • [QTBUG-25036] Fixed artifacts when drawing same line with different clips.
  • [QTBUG-29643] Fixed crashes when using QImage in combination with QCoreApplication.
  • QtWidgets:
  • [QTBUG-28817] Fixed QColorDialog::setOption(), QFontDialog::setOption().
  • [QTBUG-29680] Fix mouse double click events not bubbling up to parent widgets.
  • QtNetwork:
  • [QTBUG-29103] Toggle on demand loading of root certs properly.
  • QtConcurrent:
  • [QTBUG-28984] Fix compilation of Qt Concurrent with gcc 4.3.
  • QtSql:
  • Fix QSqlTableModel:revert() for OnFieldChange.
  • [QTBUG-29102] Support refreshing inserted rows with auto columns.
  • [QTBUG-29108] Fix QSqlTableModel::headerData() for empty query with inserted row.
  • [QTBUG-29217] Fix QSqlTableModel::setData() for non-change detection.
  • PLATFORM SPECIFIC CHANGES:
  • Qt for Mac OS X:
  • [QTBUG-29389] Fix transient scroll bar appearance before the proper one.
  • [QTBUG-25297, QTBUG-29434] Add QMdiSubWindow size grip back.
  • COMPILER SPECIFIC CHANGES:
  • [QTBUG-29099] Fix gcc OOM error when compiling in release mode.
  • TOOLS:
  • Build System & configure:
  • [QTBUG-26697] The -skip option was added to configure, which enables not building particular modules. Typical use case: -skip webkit.
  • [QTBUG-28769, ...] Assorted build fixes
  • [QTBUG-28902] Fixed contents of installed .prl files
  • [QTBUG-29110, QTBUG-29186, ...] Assorted fixes to CMake config files
  • [QTBUG-29174] Fixed numerous configure options which start with -l
  • [QTBUG-29400] Fixed configure -fully-process not creating .vcproj files
  • [QTBUG-29453, ...] Fixed generation of pkg-config .pc files
  • [QTBUG-29478] Fixed static builds with ICU
  • [QTBUG-29661] Fixed QtWebProcess.exe not finding Qt DLLs. -libexec now defaults to bin/ on Windows.
  • [QTBUG-29838] Fixed module versioning when mixing releases
  • [QTBUG-30102] Fixed passing of values with spaces to -device-option
  • Production builds do not build examples any more. 'make install' will copy only the example sources.
  • pkg-config: qt_config is now contained only in Qt5Core.pc, and it reflects QT_CONFIG, not the module build's CONFIG.
  • qmake:
  • [QTBUG-28132] Fixed parallelized 'jom install'
  • [QTBUG-29143] MSVC: Fixed parsing of /openmp
  • [QTBUG-29286] MSVC: Fixed use of VERSION breaking MSVC2010 projects
  • [QTBUG-29329] MSVC: Fixed misparsing of /Gs as /GS
  • [QTBUG-29329] MSVC: Stopped disabling buffer security check by default
  • [QTBUG-29371] Fixed generation of XCode projects for XCode 4.6
  • [QTBUG-29698] MSVC: Fixed incremental linking with non-standard shells
  • [QTBUG-29700] Fixed pkg-config file generation when cross-compiling
  • Qt modules are now enumerated in QT_MODULES, not QT_CONFIG. For portability, use qtHaveModule() (since 5.0.1) or !isEmpty(QT..name) instead.
  • $$(VAR) style environment variable expansions will not split on whitespace any more. Use $$split() if necessary.
  • Fixed qmake -tp vc (and configure without -no-vcproj)
  • MSVC: Fixed an empty VERSION causing a garbled version in .rc files
  • Windows: Added support for specifying application icon (via RC_ICONS)
  • Added spec for BlackBerry Playbook
  • moc:
  • [QTBUG-29759] Fixed infinite recursion in macro substitution which prevented some headers to compile.

New in version 5.0.1 (January 31st, 2013)

  • GENERAL IMPROVEMENTS:
  • Documentation: Moved documentation under the correct module, fixed module identifiers Cleanup of examples and their documentation [QTBUG-28579] Fixed broken links to C++ class reference and examples for a number of modules in Qt Creator Help contents Fixed incorrect or missing links, typos
  • LIBRARY:
  • QtCore:
  • Fix QMutex::tryLock with negative values
  • Fix a leak in case the QMetaObject::Connection survives the sender object, after a successful disconnect().
  • Speed up and fix QByteArray::setNum()
  • [QTBUG-28924] Don't increase the reference count if dynamic_cast failed
  • QtGui:
  • Fix QGuiApplication::keyboardModifiers() and QGuiApplication::mouseButtons()
  • Fix styleName support in QPA font database
  • Make QImage::mirrored() propagate devicePixelRatio
  • [QTBUG-28324] Fixed invalid memory read in SSSE3 image blending code.
  • QtWidgets:
  • Do not inform that a widget is not visible when it's disabled.
  • [QTBUG-28031, QTBUG-2596] QMenu: Do not set snapToMouse if a caused-widget exists.
  • [QTBUG-28321] Fix focusproxy-relayed crash in QGraphicsItem destructor.
  • [QTBUG-28446] Fix compilation when Q_NO_USING_KEYWORD is defined
  • [QTBUG-28477] Fix QWidget::setWindowOpacity() when called before show().
  • [QTBUG-28506] Style animations: fix QCommonStylePrivate::stopAnimation()
  • [QTBUG-28557] Fix QGtkPainter::reset() to reset the clip rect
  • QtNetwork:
  • [QTBUG-28937] SSL certificates: blacklist mis-issued Turktrust certificates
  • QtDBus:
  • qdbusxml2cpp: Check string length before checking for \r\n.
  • QtOpenGL:
  • Fix compilation of Open GL ES 2 examples when using a Qt-namespace.
  • Fixed deadlock situation in QtOpenGL's texture management.
  • updating qeglfshooks_imx6.cpp to 12.09.01 (L3.0.35) opengl-drivers
  • [QTBUG-27512] Entered hardcoded urls for and
  • [QTBUG-28875] Fix bug in multisampling handling when converting from surface format
  • QTestLib:
  • Add qtest_widget.h to the list of testlib headers
  • QtSql:
  • Fix QSqlQuery test in relation to PSQL support
  • DATABASE DRIVERS:
  • postgres:
  • Use PG_VERSION if PG_MAJORVERSION is not defined
  • PLATFORM SPECIFIC CHANGES:
  • Qt for Mac OS X:
  • Ignore ScrollBarAlwaysOn policy for transient scrollbars
  • New rendering for disclose triangle, get proper color when selected
  • [QTBUG-27415] Fix bugs for font selection in QFontDialog
  • [QTBUG-28161] Ensure the native filedialog starts up with the right directory
  • [QTBUG-28443] Cocoa: Re-enable per class palette on QPA plugin
  • [QTBUG-28669] Fix transient QScrollBar flashing
  • [QTBUG-28738] Bring back proper layout in QMessageBox
  • COMPILER SPECIFIC CHANGES:
  • MinGW: Statically link runtime libraries into qmake
  • TOOLS:
  • configure:
  • Remove the -fast configure option as it was pretty much broken
  • [QTBUG-23569, QTBUG-25760] Check for gtk_adjustment_configure as this is not always implemented
  • mkspecs:
  • Fix the computation of the location of mkspecs.
  • [QTBUG-28215] Enable forcing generation of static plugin imports
  • [QTBUG-28606] Fix installation of plugin module .pris in static Qt builds
  • moc:
  • [QTBUG-26589] Remove the timestamp info in genarated files to optimize rebuilds with ccache
  • qmake:
  • Do not fixify + create QMAKE_{PKGCONFIG,LIBTOOL}_DESTDIR
  • Fix qtCompileTest for cross building modules
  • [QTBUG-28104] Respect the OBJECTS_DIR setting for XCode projects
  • [QTBUG-24589] Fix handling of precompiled header files in XCode projects
  • [QTBUG-28624] accept hex/octal values for RC_LANG and RC_CODEPAGE
  • [QTBUG-28625] fix duplicate TRANSLATION entry in generated RC file
  • [QTBUG-28682, QTBUG-28683] fix DLL manifest resource ids for debug builds
  • PLUGINS:
  • Call QAccessible::updateAccessibility when caret moves in QTextEdit
  • IMPORTANT BEHAVIOR CHANGES:
  • QSharedMemory on Unix systems now no longer creates shared memory segments that are readable and writeable to everyone. From Qt 5.0.1 forward, the segments are created readable and writeable only by the current user. This matches the behavior on Windows.

New in version 5.0.0 (December 19th, 2012)

  • Fixes:
  • QTBUG-25106 Qt 5 to-do in mkspecs and qmake
  • QTBUG-27415 QFontDialog can not select Japanese fonts properly.
  • QTBUG-27512 Qt 5 Documentation Issues (Meta Bug)
  • QTBUG-27515 Create and polish the examples
  • QTBUG-27646 Qt WebKit has no documentation
  • QTBUG-27722 ensure that fully modularized build works
  • QTBUG-27777 Qt 5.0 final: Fix .qch files for final
  • QTBUG-28042 Qt ActiveQt documentation needs to be modularized
  • QTBUG-28131 Failed to build static Qt 5.0 on Windows 7 ×86 32 bit MSVC2010
  • QTBUG-28291 Clean up stocqt examples
  • QTBUG-28383 Dumpcpp utility generates incorrect header
  • QTBUG-28418 Webkit examples are not available under Qt Creator / examples page
  • QTBUG-28557 GTK style: right spinbox border not drawn, arrows not shown
  • QTBUG-28579 TOC links from Qt Creator Help Contents are broken in the help files for some modules
  • QTBUG-28583 Qt Webkit documentation does not open from the Qt Creator Help Mode Contents
  • QTBUG-28590 Desktop OpenGL examples show up on Creator Example page, but can not be rebuild
  • QTBUG-28592 assistant crashes while trying to update the search index, if qch docs were regenerated
  • QTBUG-28595 Designer`s ActiveQt plugin doesn`t render the plugin correctly in preview mode.
  • QTBUG-28609 ActiveQt documentation is not registered in Qt Assistant
  • QTBUG-28614 QtMultimedia QML examples not shadow build compatible
  • QTBUG-28646 Webkit Examples documentation in Qt Creator shows links to examples sources files
  • QTBUG-28657 Mac: Printing from Qt Assistant causes segmentation fault
  • QTCREATORBUG-7797 qmlviewer and qmlscene is not used uniformly in UI panes
  • QTCREATORBUG-8345 Visual Artefacts in Options window
  • QTCREATORBUG-8393 Switch Between Method Declaration/Definition for constructor wrong to destructor
  • QTCREATORBUG-8415 Qt Creator Manual 2.6.1 first page shows an error
  • QTCREATORBUG-8426 Working directory is the same for different builds
  • QTCREATORBUG-8432 Remove outdated tutorials from Welcome screen
  • QTCREATORBUG-8447 qmlpuppet cannot be started on mac
  • QTCREATORBUG-8448 Qt Creator 2.6.1 other languages than English

New in version 4.8.4 (November 30th, 2012)

  • GENERAL:
  • General Improvements:
  • Copyrights changed to Digia Plc
  • Add msvc2012 support
  • LIBRARY:
  • QtGui:
  • Fixed outline / fill inconsistencies in raster paint engine [QTBUG-26013]
  • Avoid crash caused by drag and drop and winId() [QTBUG-27263]
  • Cleanup CUPS tmp files [QTBUG-14724]
  • Fixed inconsistent rounding of square cap pens [QTBUG-26013]
  • Rotate non maximized windows
  • Fix crash when invalidating a QSortFilterProxyModel [QTBUG-27122]
  • Fix regression in QTextDocument::toHtml() with font pixel size [QTBUG-25778]
  • qpa: improve DirectFB performance
  • qpa: extend drawPixmap capabilities
  • qpa: add non-opaque fill support
  • Fix calculation of logical child index for row headers
  • qpa: Fix rendering issue in blitter paint engine
  • Introducing the PlatformPanel event type
  • Pass NEON_ASM directly to SOURCES
  • Enable NEON compilation on qcc compilers
  • Fix number of available printers in CUPS support
  • Mangle QNSApplication into a namespace when Qt is configured as such
  • Mangle QNSApplication and methods into a namespace
  • QComboBox::currentText: correct documentation
  • QComboBox: mention insert policy in context of editable property
  • Fixed cosmetic line drawing where begin and end points are equal [QTBUG-25153]
  • Fix a regression with regards to hfw behavior in QStackedWidget [QTBUG-24758]
  • Close popups on non-client area mouse press [QTBUG-1894, QTBUG-26120, QTBUG-26465, QTBUG-26827]
  • Use the right properties when checking the frame's margins [QTBUG-22173]
  • qpa: Fix drawPixmap rendering using CompositionMode_Source in DirectFB
  • Fixed crash on destruction of animating QDockWidget in a QMainWindow
  • Fixed GCC 3.4 build with sse2 enabled
  • QHeaderView no big update work if updates are disabled
  • QHeaderView length returns wrong value fix
  • QHeaderView fix minor bug in visualIndexAt
  • Fixing font database memoryleak
  • Fix a crash in QFileDialog when selecting an invalid name filter
  • QHeaderView correct drop on manual QHeaderView sectionmove [QTBUG-14814]
  • Fix submenu navigation [QTBUG-20094]
  • QWindowsVistaStyle: Restore altered brush origin [QTBUG-27828]
  • HeaderView call invalidateCachedSizeHint() on clear [QTBUG-22528]
  • Fix GIF image decoding: do not zero transparent pixels
  • qpa: Fix rendering issue in blitter engine (negative scaling factors)
  • Windows: Fixed handling of key events containing ctrl modifier [QTBUG-10781]
  • Fix scrolldown arrow not showing on popup for QMenu [QTBUG-27445]
  • Fix zero-duration animations running Backwards [QTBUG-27969]
  • QtNetwork:
  • Disable SSL compression by default
  • HTTP header may be damaged fix, unit test [QTBUG-27161]
  • Bypass proxy for local connections
  • Implementation of the BlackBerry Qt Proxy support
  • introduce configure switch to use system proxies by default
  • fix bug in QLocalSocket::waitForReadyRead on Windows [QTBUG-27816]
  • Fix compile issue with building with openssl and in a namespace [QTBUG-25207]
  • QtCore:
  • Include the signal code in the argument of (dis)connectNotify()
  • QElapsedTimer: Fix typo in restart() documentation
  • Prevent an overflow warning in assertions
  • QTranslator: Use resource memory instead of copying it
  • Fix for memory leak in ResultStore [QTBUG-27224]
  • QString doesn't work with old ABI on ARM [QTBUG-15784]
  • Make the qatomic classes work in ARMv5 OABI
  • Fix regression introduced in QFileSystemEntry::path()[QTBUG-27356]
  • QtDBus:
  • Make QtDBus work again with D-Bus 1.0 and 1.1
  • Fix QDBusServer with more than one connection [QTBUG-24921]
  • QtSql:
  • Fix error when inserting to tables with datetime fields with QODBC [QTBUG-2192]
  • QtSql: Correct documented default precision policy [QTBUG-27482]
  • fix binding of bool type in mysql driver [QTBUG-27763]
  • Declarative:
  • EngineDebug: Updated and renamed service
  • Ensure child items are updated even if the parent item has no content [QTBUG-26846]
  • Use QVarLengthArray when creating the connectNotify() argument
  • Fix QObject::receivers() within connectNotify()
  • QDeclarativeTrace patch for a custom trace instance
  • Fix access to uninitialised memory that might lead to crashes [QTBUG-23214]
  • QDeclarativeTypeLoader: Avoid stat() calls to . and ..
  • Make the rules for redirects a bit stricter
  • OpenGL:
  • Fixed text drawing in OpenGL 2 paint engine [QTBUG-24453]
  • Fixed potential use of uninitialized variable in qgl.cpp [QTBUG-26952]
  • QGLTextureGlyphCache: Fix text rendering artifacts on NVIDIA [QTBUG-26444]
  • Fixed memory leak in assign operator of QGLBuffer
  • Plugins:
  • Accessibility: itemviews check for valid model
  • 3rdParty:
  • Fix mmap usage (ExecitableAllocatorFixedVMPool.cpp)
  • Quicktime: On 32bit applications it would not get out of the waiting state
  • TOOLS:
  • Assistant:
  • Fixed window raise issue when handling remote commands [QTBUG-25407]
  • Designer:
  • Fix gcc 4.6 warnings about assigned/unused variables in Qt Designer
  • Configure:
  • Mac features don't belong on cross mingw target
  • Use qmake to get PKG_CONFIG in configure script
  • Postpone pkg-config detection until after qmake is built
  • Undo variable renaming in backport
  • Unscramble option help text
  • Smuggle QT_BUILD_TREE to device_config.prf even during tests
  • Find qdevice.pri even for installed qt builds
  • configure: state compiler explicitly when testing for supported flags
  • Support other platform names on configure.exe
  • x-compile with mingw: fix codec linker errors [QTBUG-27618]
  • Fix syntax error on configure.exe source code.
  • mkspecs:
  • Blackberry mkspecs: Refine compiler options
  • optimize loading of qconfig.pri & qdevice.pri somewhat
  • Remove the -falign-stack option from ICC's mkspec
  • don't set QT_BUILD_DIR as a side effect
  • qmake:
  • Add -pipe option of win32-g++'s QMAKE_CFLAGS
  • Fix XCode generator for qmake when generating for XCode 4.5 and later
  • Revert "qmake vcxproj generator: map TARGET_EXT to $(TargetExt)" [QTBUG-26782, QTBUG-27554]
  • qmake: fix .pc install target dir separators on windows
  • Updated and fixed win32-icc mkspec for ICC 12.1 or better
  • Other:
  • Register Qt 4.7 import on-demand, instead of at startup
  • Update Traditional Chinese translation
  • Doc: Update QThread class ref to reflect changes since Qt 4.4 [QTBUG-16358]
  • Minor fixes to the QLocale data parser/generator
  • Update Qlocale data with CLDR 1.9.1
  • Update Qlocale data with CLDR 2.0.0
  • Fix code convention docs [QTBUG-27852]
  • PLATFORM SPECIFIC CHANGES:
  • Update the state of native menus correctly on Mac [QTBUG-25544,QTBUG-26399,QTBUG-7538]
  • Enable HiDPI mode for retina displays
  • Fix issue with mispositioned family name i QFontComboBox [QTBUG-26691]
  • Load Mac specific resources in a static build [QTBUG-25391]
  • Fixed float->int error in OS X Mouse Event Handling [QTBUG-27273]
  • Refactor coreservices -> ios & QT_NO_CORESERVICES -> Q_OS_IOS
  • Ensure that QApplication is cleaned up after itself on Mac [QTBUG-24248]
  • Prevent a crash when a merged action is removed [QTBUG-24917]
  • Add Proxy Auto Config support (PAC) on Mac [QTBUG-2069, QTIFW-28]
  • Mac: Correct writingSystem check value for Chinese[QTBUG-27130]
  • Cocoa: QPrintDialog does not show/closes down immediatly
  • Don't use Cocoa code unconditionally [QTBUG-27960]
  • When clicking on a menu item which has a sub menu it should not close [QTBUG-10706]

New in version 4.8.3 (September 13th, 2012)

  • General Improvements:
  • Fixes for Mac OS X 10.8 Mountain Lion
  • Webkit version updated to 2.2.3
  • Third party components:
  • SQLITE_ENABLE_FTS3,SQLITE_ENABLE_FTS3_PARENTHESIS and SQLITE_ENABLE_RTREE
  • flags are now enabled by default on blackberry platforms, for the sqlite3
  • copy under the 3rdparty directory.
  • QtGui:
  • Take account of spanned items in QTreeView when dragging [QTBUG-25140]
  • Fix for clipped Vietnamese characters when typed with VKB [ou1cimx1#981433]
  • Fix application font loading in basic font db [QTBUG-22063]
  • Fix define to build without gtk style
  • Fix bug when destruction fields in QWizard [QTBUG-25691]
  • DirectFB: Improvement for QDirectFBPaintEngine::fill() [QTBUG-23850]
  • QStatusBar::showMessage will always take new timeout [QTBUG-25492]
  • Eliminate QTreeWidget drag crash [QTBUG-25333]
  • Fix dangling pointer issue in QGraphicsItem focus handling [ou1cimx1#995710]
  • AbstractItemView editorForIndex/indexForEditor speedup
  • Speedup for QAbstractItemViewPrivate::delegateForIndex
  • Restored native behavior when moving cursor from selection [QTCREATORBUG-7215]
  • Fix infinite recursion while dragging toolbar of QMainWindow [QTBUG-21378]
  • Fix possible crash when copying QImage [QTBUG-14766]
  • Fix cursor truncate to include line position
  • ARM: fix compilation with C++11 enabled
  • qws: print the data directory
  • Fix crash when column is inserted before rowspanned cell
  • Fix infinite loop due to FPU limitation
  • Widgets: Fix duplicated line in QMdiArea [QTBUG-17428]
  • Fix null pointer bug when no QPA event integration is used
  • Don't discard QPA mouse events without an associated window or widget
  • Clean up qDebug statements
  • Use improved QLibrary search heuristics for libgtk
  • Accessibility: fix updates for models with rootIndex set
  • Avoid crashes when invalidating a proxy model filter [QTBUG-26107]
  • Make currentText the USER property for QComboBox [QTBUG-26501]
  • Accessibility: Add missing break; (qaccessiblewidgets.cpp)
  • Fix for restoring dockwidget's size when it gets dragged [QTBUG-2940]
  • Implement QAccessibleLineEdit::characterRect()
  • Fix QListWidget scrolling with keys when there are hidden items [QTBUG-21804]
  • Fix undo and redo in QLineEdit when in password mode [QTBUG-14226]
  • Make QStatusBar text available via accessibility
  • Remove warning about non existing paint device engine [QTBUG-26047]
  • Fix a QListViewItem width when spacing is set [QTBUG-21804]
  • Take account of hidden items in QListView when using scrollTo [QTBUG-21804]
  • Fixed the QTreeView expansion/collpasing when animated
  • Speed up QTextEngine::setBoundary [QTBUG-8389]
  • Fix limitting shortcuts to keypad only [QTBUG-20191]
  • QPA: incorrect rendering when stretching and clipping
  • Optimize QTextEngine::findItem by using a binary search [QTBUG-17209, QTBUG-231]
  • QtNetwork:
  • Remove not present networks from QNetworkInterface::allInterfaces [QTBUG-18824]
  • Use reference count to close down idle network session [QTBUG-15812]
  • Windows 7fix nativewifi bearer plugin [QTBUG-24503]
  • QFtpimplement fast abort for downloads [QTBUG-25494]
  • QNetworkAccessManagerensure abort reaches QFtp [QTBUG-25494]
  • Connect bearer engines to manager with QueuedConnection
  • Avoid emitting finished() before user can connect the signal [QTBUG-18824]
  • QNetworkReply::setReadBufferSize fix for threaded http [QTBUG-25327]
  • QHttpMultiPart: supply new line at the end of the body [QTBUG-25429]
  • qhttpthreaddelegate: check that we have a reply set when reading
  • QNetworkAccessManager: Read all from socket on remote host close
  • QNetwork: fix compilation with no openssl
  • Fix sending UDP packets to link local addresses [QTBUG-25634]
  • Properly handle unexpected EOF in QHttpThreadDelegate [QTBUG-24738]
  • Include scope ids in QHostAddress from QNetworkInterface [QTBUG-25634]
  • Track active network replies without qFindChildren [QTBUG-15812]
  • QNAMmaintain a weak reference to the QNetworkSession [ou1cimx#1004278]
  • Ensure that Proxy-Connection: Keep-Alive is respected for HTTP 1.0 [QTBUG-26037]
  • Change default Content-Type for http POST to match 4.7.4 [QTBUG-23350]
  • Add null httpReply checks to QHttpThreadDelegate [QTBUG-26245]
  • Use improved QLibrary search heuristics for libresolv
  • Use improved QLibrary search heuristics for SSL
  • Parse yearless date strings on leap years during LIST in QFtp [QTBUG-26911]
  • QtCore:
  • Fix crash with evaluation license
  • Fix atomics on SPARC [QTBUG-22479]
  • Fix composition (C/KC) of some sequences
  • QElfParser: fix type of sh_size
  • Fix cases where functions are called with a drive and no slash [QTBUG-25353]
  • QRegExp: fix autotest, fix usage of uninitialized values
  • QRegExp: fix crash [QTBUG-23352]
  • Fix local variable is initialized but not referenced warning
  • UCD 5.0: Apply Unicode Corrigendum #6 [QTBUG-25169]
  • Fix qatomic inline asm for x32 ABI
  • Avoid crash cancelling timer in wrong thread on terminate [ou1cimx1#1006699]
  • Fix access to uninitialized pointer
  • Only forward-declare some std classes if QT_NO_STL is defined
  • Disable QAtomic assembly code for incompatible compilers
  • QUrl: add missing detach() in setEncodedUrl
  • Introduce ImprovedSearchHeuristics flag to QLibrary
  • Use improved QLibrary search heuristics for ICU in QLocale
  • QUrl: document that setIdnWhitelist isn't thread-safe
  • Check for 0 before accessing the pointer (qlibrary.h)
  • QUrl: fix thread safety
  • QSharedPointer: make QT_SHAREDPOINTER_TRACK_POINTERS work with QObjects
  • Fixes possible memory leak in QContiguousCache
  • Display QThread name for debugging
  • QtScript:
  • Fix crash when accessing QObject properties through activation object [QTBUG-21760]
  • Fix crash when converting invalid JSValue to string [QTBUG-21896]
  • Don't crash if queued signal handler no longer exists [QTBUG-26261]
  • QtDBus:
  • Fixed crash issue in QtDBus if D-Bus not installed [QTBUG-23128]
  • Pass configured timeout to callWithCallback too
  • qtdbus: Export org.freedesktop.DBus.Peer interface when introspected
  • Use improved QLibrary search heuristics for loading libdbus
  • QtWebkit:
  • Updated WebKit to 2.2.3
  • Prospective build fix for Mac OS X Mountain Lion
  • Fix build with GLib 2.31
  • QtSql:
  • Fix memory leak in 64-bits ODBC driver [QTBUG-25256]
  • QSqlTM: respect generated flag in insertRecord() and setRecord() [QTBUG-23592]
  • Declarative:
  • Fix crash in TextEdit when changing text content [QTBUG-25389]
  • Clicking on a disabled ListView's delegate breaks mouse interaction [QTBUG-20584]
  • Wrong signals received when moving Flickable element [QTBUG-25042]
  • Fix memory leak in qdeclarativevisualdatamodel [QTBUG-25784]
  • Fix crash when using aliases and variants [QTBUG-25341]
  • Propagate left key presses to the parent item when TextInput is empty [QTBUG-25447]
  • DeclarativeTextInput sends delayed mouse events to input context [ou1cimx1#1001264]
  • Item.mapFromItem() crashes with Items not created by the engine [QTBUG-26280]
  • Qml ListView highlight component cannot access ListView scope [QTBUG-26043]
  • Fix roundtrip between double and string in QDeclarativeListModel leading to precision issues
  • MouseArea: use current value of drag.axis [QTBUG-26440]
  • XMLHttpRequest does not support the DELETE method [QTBUG-17963]
  • Register less types for QtDeclarative/QCoreApplication
  • Make connectNotify() work with QML [QTBUG-11284]
  • OpenGL:
  • Performance fix for OpenGL drawing [ou1cimx1#957423]
  • QGLGlyphCache: Fix texture buffer overrun [QTBUG-23584]
  • 3rdParty:
  • Check that property descriptor members are valid before using them [QTBUG-17915]
  • Fix JIT crash on x86-64 (avoid 32-bit branch offset overflow) [QTBUG-23871]
  • Qt for Mac OS X:
  • Compile on Mac OS X with unsupported/macx-clang
  • Mac: Remove "unsupported" warning for 10.8 (qglobal.h)
  • Mac: Fix rendering of non-int sized fonts [QTCREATORBUG-7127]
  • Ensure the mouse buttons are preserved when entering a widget [QTBUG-19353]
  • Update macdeployqt plugin deployment logic
  • Add Mac OS 10.8 QSysInfo enums
  • Disable MacOSX 10.6+ locale code for iOS builds
  • Mac: Don't crash if language preferences can't be retrieved [QTBUG-26547]
  • Tools:
  • Remove build_all when target is same for debug and release (Tools)
  • Fix Assistant crash when closing last tab [QTBUG-23986]
  • Don't change the current page of mainwindow container (Designer) [QTBUG-12097]
  • [Blackberry] Set default platform name for QPA (mkspecs)
  • Fix compile issue on AIX (xlc compiler with the -qtls flag)
  • makeqpf: Fixing range in character-generation
  • Removed existing iOS mkspecs. Added Qt5 iOS mkspecs to unsupported
  • Removed -qt-gif -configure option from documentation [QTBUG-25671]
  • Clang: Do not warn about unused parameters (caused by ccache)
  • QtDemo: Find installed examples on Windows
  • Doc: removed incorrect reference to Q_OS_X11
  • Doc: Fix QUrl::isLocalFile documentation [QTBUG-21293]
  • Doc: Fix typo [QTBUG-23260, QTBUG-24317, QTBUG-23657, QTBUG-25577, QTBUG-25608]
  • Examples: Add dockwidgets to the list of examples
  • Properly handle include cycles (Linquist) [QTBUG-6587]
  • Fix vcproj file generation for incredibuild handling of moc etc targets (mkspecs)
  • Prepare QtHelp library for modularized documentation (Assistant)
  • Fix deleting of QTreeWidget items (Designer) [QTBUG-26770]
  • Typo in QApplication class ref (Documentation) [QTBUG-26891]
  • Make sure the parent widget still exists (Designer) [QTCREATORBUG-7684]
  • QNX: Enable QT_NO_IMPORT_QT47_QML (mkspecs)
  • Decouple -lang-c++ from CXX command on QNX mkspecs
  • QNX: Enable pre-compiled header support for QNX (mkspecs)
  • QNX: Move qpa-based mkspecs out of the unsupported directory
  • Add qmake CROSS_COMPILE variable via load(device_config)
  • configure:
  • configure: Escape '{' in getQMakeConf2 function
  • Fix auto-detected QNX mkspec paths in configure
  • Support mkspecs in subdirs for xcompile under windows
  • New command line switches for configure.exe
  • Set correct QT_LFLAGS_SQLITE for default cases
  • Fix typo in configure for Mac: Libraries -> Library [QTBUG-18115]
  • Adding cflag -c to configure's --sysroot test
  • Add defaults for Blackberry platform on configure
  • Don't build qtscript when stl isn't available (configure) [QTBUG-7813]
  • Don't build qtscript when stdint.h isn't available (configure)
  • Add default QPA plugin option to 'configure'
  • Add configure options for debug/release OpenSSL
  • Disable 3DNOW on Blackberry/Win32
  • Minimal backport of --device-option support in configure
  • Add cross_compile to qconfig.pri for global advertising
  • Disable rpath, pkg-config, "reduce export" flag when x-compiling for mingw
  • qmake:
  • Fix qmake hash function to use XOR
  • qmake: un-copy-and-pastify vcxproj generator a bit
  • qmake vcxproj generator: map TARGET_EXT to $(TargetExt) [QTBUG-26782]
  • Remove qurl.cpp from qmake and bootstrap

New in version 5.0.0 Beta 1 (August 30th, 2012)

  • Qt Quick 2:
  • Qt Quick is now an Essential module [qt-project.org] containing the OpenGL based Scenegraph and all the usual items
  • New support for OpenGL based shader effects and particles
  • QML and JavaScript support have moved to their own Essential module [qt-project.org]
  • Qt Quick as in Qt 4.x is available in a fully compatible Qt Quick 1 add-on module
  • Qt Qml:
  • New module containing the QML engine and support for Javascript.
  • Performance improvements and some enhancements to the language
  • Source compatible — note though that when writing QML items in C++ some changes are needed to adjust to the new scene graph
  • Uses the V8 JavaScript engine behind the scenes with improved performance
  • New classes QJSEngine and QJSValue
  • Qt WebKit:
  • The WebKit module in the beta provides the same API as in Qt 4.x, but comes with performance improvements and new web-facing features.
  • In the release following the beta we plan to rename the WebKit module into Qt WebKit Widgets, providing the same C++ API as in Qt 4.
  • In addition we will introduce a new QML component that is based on the WebKit2 technology.
  • Qt Core:
  • QStandardPaths class giving standard locations for files
  • JSON parser and speed optimized binary format for JSON
  • MIME type recognition
  • New compile-time check of signal/slot connection syntax
  • New Perl-compatible regular expression engine
  • Many data structures have been rewritten and optimized for better performance
  • C+11 support where it makes sense (but Qt continues to compile and work with C+98 compilers)
  • Qt Gui:
  • Support for top-level surfaces through the QWindow class
  • Built-in OpenGL support
  • Qt Network:
  • Support for DNS lookups.
  • QHttp and QFtp classes removed (they are available stand-alone)
  • Qt Widgets:
  • All former QWidget based classes in Qt Gui have been separated out into the new Qt Widgets library
  • Ported over to the new Qt Platform Abstraction architecture
  • Works as in Qt 4.x.
  • Qt 3D:
  • This is now is an add-on module to Qt 5
  • Qt Location:
  • Maps and geolocation-related classes, formerly part of Qt Mobility, an add-on to Qt 5
  • New since Qt 5 alpha:
  • Continued work on reference platform stability. Qt Creator compiles and runs well on Qt 5
  • Qt WebKit is now available on MS Windows
  • Cleanups of a few new APIs
  • Qt now expects source code to be encoded in UTF-8
  • New QUrl implementation merged
  • Unified data structure behind QVector, QString and QByteArray
  • New metaobject revision, better API for QmetaObject with access to QObject’s meta data
  • Upgrade to Unicode 6.1
  • New plugin system for Qt 5 apps.
  • Qt Print Support module refactoring and cleanups
  • C++11 support enabled by default on compilers supporting it
  • Exceptions disabled on Qt modules that don’t require them for space/size savings
  • QHash hash key randomization for security
  • QIcon moved back to QtGui
  • Modularizing of documentation started
  • QNX support improvements
  • Preliminary ANGLE support on MS Windows offering better OpenGL support
  • Qt Qml and Qt Quick have seen a huge amount of bug fixes, memory usage improvements and optimizations.

New in version 4.8.2 (June 2nd, 2012)

  • General Improvements:
  • Webkit version updated to 2.2.2 including a Denial of Service fix on Windows
  • QtGui:
  • Hang on to the correct screen index in QWidget
  • Removed invalid assert in BMP loader code [QTBUG-24505]
  • Fixed compiler warnings about unused q and d pointers (QTableView & QTextControlPrivate)
  • Fix bug showing folder icons for files
  • The scaling should not effect the width of a cosmetic pen [QTBUG-25006]
  • Fix QListWidget scrolling with keys when there are hidden items [QTBUG-21804]
  • Made qt_accStripAmp handle "&&" (qaccessiblewidget.cpp)
  • Plug memory leak when gestures are grabbed but never triggered [QTBUG-25011]
  • Disconnect slots from the old sourcemodel in QIdentityProxyModel
  • Use QPointer to store accessible object (Widgets\Itemviews)
  • Fixes a regression; missing cursor blink when input mask is set [QTBUG-7174]
  • Do not send QEvent::AccessibilityPrepare [QTBUG-25240]
  • Accessibility: send cursor move updates (qplaintextedit.cpp)
  • Fix memory leak when drawing text in non-common script (qtextengine.cpp)
  • Fixed crash in QImage in out of memory condition
  • Only send progress bar updates when visible
  • Use parentheses in statement with && and ||
  • Accessible interface for QPlainTextEdit
  • Fix crashes in QAccessibleTree::navigate
  • Fix out of bounds use of QVector API [QTBUG-24965, QTBUG-25140]
  • widgets/qpa: Fix painting to a fully transparent top level widget [QTBUG-24526]
  • Add out-of-memory checks to QImage [ou1cimx1#994957]
  • QtNetwork:
  • Make sure QGlobalNetworkProxy is created for QNetworkProxy
  • Fix bug in qsslsocket peek() [QTBUG-18498]
  • Fix performance problem with NTLM auth in http POST (ou1cimx1#985786)
  • Try to read the last CRLF when chunked encoding is used [QTBUG-19480, QTBUG-20924]
  • Call wait() after calling quit() so that it can gracefully finish [QTBUG-24594]
  • Close the channel if bytesAvailable and nothing piplined [QTBUG-24875]
  • Fix build with QT_NO_WARNING_OUTPUT [QTBUG-25308]
  • Moved qmljs_debug_arguments to QCoreApplication
  • QHttpNetworkConnectionChannel: Warn if bytesAvailable and no reply [QTBUG-9315]
  • Improved detection of libcrypto and libssl [QTBUG-25398]
  • QtCore:
  • Fixes mismatching delete operator (QWindowsLocalCodec)
  • Support changing locales at runtime in QPA plugins
  • Optimise QFile::seek that doesn't move the file pointer
  • Fix q_atomic_decrement for 64-bit Solaris [QTBUG-24470]
  • Fixes potential memory leak in qtextcodec.cpp
  • TGA imageformat: fix broken canRead plugin function [QTBUG-24201]
  • Fix IPv6 address returned from QUrl::host
  • QtDBus:
  • Finish cleaning up com.trolltech -> org.qtproject in QtDBus [QTBUG-23274]
  • Update com.trolltech -> org.qtproject in the bootstrapped tools [QTBUG-23274]
  • Fix annotation processing for qtTypeName
  • QtWebKit:
  • Updated WebKit to 2.2.2
  • QtSql
  • Improve type detection for query results [QTBUG-22038]
  • Fix for memory leak in 64 bit ODBC driver's call to SQLGetStmtAttr() [QTBUG-25256]
  • QSqlQueryModel::fetchMore() documentation fix
  • Declarative
  • Fix QDeclarativeItem::hasActiveFocus() [QTBUG-24681]
  • Doc Fix- a QML MouseArea Elelment can accept 5 buttons
  • OpenVG
  • Off-by-one-line error in QVGPaintEngine::drawImage
  • 3rdParty:
  • Harfbuzz GPOS hinting- do not consider a subtable to be invalid if it is just empty
  • Harfbuzz-thai - fix buffer overflow when setting item attributes
  • Fixed MSVC2011 build (changes in JavaScriptCore & CLucene)
  • Upgrading libpng: Adding clean copy of libpng 1.5.10
  • Upgrading libpng: Patches to libpng 1.5.10 for Qt usage
  • gcc 4.7.0 compatibility fix for javascript
  • Reduce virtual address space use by JavaScriptCore on Symbian [ou1cimx1#993804]
  • Fix QWindowsSystemProxy global static race [QTBUG-15765]
  • Fix proxy types for manually specified proxies [QTBUG-10502]
  • Handle proxy autoconfiguration resulting in no proxy
  • fall back on static proxy config if autoproxy fails [QTBUG-10428]
  • Fix a number of bugs with windows system proxies
  • Handle both auto detect proxy settings together [QTBUG-13957, QTBUG-10238]
  • Widget created with type to Qt::ToolTip should have a drop shadow [QTBUG-13276]
  • "bypass proxy for local..." also affects IP addresses

New in version 4.8.1 (April 12th, 2012)

  • General:
  • General Improvements:
  • Various documentation fixes [QTBUG-18101, QTBUG-8673, QTBUG-14194, QTBUG-9109,
  • QTBUG-9466, QTBUG-8323, QTBUG-7924, QTBUG-20355, QTBUG-19367, QTBUG-21295,
  • QTBUG-14554, QTBUG-8331, QTBUG-8329, QTBUG-8786, QTBUG-8787, QTBUG-12389,
  • QTBUG-16667, QTBUG-6151, QTBUG-8625, QTBUG-19808, QTBUG-12096, QTBUG-1231,
  • QTBUG-21073, QTBUG-8939, QTBUG-20399, QTBUG-20944, QTBUG-7542, QTBUG-22095,
  • QTBUG-11278, QTBUG-15653, QTBUG-13362, QTBUG-18356, QTBUG-18417, QTBUG-18664,
  • QTBUG-21562, QTBUG-22094, QTBUG-18741, QTBUG-15921, QTBUG-22172, QTBUG-15738,
  • QTBUG-21466]
  • Third party components:
  • Fix isolated Thai SARA AM handling (harfbuzz)
  • Fixes Javascript WTF to build with BB NDK (javascriptcore)
  • Fix height of some Thai characters (harfbuzz) [ou1cimx1#898104]
  • Harfbuzz-thai - fix to_tis620 function for latin characters
  • Harfbuzz-thai - When calling HB_OpenTypePosition we must set doLogClusters to
  • true for thai
  • Harfbuzz-thai: Hide ZWJ and ZWNJ characters and show Inherited characters
  • Fix for Thai characters with a below mark [ou1cimx1#979179]
  • Harfbuzz-shaper - fix incorrect logClusters being set in HB_OpenTypePosition
  • Library:
  • QtCore:
  • Fix a couple of edge cases for WildcardUnix matching [QTBUG-20897]
  • Fix BC break with QAbstractFileEngine "mount points" [QTBUG-23688]
  • Change QUrl::toLocalFile to return path for relative urls [QTBUG-19827]
  • Fix progress bar values >100% when http upload is retried [QTBUG-23993]
  • Fixes QIconvCodec::convertToUnicode()
  • Make QString::latin1() re-entrant, the global QHash needs a mutex
  • Changes in Symbian CleanupStack use to allow dodgy app start [ou1cimx1#960665]
  • Fixed null pointer dereference in QUnifiedTimer
  • Fixes a possible out-of-bound write in QByteArray
  • Raise loopLevel for deleteLater in event filters
  • Fixed compiler warning about unused variable with QT_NO_TEXTCODEC
  • Initializes seqDumpPos on qiodevice.cpp
  • QWindowsPipeWriter could terminate the process to early [QTBUG-4425]
  • De-duplicate platform-dependent paths
  • Add missing llvm-gcc-4.2 SSE 4.2 intrinsics
  • QtGui:
  • Declarative: Unify output of warning messages in debug server [QTBUG-22860]
  • Declarative: Use qDebug() for debugger status updates
  • blitter] Fix memory leak in the blitter paintengine
  • blitter] Generate a new serial number when resizing the
  • blitter] Use QScopedPointer for the engine and blittable
  • blitter] Work on tst_QPixmap::clear()
  • directfb: Backport the work from QtBase to Qt 4.8
  • Fix Memoy leak relateded to contextmenu [QTBUG-22817]
  • Handle closable tabs in QAccessibleTabBar
  • Activate window when focus is set in QAccessibleWidget::doAction
  • Send text selection changes for accessibility
  • blitter: Use CapabilitiesToStateMask as a class member
  • blitter: Kill the isBlitterLocked variable of the
  • blitter: Move the definition out of the class declaration
  • blitter: Move state updates into new methods
  • blitter: Base QBlitterPaintEngine on QRasterPaintEngine
  • blitter: Group code by functionality in header and cpp file
  • blitter: Fix the 'solid' detection for the brush in case of fillRect
  • Fixed QEventDispatcherQPA::processEvents()
  • Fix crash in QTreeWidgetItem::sortChildren when adding new item [QTBUG-20345]
  • Fixed crash in QDeclarativeGridView
  • Fixed compiler warnings about unused q and d variables in declarative [QTBUG-22512]
  • Add accessible role Terminal
  • Add accessible role Desktop
  • Check for the clipboard manager when looping due to app quiting
  • QTextEdit cursor position fix when moving left/right with selection [QTBUG-22853]
  • Fix pinch-zoom problem when application is deactivated [ou1cimx1#948030]
  • Do not check isActiveWindow to determine if an accessible widget is focusable
  • Use available geometry when maximized (qwidget_qpa.cpp)
  • Fixed CustomDashLine drawing bug [QTBUG-23248]
  • Ensure the header's context menu is in sync with the visible sections [QTBUG-23271]
  • Update accessibility selections in QTextControl
  • Fix QListView::scrollTo() when there are hidden rows [QTBUG-21115]
  • QTextEngine - treat a fullstop (0x2E) as the same script as the preceeding
  • text when dividing up strings
  • Added QAccessibleGroupBox (a new accessible interface for QGroupBox)
  • Fixed memory leak in QPA/Lighthouse event handling
  • QDial: Fix crash when singleStep-property is 0 [QTBUG-23072]
  • Build fix to raster window surface [QTBUG-23320]
  • QPA: Don't force event handling every second. No need to wake up the CPU if we know
  • that nothing happened.
  • Fix submenu positioning [QTBUG-23568]
  • Fix divide by zero when glyphWidth is 0 (QTextEngine)
  • QtNetwork:
  • Fix null pointer dereference in NTLM authentication
  • Fix NTLM authentication with email address [QTBUG-19894]
  • Fix faulty logic in http connection pipelining
  • Handle plain socket write errors in SSL
  • Don't fetch credentials from cache following a failed proxy authentication [QTBUG-22875]
  • Fix race in http connection channel
  • Fix http authentication to a different realm on the same server
  • Fix for assertion failure on QNetworkAccessAuthenticationManager
  • Prevent data loss when an ssl socket is closed by remote [QTBUG-23607]
  • Fix online status checking in generic bearer plugin [QTBUG-22873]
  • Abort FTP download, not the whole application [QTBUG-22820]
  • Fix incorrect use of QObject::disconnect in synchronous http request
  • Fix handling of urls containing username/password in QNetworkAccessManager [QTBUG-18107]
  • Remove unnecessary locking from QNetworkProxy constructor [QTBUG-13088]
  • QNetwork: fix compilation with "-no-feature-bearermanagement" [QTBUG-23239]
  • QSslCertificate - make lazy initialisation thread safe [QTBUG-20452]
  • QNetwork: remove compile warning (QHttpNetworkConnectionChannel)
  • QtOpenGL:
  • Using samples=0 to turn multisampling off [ou1cimx1#951223]
  • Fixed crash in GL 2 paint engine on Intel Atom [QTBUG-22483]
  • QtDBus:
  • Remove implicit const char*->QString cast from QDBusServer's constructor [QTBUG-23398]
  • Fix crash in QDBusDemarshaller basic string-like type extraction [QTBUG-22840]
  • Fix crash in QDBusDemarshaller QStringList extraction [QTBUG-22840]
  • Fix crashes and non-portable functionality in QDBusDemarshaller QByteArray extraction
  • QTBUG-22840]
  • QtWebKit:
  • Updated WebKit to c1252be57a3f673277c732c0902568111b2f4964
  • QtSql:
  • Handle the 'real' datatype correctly in the SQLite driver [QTBUG-16373]
  • Ensure that QSqlDatabase::database() is still thread-safe [QTBUG-13423]
  • QtTest:
  • Doc: Add `-xunitxml' option to qtestlib documentation [QTBUG-14305]
  • QtXml:
  • Fix memory leak in QDomDocument DTD notation declaration handler [QTBUG-22588]
  • Fix memory leak in QDomDocument DTD entity declaration handler [QTBUG-22587]
  • Fix memory leak in QDomDocument entity text expansion
  • Fix access to uninitialized values in QtXmlPatterns
  • Database Drivers:
  • Platform Specific Changes:
  • Qt for Linux/X11:
  • Take into account shaping in findRealWindow
  • Fix crash in qt_init when the XFIXES extension is not available
  • Pass events to installed event dispatcher event filters
  • before passing them to x11ProcessEvent()
  • When doing mouse move compression, pass non-MotionNotify events
  • to installed event dispatcher event filters
  • Take into account input shaping in findRealWindow
  • Fix signature of q_atomic_test_and_set_ptr [QTBUG-22479]
  • Qt for Windows:
  • Fix crash in positionInLigature [QTBUG-23104]
  • Fix crash when creating a QScriptEngine in a native thread [QTBUG-22926]
  • Windows: Add gcc 4.6 for cross building
  • use "cp -R" instead of "cp -r" for *bsd compatibility
  • Windows: Fix qt_ntfs_permission_lookup [QTBUG-247]
  • Remove NTFS junction and mount point detection [QTBUG-20431]
  • qfilesystemengine_win.cpp: compile with namespaced Qt
  • Build fix to qapplication_win.cpp when QT_NO_GESTURES is used [QTBUG-22501]
  • Fix a crash when changeEvent() is called and there is no container [QTBUG-23957]
  • Windows configure: make -mp affect the Qt build itself [QTBUG-23929]
  • Ensure that the type is not registered as a typedef (ActiveQt) [QTBUG-18555]
  • Fix Windows timer performance regression
  • Ensure the scrollers appears when there is too many menu items [QTBUG-23507]
  • QElapsedTimer/Win: Fix 64-bit integer overflow [QTBUG-23150]
  • Fix a crash in QSystemLocalePrivate::uiLanguages()
  • Fix mouse wheel page-by-page scrolling on windows [QTBUG-11336]
  • Fix potential race condition in data structure of adopted thread watcher
  • Fix to exit of adopted thread watcher in Windows [QTBUG-23961]
  • Make reference counting for QAxClientSite multi-processor safe
  • Activate replacements when installing .pc files for win32
  • Fixed Windows performance regression introduced by ac2818bef95f134 [QTBUG-24602]
  • Prevent stack corruption when using OpenGL Core Profile on Windows
  • Fix error handling in QHostInfo windows backend
  • Windows - fix getsockopt calls for narrower than int options [QTBUG-23488]
  • Fix window positioning regression from QTBUG-10589 fix [QTBUG-24071]
  • Qt for Embedded Windows:
  • Build fix for WINCE to qfsfileengine_win.cpp [QTBUG-22499]
  • Fixed fileiterator issue for WEC7 [QTBUG-22503]
  • Removed unnecesary dependency to winx.h from desktopservices for WinCE
  • Build fix for WINCE to qlocale_tools.cpp [QTBUG-22500]
  • Added mkspecs for WEC7 platform builder and armv4i HW
  • Fixed sqlite for Windows CE [QTBUG-22508]
  • Fix qsystemerror for WinCE [QTBUG-22498]
  • Fixed qapplication_win.cpp build for WinCE
  • libpng config for WEC7 [QTBUG-22506]
  • Fix DEPLOYMENT_PLUGIN for graphicssystem plugins [QTBUG-23963]
  • Fixed EGL build for WEC7 [QTBUG-22504]
  • Fixed QFile::link behaviour for WinCE devices.
  • Fixed compiler warning for libpng when compiling for WEC7 [QTBUG-22512]
  • Fixed MSVC compiler warning for zlib when compiling on WEC7 [QTBUG-22512]
  • Fixed libjpeg compiler warning about macro redefinition [QTBUG-22512]
  • Disable qmlplugindump build for WinCE [QTBUG-22518]
  • Enable basic gesture support for WEC7 [QTBUG-22517]
  • Fixed qchar and qsvgrenderer autotest deployment for WinCE devices
  • Reduces compiler warnings when compiling for WEC7 [QTBUG-22512]
  • Fixed warning by MSVC about class/struct mismatch in MethodData
  • when compiling declarative module [QTBUG-22512]
  • Fixed compiler warning about unused status argument [QTBUG-22512]
  • Fixed DEBUG macro redefinition when compiling for WEC7 with MSVC [QTBUG-22512]
  • Build fix for QtDeclarative in WindowsCE [QTBUG-22511]
  • Fix 3 autotest build faulures for WinCE
  • Fixed cetest build for Windows CE [QTBUG-22505]
  • Fixed QtDeclarative autotest deployment for WinCE devices
  • Fixes to JSCore for WinCE [QTBUG-22502]
  • JSCore build fix for WEC7 [QTBUG-22497]
  • Fixed qmldbg_inspector build for WEC7 [QTBUG-22510]
  • Fixed CeTest remotelib build for WinCE 5
  • Fixed zlib build for WEC7 [QTBUG-22507]
  • Fix static build of Qt for WinCE and WEC7 [QTBUG-24500]
  • Tools:
  • qmake:
  • Escape path names in qmake-generated Makefiles [QTBUG-11776]
  • Fix qmake evaluation of QMAKE_TARGET.arch on msvc2010 x86_64
  • Create target pkgconfig dir in qmake generated Windows Makefiles
  • escape *_script_file usages in MingwMakefileGenerator::writeObjectsPart [QTBUG-24595]
  • Visual Studio project generator
  • qmake: fix /MP option for VS 2010 [QTBUG-23490]
  • qmake: fix default value for C++ optimization in vcxproj files [QTBUG-23421]
  • Ensure that the RC_FILE is correctly handled in a single configuration [QTBUG-22545]
  • configure:
  • Make configure not complain about missing perl for non-dev builds [QTBUG-5710]
  • qtconfig:
  • Add concurrent to QT_CONFIG
  • qdoc3:
  • Fix a bug where 'int' is not printed in snippets
  • Add dita_docs target to generate DITA output
  • Add a default alt attribute to img tags
  • Also correctly apply stack size difference in MSVC2008
  • Removed unnecessary codeblock from cppcodeparser.cpp (segfault due to null-pointer
  • reference) [QTBUG-24082]

New in version 4.8.0 (December 16th, 2011)

  • Qt Platform Abstraction (QPA):
  • QPA restructures the GUI stack to enable easier porting of Qt to different windowing systems and devices. More info on: Lighthouse has grown up now.
  • Threaded OpenGL support:
  • Enables those of us that are not OpenGL-ninjas to render OpenGL from more than one thread concurrently. More info on: Threaded OpenGL in 4.8.
  • Multithreaded HTTP:
  • HTTP requests are now handled in a separate thread by default. This should make application guis smoother, as networking will no longer use the main event loop.
  • Optimized file system access:
  • The file system stack received some heavy lifting under the hood. The result is better I/O performance, achieved by reducing the number of system calls performed for I/O and by better use of cached data, when available. The improvements in performance can be seen across all platforms.

New in version 4.7.4 (September 1st, 2011)

  • Right-To-Left support
  • Improved image caching
  • Text input improvements – Support for split-screen virtual keyboard
  • Pinch Area to provide a declarative API for handling touch input
  • QML Shaders plugin

New in version 4.8 Beta 1 (July 22nd, 2011)

  • In the Qt 4.8 the focus has been quality and performance improvements, but also other new additional features have been included.
  • Qt Platform Abstraction – to provide a clean abstraction layer for porting QtGui to new window systems.
  • Threaded Open GL support
  • Multithreaded HTTP
  • Optimized file system access
  • For Symbian especially: Native Symbian networking, Ipv6 and OpenGL Graphics, Symbian resource mgmt.
  • New API’s: Localization API and IP multicast API.
  • As previously mentioned, the Qt 4.8 Beta includes a beta maturity version of Qt Quick 1.1, with the following improvements.
  • Right-To-Left support
  • Improved image caching
  • Text input improvements – Support for split-screen virtual keyboard
  • Pinch Area to provide a declarative API for handling touch input.

New in version 4.7.3 (July 5th, 2011)

  • QtNetwork:
  • SSL:
  • [QTBUG-18338] blacklist fraudulent SSL certificates
  • Qt for Symbian:
  • Bearer Management:
  • [QTBUG-15108] Deadlock between SymbianEngine mutex and QNetworkConfigurationPrivate mutex in the symbian bearer code
  • [QTBUG-17627] qnetworksession.h Q_DECLARE_METATYPE breaks building QtMobility QtBearer depending applications
  • GraphicsView:
  • [QTBUG-17966] Major regression in QGraphicsView OpenVG backend
  • Declarative:
  • [QTBUG-17503] Export qml debugging symbols on Symbian
  • Widgets:
  • [QTBUG-17786] BC between Qt 4.7.3 and 4.6.3 QTreeView::indexRowSizeHint doesn't return correct value on Symbian for row when QPushButton widget is inserted in the treeview
  • [QTBUG-4953] QMessageBox can not be closed/dismissed on touch phones if any widget is fullscreen
  • Painting:
  • [QTBUG-17907] tst_QGraphicsTransform::rotation3d test case from tests/auto/qgraphicstransfor is failed for some rotation angle on Symbian^3 devices
  • [QTBUG-18154] Symbian's QPixmap::logicalDpi[X\Y]() incorrectly returns MAXINT

New in version 4.7 (September 22nd, 2010)

  • QMacStyle:
  • Removed frame around statusbar items. (QTBUG-3574)
  • More native appearance of item view headers and frames. (QTBUG-10047)

New in version 4.6.3 (August 10th, 2010)

  • [QTBUG-8461] Fixed incorrect text rendering with document mode tabs.

New in version 4.6.2 (February 15th, 2010)

  • Qt for Mac OS X:
  • [QTBUG-7832]: Restored missing margins around non-unified toolbars.
  • [QTBUG-7312]: Menubar and dock disappear after hiding a fullscreen widget on Cocoa.
  • [QTBUG-7481]: Re-added the Close button in QPrintPreviewDialog for Mac/Carbon.
  • [QTBUG-7522]: Drawing fake buttons using QMacStyle+QStyleOptionViewItemV4 lead to crash.
  • [QTBUG-7625]: Calling showFullScreen() then showNormal() on a widget results in top menu hiding.
  • [QTBUG-7086]: QFileDialog now correctly responds to fileMode & acceptMode changes.
  • [QTBUG-7162]: Fixed a crash in Designer when previewing a QMainWindow with native toolbar.
  • [QTBUG-7305]: Fixed a crash when deleting QMainWindow with native toolbar on Cocoa.
  • [QTBUG-6882]: Fixed a text layout issue with QHeaderView in right-to-left mode.

New in version 4.6.1 (January 19th, 2010)

  • 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 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

New in version 4.6.0 (December 1st, 2009)

  • More platforms:
  • Qt 4.6 includes support for the Symbian platform for the first time, and also adds Windows 7, Apple Mac OS 10.6 (Snow Leopard) and the upcoming Maemo 6 to the list of Qt supported platforms. Also available is community support for real-time operating systems QNX and VxWorks. Support for Maemo 5 is also currently in development, with the second technology preview being released today.
  • Qt support for Symbian and Maemo creates the first opportunity for developers to target both of these platforms from the same codebase. Being able to share code across platforms means that the applications they create will reach the market faster and reach a broader audience of device users.
  • Also released today is a technology preview of new Qt APIs from the Qt Mobility project. These cross-platform APIs provide developers with functionality such as location for navigation-type devices, as well as messaging, contacts, and bearer management.
  • More eye candy:
  • Qt 4.6 builds upon the graphical improvements of 4.5 and enhances them with the addition of new Animation Framework – including intuitive state machine functionality – plus new advanced graphics effects like opacity, drop shadows, glow, and filtering.
  • More fingers:
  • One of the most exciting new features in Qt 4.6 is the ability to create multi-touch applications. New multi-touch and gesture based input methods such as flicking and kinetic scrolling make Qt 4.6 a powerful framework for creating dynamic, tactile ways for users to interact with applications and devices.
  • More horsepower:
  • Qt 4.6 challenges the conventional development notion that advanced UI capabilities normally come with a significant performance cost. Extensive work has been done to deliver the best possible performance while enabling developers to deliver the “wow” effect that is demanded by users.
  • Key performance improvements come in the form of a highly optimized, re-written Qt GraphicsView rendering algorithm, a new OpenGL paint engine, WebKit, 2D vector graphic support using OpenVG, and new DirectFB support.
  • Updated tools:
  • Complementing the release of Qt 4.6 is an updated release of Qt Creator, a cross-platform IDE for Qt development. Qt Creator 1.3 and Qt 4.6 together form the Qt SDK which contains everything developers need to create cross-platform applications.

New in version 4.6.0 Beta 1 (October 14th, 2009)

  • Performance improvements to key areas of Qt including: a rewrite of the Qt Graphics View rendering algorithm, resource optimization and a new OpenGL paint engine for 3D graphics rendering
  • The Qt WebKit Integration has been extended with an API to access and modify the contents (DOM) of Web pages being browsed, as well as performance improvements and a new JavaScriptCore based backend for QtScript
  • New support for hardware-accelerated 2D vector graphics using OpenVG
  • Improved support for DirectFB

New in version 4.5.3 (October 1st, 2009)

  • [258230] Fixed inconsistencies in value returned from QDirIterator::next().
  • [256164] Fixed the setting of alpha values in QColorDialog.
  • [255019] Fixed a crash when using large value for decimals.
  • [255502] Fixed bug in getDouble()
  • [256240] Proper handling of HTTP redirect in AlwaysCache mode.
  • [257662] Fix timing issues that could trigger double sending of an HTTP request.
  • [256630] Fix usage of QProgressDialog together with QNetworkReply.
  • [256066] Fix loading of a PEM when the length was a multiple of 64.
  • [260165] Fixed a bug where temporary files would be left behind when copying a file to a non-existing directory.
  • [QT-353] (ODBC) Fixed issue of forward only datasets failing when not explicitly set so.
  • [222678] Fixed QSqlTableModel: trying to delete the wrong row.
  • (Interbase) Fixed crash when calling numRows on unknown query type.
  • Fixed several database autotests.
  • Fixed determination of end of odbc string on deficient driver.
  • Fixed formatting of date strings in psql driver.
  • Fixed mysql queries automatically getting prepared. Now have to explicitly prepare them if you want that functionality.
  • Fixed failure when QSqlTableModel has null fields to update.
  • Fixed missing isnan/isinf on some platforms (needed for postgres driver)
  • Fixed ::record for dialect 3 named tables in interbase/firebird.
  • Fixed invalid length for numeric fields in oracle.
  • (ODBC) Fixed non-unicode strings should be strings, not bytearrays.
  • [252088] Drag and drop events will now consider the WA_TransparentForMouseEvents in Cocoa port.
  • [255428] Fixed an an issue when Calling QWidget::raise() on hidden windows making them visible in Cocoa port.
  • [256269] Window resize events triggered from QWidget::adjustSize() will now be sent as non-spontaneous event in the Cocoa port.
  • [258822] Fixed a crash when inserting the same menu twice in a menubar in Cocoa port.
  • Fixed the wizard background images for Snow Leopard.

New in version 4.5.2 (July 15th, 2009)

  • [252795] Ensure that we send Apple Events in the Cocoa port even when Cocoa isn't ready.
  • [252176] Fix regression in drawing parts of pixmaps on Panther.
  • [253402] Fix a crash when a Cocoa window that used to be a QWidget would get events after the QWidget was destroyed.
  • [249178] Fixed an issue with drawing text to QImages on Mac/Cocoa.
  • [250066] Fixed an issue that caused reparenting of QGLWidgets to output warnings on Mac/Cocoa
  • Build System:
  • [253053] Linker in macx-g++42 spec is gcc instead of gcc-4.2.
  • Designer:
  • [248769] Fixed a bug affecting the display of keyboard shortcuts in the detailed view of the action editor.
  • [251092] Fixed a bug preventing entering local file names for QUrl-type properties on Windows.
  • [251691] Fixed dynamic re-translation of table headers.
  • [252251] Improved readability of the property editor when using the KDE Obsidian Coast theme.
  • [253236] Fixed a regression bug triggered by forms with a size policy of 'Fixed' on the main cointainer.
  • [253278] Made it possible to set QString-type properties using QDesignerFormWindowCursor::setProperty().
  • [253539] Prevent crash in Designer with the Cocoa port when when using a scroll wheel to change a property.
  • [252333] Fixed a regression crash in uic triggered when icon was set with different modes than normal off.
  • [252414, 252416, 252502] Fixed a crash in case of setting invalid point size of font property in property editor.
  • uic:
  • [252333] Fixed a regression crash triggered by using icons with different pixmaps for QIcon states.
  • DirectFB:
  • Make sure we pick an appropriate format for pixmaps. E.g. use the same as the primary surface for opaque pixmaps and pick an appropriate one for transparent pixmaps if the primary surface format is not transparent.
  • Properly fall back to the raster engine for pens that aren't solid color.
  • Properly fall back to raster engine with "mirrored" scales.
  • Make sure window surfaces are in the appropriate pixel format and created in video memory if supported.
  • Fix clipping bug that would cause painting errors.
  • Fix various crash bugs.
  • Fix bugs when transforming/copying pixmaps with alpha channel.
  • Fix various bugs with regards to painting with alpha channel/porter duff.
  • Optimize a couple of internal functions to slightly speed up drawing.
  • Optimize raster fall backs.
  • Allow more customization for Flipping options.
  • Fix drawing with opacity != 1.0.
  • Support for better logging when trying to debug performance problems.
  • Fix bug in keyboard handling that caused modifiers not to work.
  • Get rid of some compiler warnings.
  • Documentation and Examples:
  • Added a new example (fancy browser) which shows how to use jQuery in QtWebKit.
  • QtDBus:
  • [236955] Fixed an issue that would cause QtDBus to crash when relaying a signal emitted from a class under certain conditions.
  • QtOpenGL:
  • [247083] Re-enabled anti-aliasing for large font sizes in OpenGL paint engine.
  • [251485] Fixed crash that could occur with projective transforms and high quality antialiasing.
  • [253468] Fixed a crash in the GL 2 paint engine that could occur when drawing text.
  • QtWebKit:
  • Backported fixes for critical bugs, memory leaks, and crashes from WebKit trunk (with revision numbers)
  • QAbstractItemView:
  • [250754] Changing the font of the view did not update the size of the items if there was an application style sheet.
  • [252532] Pressing enter in a QPlainTextEdit embedded in an item view now inserts a newline
  • QAbstractNetworkCache:
  • Only cache responses to HTTP GET by default, not HTTP PUT or POST.
  • QApplication:
  • [249589] Fixed bug that prevented any part of the application from receiving focus when Graphics View was disabled using QT_NO_GRAPHICSVIEW.
  • QByteArrayMatcher:
  • [251958] Assignment operator and copy constructor miss data.
  • QComboBox:
  • [253944] Changing the style doesn't reset custom item delegate anymore.
  • [254589] Fixed the frame appearing if setting a style sheet with a border on the embedded item view while there is a style sheet on the application.
  • QCompleter:
  • [253125] QCompleter doesn't expand entries with UnfilteredPopupCompletion.
  • QCssParser:
  • [252311] "font-family:" now handle fallback font specified with a comma-separated list.
  • QDir:
  • Fix reentrancy (listing directories in different threads)
  • QFile and QTemporaryFile:
  • Fixed a leak of file descriptors in QTemporaryFile::rename, introduced in 4.5.1
  • [165920] QFile::copy leaves the source file open after the file has been copied.
  • [191467] & [252293] QFile::copy of resource files to the file system fails on Windows.
  • [197857] QFile::copy of resource files leaves temporary files on file system.
  • [248223] QTemporaryFile: Access denied error when (re-)opening through QFile interface.
  • [252659] QTemporaryFile::rename may leave source file behind.
  • QFileSystemModel:
  • [254701] QFileSystemModel doesn't sort subfolders when being used in a QTreeView.
  • [251295] Windows path names incorrectly constructed in calls to updateIcon().
  • QFileDialog:
  • [251341] It is not possible to remove a directory in the sidebar if the directory does not exist.
  • [251321] Hidden path in QFileDialog's sidebar cannot be opened.
  • [226483] setSidebarUrls() handles the URLs case sensitively so that adding the same directory twice is possible Windows.
  • [252068] QFileDialog with QSortFilterProxyModel crashes.
  • [254490] QFileDialog selectFile() doesn't clear the selection if we call it several times.
  • QFontDialog:
  • [252000] Ensure that QFontDialog::getFont() works on Mac OS X.
  • QGraphicsItem:
  • [197802] Don't show children when parent is not visible
  • [252913] QGraphicsItem::setOpacity(0.0) does not trigger an update
  • QGraphicsView
  • [253415] Reset the 'connectedToScene' flag when changing the scene of a view
  • QGraphicsWidget:
  • Fixed a bug with Qt::WidgetWithChildren shortcut context.
  • QGtkStyle:
  • [250731] Fixed a build issue with glib version lower than 2.3.2
  • [254342] Fixed a potential crash when system theme changes occur.
  • [254614] Fixed an assert or warning related to GtkEntry focus handling reported with certain versions of GTK+.
  • QLocalSocket:
  • [247144] Correctly handle remote disconnects.
  • QMacStyle:
  • [253339] Don't draw arrows on tool buttons that have a menu and text only.
  • [252301] Ensure that small and mini spin boxes are drawn correctly.
  • QMotifStyle:
  • Fix crash when changing style and destroying progress bar.
  • QNetworkAccessManager:
  • [248838] Make QNetworkAccessManager reject invalid HTTP input earlier.
  • QNetworkCookie:
  • [251959] Fixed parsing of multiple cookies separated by a newline.
  • QNetworkCookieJar:
  • [251467] Do not allow cookies for domains like ".com".
  • [228974] Allow cookies whose domain attribute is missing a leading dot.
  • QObject:
  • Fixed possible race condition if two QObject connected together with signals and slots are destroyed in different threads.
  • QPainter:
  • [253783] Fixed text shaping bugs when using ligatures and different scripts in a single text item.
  • Fixed various inconsistencies for image drawing on non-integer coordinates.
  • Fixed bug with 0-opacity causing images to be drawn fully opaque.
  • Fixed crash when drawing on a null pixmap.
  • [251534] Fixed issue where text with non-opaque color from widget palette would be blitted instead of blended.
  • [253663] Fixed an issue with implicitly closed poly lines when using perspective transforms.
  • QPrintDialog:
  • [253135] Crash in QPrintDialog when editing output filename.
  • [252873] Fixed an issue that could cause QPrintDialog to invalidate a valid QPrinter object.
  • [224728] Fixed an issue under X11 where QPrintDialog didn't update the print-to-file state if it was passed a QPrinter set up to print PDF or PostScript.
  • QPrinter:
  • [252873] Fixed an issue with QPrinter::NativeFormat printers not being valid.
  • [248881] Fixed an issue under Windows where QPrinter::pageRect() returned the wrong rect when QPrinter::fullPage() was set.
  • [199271] Fixed an issue with QPrinter::setPrinterName()/printerName() on Mac.
  • QProgressBar:
  • [252283] Fixed busy indicator for a QProgressBar with a style sheet applied to it.
  • QSelectionModel:
  • [252069] Fix QSelectionModel::rowIntersectsSelection or QSelectionModel::columnsIntersectsSelection not reporting right result if some items are disabled.
  • QSortFilterProxyModel:
  • [250023] Fixes QSortFilterProxyModel not reporting child if the model needs to fetchMore().
  • [251296] In dynamic filter model, children of temporarily filtered items were not correctly updated.
  • [252507] Show a warning instead of crashing if invalid indexes are passed.
  • [254234] Fixed setDynamicSortFilter not working when setting the model initially.
  • QString:
  • Fixed reentrancy of QString::squeeze().
  • QSvg:
  • [253614] Fixed an issue with parsing the 'stroke-dasharray' SVG attribute.
  • QSvgIconEngine:
  • [251106] Fixed an issue that caused QIcon::actualSize() to reparse the SVG file for each acutalSize() call until QIcon::pixmap() was called.
  • [248848] Fixed an issue that would cause QIcon::pixmap() to reparse the SVG file, even though there was a cached pixmap for that size available.
  • QTabBar:
  • [252472] Fixed problem with the current tab not being visible after calling setTabButton() on a scrolled tab bar.
  • QToolButton:
  • [252554] Fixed a problem where text labels would be partially clipped when using Qt::ToolButtonTextUnderIcon.
  • QTransform:
  • Fixed issue in QTransform::type() causing a projective transform to be treated as a scaling transform.
  • QVector:
  • Fixed reentrancy of QVector::reserve().
  • QWidget:
  • [250668] Don't send extra wheel events when using the scroll wheel in Cocoa.
  • [253448] Prevent a crash when using the Qt::WA_MacBrushedMetal attribute in conjunction with style sheets.
  • QWizard:
  • [252662] Fixed crash that could happen when compiling on Windows XP and running on older Windows versions like 98 and 2000.

New in version 4.5.0 (March 5th, 2009)

  • Performance Improvements:
  • Performance was the major design goal of Qt 4.5, and major efforts were put into increasing the runtime performance of Qt-based applications through:
  • Focused re-engineering of key functionality
  • A new pluggable graphics system
  • QtBenchLib a new performance benchmarking library,
  • Upgrade to 4.5 to realize the performance benefits in your applications; most engineering work has been done to the core Qt API.
  • With Qt 4.5, the Qt WebKit Integration now utilizes the latest version of WebKit:
  • Netscape plug in (NPAPI) support, enabling you to to incorporate Flash™ content in your Qt applications
  • Support for HTML 5 including zooming, CSS-based animations, and more
  • Integration with the lighting-fast SquirrelFish JavaScript engine
  • 64-bit Cocoa Support on Mac:
  • 64bit IconQt 4.5 adds support for developing 64-bit applications on top of the new Mac Cocoa API, making it possible for Qt developers to deploy resource-intensive applications to the latest version of the Mac OS (10.5).
  • Qt 4.5 introduces many other new features across the framework, including:
  • New debugger for the QtScript ECMA standard Qt scripting engine (Check out the video!)
  • XSLT support for transformation of XML content into XML, HTML or other text
  • Support for Open Document Format (ODF)
  • Improved proxy support