New Features in Qt 5.5
[toc align_right="yes"]
What is new in Qt 5.5
Potentially incomplete.
New Features
- Qt Bluetooth
- Bluetooth Low Energy API final release (5.4 was featuring tech preview).
- Bluetooth Low Energy Support for Android (requires Android v18+) added.
- Bluetooth Classic and Low Energy support for iOS and OS X.
- Qt Core
- You can now have Q_PROPERTY and Q_INVOKABLE within a Q_GADGET, and there is a way to query the QMetaObject of such gadget using the QMetaTYpe system.
- Added Q_ENUM to replace Q_ENUMS which allow to get a QMetaEnum at compile time using QMetaEnum::fromType<T>. Such enums are now automatically registered as metatype, and can be converted to string within QVariant, or are printed as string by qDebug()
- Qt GUI
- Windows packages are all built with -opengl dynamic. No OpenGL-only or ANGLE-only builds are provided anymore.
- On Windows the OpenGL implementation to use can now be configured based on the GPU vendor and driver version using JSON configuration files. This allows shipping fine-grained card and driver blacklists with the apps, when necessary.
- QImage: 8-bit alpha map and grayscale formats.
- Qt Multimedia
- GStreamer 1.0 support. Note that the default is still 0.10. 1.0 support can be enabled by configuring Qt with '
gstreamer 1.0'.
' New video filtering framework to integrate frameworks like OpenCV or compute APIs such as OpenCL or CUDA with VideoOutput elements.
' New API to control camera viewfinder settings
' Improved camera support on iOS (focus, zoom, exposure, viewfinder/image settings)
' The QML MediaPlayer is now rendered in an OpenGL texture on iOS. This means VideoOutput supports advanced transformation, shader effects and doesn't have to be always on top of other items anymore.
- GStreamer 1.0 support. Note that the default is still 0.10. 1.0 support can be enabled by configuring Qt with '
)geocoding, routing and place features to Qt.
* Qt NFC
' Neard based backend for Linux added.
* Qt Network
' New SSL back-end for iOS and OS X based on Secure Transport
' Support for libproxy
' Support for TLS PSK ciphersuites
' Support for elliptic curve certificates
' Ability to select specific curves when using elliptic curve ciphersuites.
* QPA
' On supported desktops, the xcb plugin now uses the D-Bus based org.kde.StatusNotifier protocol for system tray icons, and org.freedesktop.Notifications for notifications.
' KMS/DRM backend for EGLFS. This replaces the now deprecated KMS platform plugin. It allows running apps with eglfs on the console on systems with Mesa and devices that come with drm support.
' EGLFS has a plugin-based backend mechanism in addition to the existing, statically compiled-in solution.
' tslib is now better integrated with EGLFS and LinuxFB to provide support for resistive single-touch touchscreens often used in industrial environments.
' xcb is refactored to move GLX and EGL support into plugins. No more ifdefs, allowing building both backends.
' Added a TUIO Touch plugin for receiving remote touch events via UDP.
' Added a libinput plugin.
' iOS: you can now use QFileDialog to browse system photos using a native image picker dialog by setting directory to QStandardPaths::PicturesLocation. Selected photos can be loaded using QFile.
* Qt QML
' It is now possible to conveniently expose custom C++ value types into the JavaScript environment of QML and QJSEngine.
' Support for JavaScript typed arrays
' Various performance improvements, notably QJSValue
* Qt Quick
' Windows now defaults to the threaded Qt Quick render loop when using desktop OpenGL (opengl32.dll).
' QQuickRenderControl supports threaded rendering.
' Improved behavior of Flickable on OS X trackpads using pixel deltas from native gestures.
' PinchArea handles native pinch gestures when the OS provides them (so far only on OS X). Otherwise it relies on touch events, as before.
' Added a smart zoom signal to PinchArea to react to that gesture on an OS X trackpad.
' MouseArea now has a scrollGestureEnabled property to control whether native scroll gestures from the OS will be handled by the wheel signal handler.
* Qt Quick Controls
' Qt Quick Extras (formerly Qt Quick Enterprise Controls) was added under the QtQuick.Extras import.
' TreeView control for QAbstractItemModel-derived models. Supports QItemSelectionModel selection.
* Qt WebEngine
' WebEngineProfile for control of storage and cache paths and related policies.
' Added support for javascript Geolocation API with QtLocation as a backend
' Added API for managing downloading of files
' Added API for controlling cache and cookie paths and policy
' Added API for WebEngine settings
' Various experimental QML API has been promoted to public
' Added QtWebChannel integration API over Chromium IPC
' Updated Chromium snapshot to version 40
* Qt WebView
' Added native implementations for Mac OS X.
' Added API for running JavaScript (Requires API 19+ on Android).
' Added API for setting the HTML content.
' Added API for load status notifications.
h2. New Modules
* Qt 3D
' The Qt 3D module is now included as a technology preview.
' C++ and QML APIs for easy inclusion of 3D graphics into your Qt applications.
' Supports OpenGL 2, 3, 4 and OpenGL ES 2 and ES 3.
' Data-driven renderer configuration.
' Extensible beyond 3D graphics. Provides a full Entity Component System framework.
* Qt Canvas 3D
' Added Qt Canvas 3D module, a JavaScript 3D rendering API for Qt Quick.
* Qt Location
' Tech preview of this new module
' Adds mapping, (reverse
Deprecated Functionality
With Qt 5.5 the following modules are deprecated:
* Qt WebKit
* Qt Declarative (Qt Quick 1)
* Qt Script
These modules are still included in the Qt 5.5 release, but considered for removal in the future releases of Qt.