Qt 5.4.1 is a bug-fix release. It maintains both forward and backward compatibility (source and binary) with Qt 5.4.0 except on Windows when using MSVC 2012 or MSVC 2013. See note below. For more details, refer to the online documentation included in this distribution. The documentation is also available online: http://doc.qt.io/qt-5.4/ The Qt version 5.4 series is binary compatible with the 5.3.x series. Applications compiled for 5.3 will continue to run with 5.4 with the exception of on Windows when using MSVC 2012 or MSVC 2013. See note below. Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: http://bugreports.qt.io/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * Important Behavior Changes * **************************************************************************** - Restored binary compatibility with Qt 5.3.2 on Windows when using MSVC 2012 or MSVC 2013. This means that Qt 5.4.1 is no longer binary compatible with Qt 5.4.0 when using either of those compilers. - [QTBUG-42594] OS X binary package: fixed incorrect linking to libraries in /opt/local/lib **************************************************************************** * Library * **************************************************************************** QtCore ------ - [QTBUG-43893] Fixed memory leak in qSetMessagePattern - [QTBUG-43513] QXmlStreamReader: Correctly parse XML containing NUL bytes in the input stream - [QTBUG-43352] QTemporaryDirectory: Properly clean up in case of a failure - [QTBUG-43827] Fixed regression in QSortFilterProxyModel which crashed when sorting a tree model QtGui ----- - [QTBUG-44273] Fixed misplacement of outlined text with native text rendering - [QTBUG-44147] Fixed VNC not working on some VNC servers - [QTBUG-43850] Fixed crash with multi-threaded font usage - [QTBUG-43850] Made the old harfbuzz fallback available at runtime - Improvements to the experimental high-dpi support - [QTBUG-43318] Better resolving of GLES3 functions to avoid issues when deploying on systems with GLES 2.0 only QtWidgets --------- - [QTBUG-43830] Fixed crash in stylesheets when styling QProgressBar - [QTBUG-43663] QColorDialog: Don't lose focus while color picking QtNetwork --------- - [QTBUG-43793] Fixed disconnections of QSSLSocket after starting encryption QtSql ----- - [QTBUG-36211] qpsql: Added timezone support for datetime fields. - qodbc: Fixed converted string values on Microsoft SQL Server 2012 - [QTBUG-43874] QSqlQuery: Fixed failure of multiple execBatch() calls after a single prepare() call QtPrintSupport -------------- - [QTBUG-43124] Fixed QPrinter::{width,height} return values **************************************************************************** * Platform Specific Changes * **************************************************************************** Linux/XCB --------- - [QTBUG-43436] Fixed regression when drag and drop to other applications - [QTBUG-43809] Turned off font hinting when doing high DPI scaling - [QTBUG-43743] Fixed constantly resizing bigger window when devicePixelRatio is greater than 1 - [QTBUG-43713] Fixed problems with multiple screens with different device pixel ratios regarding window mapping and font sizes. - [QTBUG-43688] Fixed physical DPI and size for rotated screens on X11 - [QTBUG-43049] Fixed grabKeyboard and grabMouse - [QTBUG-36862] Now sends a leave event to the other window when a popup shows which grabs the input - [QTBUG-41590] Turned off subpixel gamma-correction on XCB - Added support for SelectionClientClose in QXcbClipboard - Fixed -nograb and -dograb arguments - [QTBUG-43623] Fixed use after free - [QTBUG-43436] Fixed regression in DnD. Make sure to preserve the QDrag until all data has been received. OS X ---- - [QTBUG-42952] macdeployqt: Fixed incorrect links to QtQuick plugin libraries - [QTBUG-43061] Fixed namespacing of QNSViewMouseMoveHelper - [QTBUG-43471] Fixed regression with Cut/Copy/Paste menu items staying disabled after a filedialog was closed - [QTBUG-42728] Fixed crash in QAction::setFont() when the font is unknown - qt_mac_loadMenuNib: Prevent stale NIB files by diffing file size - [QTBUG-43710] Fixed memory leak in QUrl::toCFUrl() - [QTBUG-43061] Fixed namespacing of QNSViewMouseMoveHelper - [QTBUG-40449] QMacPasteboardMimeFileUri: Use file paths instead of file references - [QTBUG-36787] Fixed crashes occurring during PAC detection in QNetworkProxyFactory::systemProxyForQuery() Windows ------- - [QTBUG-44021][QTBUG-35734] Fixed standard shortcuts when using a non-Latin keyboard layout - ANGLE: Fixed initialization of contexts - [QTBUG-43832] Delayed the creation of static OpenGL context - [QTBUG-43870] Fallback to ANGLE when OpenGL 1.x is detected - [QTBUG-43466] Use the chosen DnD effect in drag enter/move for drop - [QTBUG-41162] Fixed regression with dialogs not rendering when WA_TransluentBackground is used - [QTBUG-43833] Fixed crash when focus window does not have a native window - [QTBUG-43263] Added infrastructure for GPU-specific GL renderers - [QTBUG-43263] Added support for GPU detection - [QTBUG-41782] Prevent buffer over-run when getting the glyph images - [QTBUG-43420] Removed check for minimum/maximum size constraints - [QTBUG-43308] Release mouse capture when window blocked by modal window - [QTBUG-43082] Fixed PDF output when embedding fonts with a large internal leading - [QTBUG-43343] Pass on any unhandled multimedia keys back to the system - [QTBUG-43252] Do not register windows obtained by QWindow::fromWinId() for touch - [QTBUG-43252] Fixed window geometry when using QWindow::fromWinId() - [QTBUG-40578] Skip calculating margins for Qt::FramelessWindowHint - [QTBUG-36318] Handle WM_WINDOWPOSCHANGING during window creation - [QTBUG-42564] Brought FreeType rendering up to par with other platforms - [QTBUG-36220] [QTBUG-36318] Implement heightForWidth() - [QTBUG-40691] Correctly associate IME contexts - [QTBUG-40691] Added support for capabilities to QPlatformInputContext - Limit cursor cache to avoid hitting GDI resource limits - [QTBUG-43900] rcc: Fixed build failure on Windows XP / MingW 4.9 - [QTBUG-41782] DirectWrite: Fixed possible buffer over-run in font handling Android ------- - [QTBUG-39712] Fixed problems caused by surface creation/destruction iOS --- - [QTBUG-43716] guard text responder from clearing selection WinRT ----- - [QTBUG-43862] Fixed QCoreApplication::quit() to exit application. - [QTBUG-44196] Fixed click events being ignored when using pressAndHold. Windows Embedded ---------------- - [QTBUG-44022] Fixed finding windows and widgets QNX --- - [QTBUG-43850] Fixed Harfbuzz-NG support **************************************************************************** * Tools * **************************************************************************** configure & build system ------------------------ - configure will now reject invalid -no-feature-* options. - pkg-config assisted libudev detection was fixed. - [QTBUG-43302][Android] The Android style is included when cross-building on Windows as well. - [QTBUG-43205][Unix] Fixed build D-Bus headers cannot be found. qmake ----- - [QTBUG-39690][Windows] Fixed file separators in 'make clean'. - [QTBUG-40264][Unix] Fixed 'make distclean' for a dynamic library target. - [QTBUG-42678] 'make distclean' now removes .qmake.{stash|super}. - [QTBUG-43026][VS2010+] Fixed compilation of .rc files. - [QTBUG-43457][MSVC] Fixed QMAKE_TARGET.arch for amd64_x86 x-build. - INCLUDEPATH+=. is now unnecessary with all generators.