Qt 5.13 introduces many new features and improvements as well as bugfixes over the 5.12.x series. For more details, refer to the online documentation included in this distribution. The documentation is also available online: https://doc.qt.io/qt-5/index.html The Qt version 5.13 series is binary compatible with the 5.12.x series. Applications compiled for 5.12 will continue to run with 5.13. Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: https://bugreports.qt.io/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * General * **************************************************************************** - libwayland 1.8.0 is now required. - Code generated by qtwaylandscanner now includes wayland-client-core.h and wayland-server-core.h instead of wayland-client.h and wayland-server.h. This might break source compatibility for code using custom wayland extensions. **************************************************************************** * Compositor * **************************************************************************** - [QTBUG-70662] Added QWaylandQuickItem::mapFromSurface which converts points in Wayland surface coordinates to points in QQuickItem coordinates. - Fixed a bug where xdg-shell popups were misplaced when devicePixelRatio was not 1. - QWaylandSurface::destinationSize has been added which returns the size of the surface that will be displayed on the screen in surface coordinates. - Fixed a bug where QWaylandSurface::inputRegionContains would return true for some points outside surfaces with buffer scale > 1. - Fixed a bug which caused ShellSurfaceItems for surfaces with buffer scale > 1 to move too much when resizing interactively. - QWaylandSurface::size has been deprecated. Use bufferSize or destinationSize instead. - Added support for linux-dmabuf-unstable-v1. - Added support for the viewporter Wayland extension. - Added a missing change signal for WaylandQuickItem.compositor. - Added deprecated support for the deprecated the wl_scaler extension. - Fixed a bug where virtual keyboard did not send Enter event to clients. **************************************************************************** * QPA plugin * **************************************************************************** - The environment variables, QT_WAYLAND_CLIENT_BUFFER_INTEGRATION and QT_WAYLAND_SERVER_BUFFER_INTEGRATION, now takes precedence over what is communicated through the qt_hardware_integration wayland interface. - The private window decoration API method, QWaylandAbstractDecoration::startResize, now takes Qt::Edges argument instead of a wl_shell_surface_resize enum. This will break window decoration plugins written for older versions of Qt Wayland. - Shell integrations are now features that can be enabled or disabled at build time. - Clients now follow the keyboard key repeat delay and interval configured by the compositor. - Added support for fullscreen-shell unstable v1. - A window menu is now shown when the window decorations are right-clicked (if supported by the compositor). - Minimum and maximum window size is now supported with the xdg-shell and xdg-shell-v6 shell integrations. - xdg-shell (stable and v6) window geometry is now sent every time the window is resized. - Fixed a bug where window decorations were to small for for the content when QT_SCALE_FACTOR was set. - [QTBUG-54786] Fixed a bug where pasting from the clipboard would prefer ASCII over UTF-8, causing loss of special characters. - [QTBUG-68571] Fixed a bug where the DPI of bitmap cursors were not sent to the compositor, leading to the compositor incorrectly scaling the cursor up or down. - [QTBUG-68571] Fixed a bug where bitmap cursor hotspots were off when the screen scale factor was different from the bitmap cursor device pixel ratio. - Fixed a leak of wl_data_offers. - Cursors on high DPI screens are now scaled up if the cursor theme does not have an appropriate high resolution version. - Fixed a bug where QGuiApplication::screens() and primaryScreen() would return initial screens in the reverse order they were added by the compositor. QGuiApplication::primaryScreen() will now return the first output added by the compositor. - Fixed a bug where windows with an OpenGL Core context and window decorations didn't work. - Fixed a build issue where the platform plugin would not be built if the compositor wasn't build. - The non-blocking version of eglSwapBuffers is now used, if supported. This fixed a bug where minimized windows would block the event loop. - Windows that don't get frame callbacks from the compositor within 100 ms are now set as not exposed. This should stop most clients from rendering unnecessary frames to minimized or hidden windows. - Improved startup time by moving key Compose table parsing from startup to the first use (a key was pressed). - Selecting a module via QT_IM_MODULE now works as documented. - Fixed a bug where Ctrl + did not work with non-latin keyboard layouts. Other shortcut sequences with non-latin keys not working also have been fixed now. - Fixed a bug where shortcuts with modifiers that change resulting key would not work as expected. - Added support for xdg-output-unstable-v1 version 2. This means QScreen::name(), will now typically return "VGA-1", "WL-1", "DP-2", "HDMI-A-1" and similar instead of "Screen25", "Screen26", "Screen27" etc. (on supported compositors). - Fixed a crash when closing multiple popups at once.