What's New in Qt 5.10
New Features in Qt 5.10
Qt Connectivity Module
- The UWP Bluetooth and Bluetooth LE backends can now be used on Windows 10.
 
Qt Graphical Effects Module
- Added support for effects in core profile OpenGL contexts.
 
Qt GUI Module
- Added the cross-platform Vulkan enablers, QVulkanInstance, QWindow with type VulkanSurface, and QVulkanWindow. These enablers are for Windows, Linux (xcb), and Android (level 23+).
 - Added new flags and functions to QSurfaceFormat and QOpenGLWidget, to request sRGB-capable default/backing framebuffers.
 - Added the cross-platform enablers for OpenGL ES 3.2 API, which are now accessible through QOpenGLExtraFunctions.
 - Added support for more than 2 Gigabyte of pixel data in QImage.
 - Added QFont::PreferNoShaping style strategy.
 
Qt Network Module
- Upgraded OpenSSL back-end to use library v1.1.
 - Persistent store of HSTS policies in QNAM (QSettings-based).
 
Qt Quick Module
- Added a shapes plugin, providing a Shape type under QtQuick.Shapes 1.0, which enables adding stroked and filled paths into Qt Quick scenes. Such shapes are rendered either by generating geometry or by using the GL_NV_path_rendering extension.
 - Added the Qt.labs.handlers plugin (tech. preview), providing TapHandler, PinchHandler, and DragHandler. These are lightweight objects for handling events from the mouse or the touchscreen in a device-agnostic way.
Note: The plugin is available as a technology preview so it could could change in future releases.
 - Added support for multi-sample framebuffers to QQuickItem layers using the layer.samples property.
 - Added font.kerning and font.preferShaping properties for advanced control over the font shaping subsystem.
 - Added advance property to Text to retrieve the typographical advance width.
 - Added Image element to enable direct loading of ETC1 and ETC2 compressed textures from 
.pkmfiles on platforms where ETC1/2 are supported. 
Qt Quick Controls 2 Module
- Added support for effects in core profile OpenGL contexts.
 - Added new QML types: Action, ActionGroup, and MenuBar.
 - Added these new styles:
- The Fusion style offers a platform agnostic desktop-oriented look'n'feel.
 - The Imagine style is based on image assets that can be provided using a predefined naming convention.
 
 - Added actions support for it in:
- buttons, delegates, menus,
 - exclusive button groups,
 - nested menus, and cascading sub-menus.
 
 - Added support for:
 - Added the following new members:
- TabBar::index, tabBar, and position attached properties.
 - Dialog::applied(), reset(), discarded(), and helpRequested() signals.
 - Dialog::standardButton() method.
 - StackView::empty property.
 - Menu::popup() and dismiss() methods.
 - Menu::actionAt(), addAction(), insertAction(), removeAction(), and takeAction() methods.
 - Menu::menuAt(), addMenu(), insertMenu(), removeMenu(), and takeMenu() methods.
 - Menu::count and currentIndex properties.
 - MenuItem::menu property.
 - Container::removeItem(Item) and takeItem(int) methods (TabBar and SwipeView).
 - Popup::enabled, mirrored, and opened properties.
 horizontalandverticalproperties to all controls that have theorientationproperty: RangeSlider, Slider, ScrollBar, ScrollIndicator, and SwipeView.
 - Other improvements:
- Added support for specifying a transition for StackView::clear().
 - Enabled support for ApplicationWindow::activeFocusControl attached property for a plain Window.
 - Enabled background dimming for popups without ApplicationWindow.
 - Updated Material style for DialogButtonBox to use the Android button layout.
 - Updated default style Slider and RangeSlider to visually indicate the progress/range.
 
 
Qt SerialBus Module
- Added local echo flag to QCanBusFrame to mark frames that are sent from the local system to the CAN bus.
 
Qt Virtual Keyboard Module
- Added the keyboard layouts for Hebrew, Serbian, Hungarian, Czech, Croatian, Bulgarian, Greek, Estonian, and Dutch.
 - Added handwriting support for Farsi, Arabic, and CJK (Chinese/Japanese/Korean).
 - Added new component (InputModeKey) for input mode switch.
 
Qt WebEngine Module
- Updated to be based on Chromium 60.
 - Added pause/resume functionality to download items.
 - Added settings for blocking JavaScript focus and hiding scrollbars.
 - Updated QWebEnginePage with more WebActions, which were supported by QWebPage earlier.
 - Added QWebEnginePage::download for triggering downloads.
 
Qt Widgets Module
- Added support for embedding a window into a QWidget on Android using QWidget::createWindowContainer().
 - Added support for rendering and reading back (grabbing) offscreen content using QOpenGLWidget.
 - Added 
AA_DisableWindowContextHelpButtonattribute that prevents the automatic "What's this" button on dialogs on Windows. - Added 
tabStopDistanceproperty in QTextOption, QTextEdit, and QPlainTextEdit. - Added 
selectionEnd(),selectionLength()to QLineEdit, complementingselectionStart(). - Added QInputDialog::setDoubleStep to enable changing of the step amount for 
getDouble(). - Added 
isPersistentEditorOpen()to QAbstractItemView, QTreeWidget, QTableWidget, and QListWidget. - Added new QStyle::StyleHint, 
SH_TitleBar_ShowToolTipsOnButtons. - Added support for specifying custom internal texture formats in QOpenGLWidget.
 
New Modules
- Qt Network Authorization - Provides support for OAuth1 and OAuth2.
 - Qt Speech - Enables text-to-speech in Qt Applications.
 
These modules were previously released as technology preview and are now fully supported Qt add-on modules.
Technology Preview Modules
- Qt Remote Objects (TP2) - Sharing QObject interfaces (signals, slots, and properties) between processes or devices.
 - Qt WebGL Streaming Plugin - Enables streaming Qt application to a web browser over the network.
 
Deprecated Functionality
- Qt Script
 
Deprecated modules are still included in Qt 5.10, but are considered for removal in future releases.
List of API Changes
The pages below contain a list of API changes in Qt 5.10: