Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
New Features in Qt 5.8
Jump to navigation
Jump to search
NOTE: Work in Progress Until the Alpha Release
New Features (within existing modules)
- Qt Core
- Added at(), operator[], mid(), right() and left() to QLatin1String
- Qt GUI
- QTouchEvent no have uniqueId and rotation
- Support for dithering when converting to all QImage formats
- Previously private QOpenGLTextureBlitter API is made public, to help QtWayland in particular
- Qt Quick
- Refactored the Qt Quick scene graph to remove its OpenGL dependency and make it possible to create rendering backends based on other graphics APIs, such as Vulkan or Direct3D.
- Integrated the software renderer for the Qt Quick scene graph as a proper backend for the scene graph (previously known as the Qt Quick 2D Renderer.)
- Implemented support for partial updates in the software backend for the scene graph (2D Renderer) to prevent expensive fullscreen updates when only small areas are changing.
- Added an experimental Direct3D 12 backend
- Implemented caching of code and data structures generated from .qml/.js files to disk to reduce start-up time and memory consumption. The resulting .qmlc and .jsc cache files are memory mapped.
- Cleaned up touch and mouse event delivery and added a new internal class QQuickPointerEvent which is used for that purpose. This is the foundation for further improvements with regards to input event handling, but does not affect any code using Qt Quick yet.
- Qt Quick Controls 2
- Added new QML types: Dialog, DialogButtonBox, MenuSeparator and ToolSeparator
- Added ripple effects to the Material style
- Added hover effects to the Material and Universal styles
- Added a 'System' theme to the Material and Universal styles
- Added new experimental "platform" QML types: MenuBar, Menu, SystemTrayIcon, ColorDialog, FontDialog, MessageDialog, FileDialog and FolderDialog
- Qt Widgets
- Qt WebEngine
- Based on Chromium 51+ (probably 53)
- view-source: scheme is supported
- Spellchecking with custom .bdic files
- Tooltips (HTML5 global tile attribute) are shown
- User scripts now support metadata (@include, @exclude, @match)
- Qt WebEngine (QML) allows defining custom dialogs / context menu's
- Qt WebEngine (QML) on eglfs uses builtin dialogs based on Qt Quick Controls 2
- Added setting to enable printing of CSS backgrounds
- Support for printing
- Qt Bluetooth
- Bluetooth Low Energy Peripheral support on OS X and iOS
- Qt Multimedia
- Added QAudio::convertVolume() (and matching QML API) function to convert an audio volume from one scale to another, e.g. logarithmic to linear.
- VideoOutput (QML) now supports rendering YUV 4:2:2 (YUYV, UYVY) video frames.
- Qt Network
- Support for TLS PSK ciphersuites on server side
- Support for configurable diffie hellman parameters
- Support for HTTP/2 in Network Access Manager
- Qt WebSockets
- Support for TLS PSK ciphersuites on client and server side
- Qt Charts
- Candlestick chart type added.
- Qt 3D
- Main focus on maturation (improving performance, bug fixing and improving test coverage)
- Paint to texture using QPainter from Weiland
- Optional support for issuing commands to Qt3D aspects (e.g. from profiler)
- (Screenshot framegraph node STILL UNDER REVIEW)
- Embedded platforms
- Enhanced multi-screen capabilities and configurability with eglfs when running on KMS/DRM, both with GBM and EGLDevice/Stream
- Added support for 90 or 180 degrees rotation of software-rendered content (QWidget) in eglfs
New Modules
- Qt Wayland Compositor
- Qt SCXML
- Qt Serial Bus
Technology Preview Modules
- QtGamepad (TP2)
Deprecated Modules
The following modules are part of Qt 5.8 release, but deprecated and considered for removal in subsequent releases of Qt:
- Qt Script
Removed Modules
- Qt Quick 2D Renderer (functionality of the module has been merged into Qt Declarative)