C
What's New in 2.9
Qt Quick Ultralite maintains source compatibility between minor releases. However, some changes may require you to adapt the application code accordingly. The following sections highlight such changes:
New features
- QtQuick.VirtualKeyboard is upgraded to a fully-supported module. For more information, see Qt Quick Ultralite Virtual Keyboard Overview.
- Support for Linux and Zephyr OS targets.
- Added list, point, and rect QML basic types.
- Added the following members to Item QML type:
- mapToItem() and mapFromItem() methods
- childAt() method
activeFocus
property
- Added the following members to ListView QML type:
- count, currentIndex, and highlight properties.
- positionViewAtIndex() and indexAt() methods
- Added the following member to font QML basic type:
- Added JavaScript string functions,
toUpperCase()
andtoLowerCase()
. qmltocpp
updates:- Reduce memory footprint by avoiding subclass wherever possible, and reorder member variables based on alignment.
- Rebuild the updated QML files only, to avoid overwriting files that are not changed.
- Added support for BGR888 pixel format.
- Added drawing engine initialization CPU fallback functions for each pixel format.
- Added JPEG support to RH850 platforms. The Sprite animation and image decoder examples use the hardware JPEG unit(JCUA) for decoding images on this platform.
qmlprojectexporter
updates:- Support to include BinaryFiles in a QmlProject, and accessed using the BinaryResource API.
- Support for exporting default variants of demos, examples, and tests without using a file selector.
- Added
MCU.Config.vkbPinyinDictionary
config to support customizing the Pinyin dictionary data with Pinyin Support.
- SDK, compiler, and graphics driver upgrades:
- STM32F469i-discovery SDK v1.28.1
- STM32H750b-discovery SDK v1.11.2
- STM32F769i-discovery SDK v1.17.2
- MIMXRT1050-EVK, MIMXRT1060-EVKB, MIMXRT1064-EVK, and MIMXRT1170-EVKB SDK v2.16.000.
- TRAVEO T2G CYT3DL, CYT4DN, and CYT4EN platforms graphics driver upgrade for TRAVEO T2G Cluster Series v2.4.0.
- STM Cube Programmer v2.17.0
- QLS 3.2.1
- FreeType v1.13.3
- LodePNG v20241015
- Examples and demos:
- Rename
freertos_multitask
tomultitask
and port to Zephyr. It now demonstrates how to do multi-threading on Zephyr. - Ported the imagedecoder and sprite_animations examples to Renesas RH850.
- Rename
- Added the QtQuickUltralite.SafeRenderer QML module
Fixed issues
- Fixed platform port for some targets to avoid using more stack memory while blending transformed images. The size of intermediate buffers has been reduced and they are now allocated on the heap instead when needed.
- Fixed
qmlprojectexporter
to avoid creating too many parallel jobs by default. qmltocpp
fixes:- Initialize binding objects first to avoid memory corruption when calling
Property::value()
in the destructor of a property with the binding.
- Initialize binding objects first to avoid memory corruption when calling
- Fixed crash when using fallback drawing engine to blend path on a DrawingDevice with either
PixelFormat_ARGB32
orPixelFormat_ARGB4444
pixel formats. - Fixed Green Hills compiler (version 2015.1.7) failing to compile code for a Component with Loader from QML.
- Fixed potential crash when using multi-line StaticText with horizontal alignment and display rotation.
- Fixed error on Infineon TRAVEO T2G when trying to allocate memory from HyperRAM that is not initialized.
- Improved performance by avoiding duplication of text metric computation for a Text item with either elide or word wrap set.
- Fixed incorrect rendering of sprite animations when display rotation is set.
- Fixed performance issue because of not removing the old entries. Qt Quick Ultralite removes these old entries now from the cache to make space for new ones.
- Fixed text caching to make sure items with a single glyph are also cached when using the Monotype Spark engine.
- Fixed crash on unloading an Image with dynamic
source
property. - Fixed
qulrcc
to estimate correct resource cache size for sprite animations. - Replaced the
Qt
prefix used for orientation and PositionMode enum toListView
. This improves compatibility with ListView in Qt. - Optimized the rendering stack to pre-rotate alpha maps when screen rotation is enabled. This avoids the need to rotate and blend alpha maps at runtime.
- Fixed SwipeView to make sure its currentIndex is reset to the beginning when it is at the max. This should enable to have a carousel effect, where the the view shows the first item after the last item.
- Fixed potential crash or memory corruption on destroying an Item that has the touch.
- Fixed incorrect rendering of Rectangle with gradient, when using display rotation.
- Fixed crash when using QtQuick.Shapes or ArcItem in an ItemLayer with
Bpp32Alpha
as color depth. - Fixed crash when a Loader with a dynamic source or source component property gets destroyed
- Fixed SwipeView animations that do not end at the target index in some cases. This happens on setting currentIndex either to a specific value, or calling incrementCurrentIndex() or decrementCurrentIndex().
New APIs
APIs for application development
New Classes
- B
- BinaryResource (Qul)
- L
- ListProperty (Qul)
New Member Functions
Class BinaryResource:
New QML Types
New QML Properties
QML Type ListView:
count : int | |
currentIndex : int | |
highlight : Component |
QML Type Item:
activeFocus : Item |
New QML Methods
QML Type Qt:
QML Type ListView:
int | indexAt(real x, real y) |
positionViewAtIndex(int index, PositionMode mode) |
APIs for platform development
New Global Functions
Changes in Previous Versions
Changes in v1.1.0 | |
Changes in v1.2.0 | |
Changes in v1.3.0 | |
Changes in v1.4.0 | |
Changes in v1.5.0 | |
Changes in v1.6.0 | |
Changes in v1.7.0 | |
Changes in v1.8.0 | |
Changes in v1.9.0 | |
Changes in v2.0.0 | |
Changes in v2.1 | |
Changes in v2.2 | |
Changes in v2.3 | |
Changes in v2.4.0 | |
Changes in v2.5 | |
Changes in v2.6.0 | |
Changes in v2.7.0 | |
Changes in v2.8.0 |
Available under certain Qt licenses.
Find out more.