| Qt 5.9 introduces many new features and improvements as well as bugfixes |
| over the 5.8.x series. For more details, refer to the online documentation |
| included in this distribution. The documentation is also available online: |
| |
| http://doc.qt.io/qt-5/index.html |
| |
| The Qt version 5.9 series is binary compatible with the 5.8.x series. |
| Applications compiled for 5.8 will continue to run with 5.9. |
| |
| 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. |
| |
| **************************************************************************** |
| * Important Behavior Changes * |
| **************************************************************************** |
| |
| * qmlInfo now reports messages with a QtMsgType of QtInfoMsg instead of |
| QtWarningMsg. To continue to send warnings, callers should migrate to |
| the newly-introduced qmlWarning function. |
| |
| **************************************************************************** |
| * Library * |
| **************************************************************************** |
| |
| QtQml |
| ----- |
| |
| - The garbage collector has been rewritten to provide better memory |
| consumption, and improved, more predictable performance for JavaScript code. |
| - Array.prototype.find and Array.prototype.findIndex from ES6 are now implemented. |
| - Introduced qmlRegisterModule() that can be used to make a certain module |
| version available, even if no types or revisions are registered for that |
| version. |
| - Introduced qmlDebug & qmlWarning functions to qqmlinfo.h, in addition to |
| the pre-existing qmlInfo function. As a side effect, QQmlError has also |
| gained messageType() and setMessageType(). |
| - [QTBUG-52013] Added QQmlEngine::offlineStorageDatabaseFilePath(dbName) |
| to allow getting the actual storage path for a particular database. |
| - [QTBUG-53091] Introduced Qt.application.displayName, to map the |
| QGuiApplication::applicationDisplayName property to QML. |
| - [QTBUG-45316] QML Settings has been fixed to handle JavaScript arrays. |
| |
| QtQuick |
| ------- |
| |
| - Global: |
| * Improved stability of Animator's internals. |
| * [QTBUG-55496] Added a disk cache for OpenGL shaders to QtQuick. |
| * [QTBUG-58845] QWheelEvent delivered to all QQuickItems will now have a |
| correct global position. |
| * [QTBUG-57910] Touch events are now correctly ungrabbed if the touch event |
| was stolen by a parent item, such as a Flickable. |
| * [QTBUG-57098] Added Keys::shortcutOverride signal to allow prevention of |
| e.g. Shortcut from stealing key events. |
| * [QTBUG-56279] Added a shared memory image provider to conserve memory |
| when several processes use the same local image files. |
| |
| - Window: |
| * [QTBUG-60232] Added QQuickWindow::sceneGraphBackend() to allow querying |
| which scene graph rendering backend is in use. |
| * [QTBUG-56115] Added a screen property to Window, which can be used to |
| declaratively associate a window with a specific screen. This is useful on |
| multi-screen embedded systems. Added Qt.application.screens as an array of |
| screens from which one can be chosen to assign to a Window. Added virtualX |
| and virtualY properties to Screen to enable querying the screen's position |
| within the virtual desktop. |
| |
| - Items: |
| * [QTBUG-38515] Added horizontalOvershoot and verticalOvershoot |
| properties to Flickable, for use in implementing custom boundary actions and effects. |
| * [QTBUG-44762] Added a forceLayout method to Positioner types (Column, Row, |
| Flow, Grid) to force positioning of children to happen earlier. Additionally, |
| a positioningComplete signal has been added. |
| * [QTBUG-57203] Added TextInput::textEdited signal to distinguish user edits from |
| programmatical text changes. |
| * [QTBUG-42074][QTBUG-57003] Added support for characters in Private Use Area, |
| as well as zero-width joiners and zero-width non-joiners for TextInput and |
| TextEdit. |
| * [QTBUG-47662] Added MouseArea::pressAndHoldInterval to allow control over the |
| elapsed time before the pressAndHold signal is emitted. |
| * Item::grabToImage on an Image element will now work regardless of the |
| Image's sourceSize or cache properties. |
| * [QTBUG-52553][QTBUG-56501] Made it possible to enable horizontal |
| flicking in a vertical ListView, and vice versa. The only thing apps |
| must do is to specify the desired flick direction and the content |
| width (vertical ListView) or content height (horizontal ListView), |
| which is not calculated by ListView. |
| * Added Shortcut::sequences, to provide support for multiple different shortcut |
| sequences in a single Shortcut. |
| * Added rotation, ellipseDiameters and uniqueId properties to |
| MultiPointTouchArea.TouchPoint, and deprecated the area property. |
| A TouchPoint is now modeled as an ellipse centered on a point, |
| possibly rotated, depending on what the hardware and drivers support. |
| Android and the TUIO plugin support rotation and ellipseDiameters, for example. |
| The uniqueId is so far applicable only to the use of fiducials (tokens, |
| knobs or game pieces with hardware-based identification) on a TUIO touch surface. |
| |
| - Accessibility: |
| * [QTBUG-58340] Fixed focus handling so that keyboard and VoiceOver's |
| virtual focus are in sync (QTBUG-58340). |
| |
| - Text: |
| * Deprecated doLayout() in favor of forceLayout(), to improve consistency now |
| that more types (Positioners, Layouts, etc) have a forceLayout() method. |
| * [QTBUG-51133] Added fontInfo property to Text type, providing a way to |
| query properties of the actual font used for presenting the text. |
| * [QTBUG-58852] Text items with a renderType of Text.NativeRendering will no |
| longer stop rendering with a large number of characters. |
| |
| |
| QtTest |
| ------ |
| |
| - [QTBUG-23083] Added TestCase::touchEvent to support simulating touch events |
| in tests. |
| - [QTBUG-56361] Added createTemporaryObject() and createTemporaryQmlObject() |
| functions to ensure that dynamically created objects can be destroyed at the |
| end of each test function. |