On this page

C

What's New in 2.8

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:

Important changes

Removed options from platformexporter

The following command-line options are removed from the from the platform exporter tool and similar options are added to the qmlprojectexporter instead:

platformexporterqmlprojectexporter
buildirqul-build-dir
outputformat--project-type
sdkdir--board-sdk
IDEsourcedir--ide-sources-outdir
includeIDEgeneratedHWCodeinclude-ide-generated-hw-code
outdir--platform-outdir

For more information about exporting a platform using the qmlprojectexporter, see Exporting a Qt for MCUs project with platform sources.

New features

  • Reduce memory footprint of generated code by using static const arrays and loops to set constant property values.
  • Optimize image assets by rotating them before based on the display rotation angle, avoiding the overhead of rotating them at runtime.
  • Added support for acquiring licenses from the license servers.
  • Upgrades:
    • STM32F469-Discovery SDK v1.28.0.
    • MIMXRT1050-EVK, MIMXRT1060-EVK, MIMXRT1064-EVK, and MIMXRT1170-EVKB SDK v2.15.000.
    • ARMGCC compiler 12.3.rel1.
    • Embedded Template Library (ETL) v20.38.10.
    • Renesas RA6 and RA8 FSP to 5.2.0.
    • FreeRTOS v10.6.1 on Renesas EK-RA6M3G.
    • TRAVEO T2G Cluster Series to graphics driver V2.3.0.
    • FreeType version 2.13.2.
    • Monotype Fontmap editor version 3.1.1.
  • Added Monotype FontmapEditor support to reduce the font file size by removing the unused glyphs.
  • Added the QtQuick.Layouts module with GridLayout QML type.
  • qmlprojectexporter:
    • Added --parallel and -j command-line options to parallel process the QML files.
    • Added CMSIS pack generator to enable generating a package of the platform sources.
    • Extended support for CMake projects to include the complete application either with or without the platform sources.
  • Added support for hardware accelerated JPEG decoding for Traveo T2G (6M).
  • Added support for Traveo T2G 4M Lite.
  • Added bitwise operator support to qmltocpp, enabling the use of bitwise OR (|) operator in QML.
  • Added virtual keyboard support with the QtQuick.VirtualKeyboard module (Technology Preview).

Fixed issues

Qt for MCUs v2.8.2

  • Fixed the qulrcc host tool to render sprite animations correctly when display rotation is set.
  • Fixed the devicelink protocol support to make sure it properly handles display rotation for screenshots and touch input.
  • Fixed crashes and invalid rendering when screen rotation is used and root item size is smaller than the screen size.
  • Fixed the incorrect rendering of Rectangle with gradient when display rotation is used.
  • Fixed a potential crash or memory corruption when touch was held by an Item that got destroyed.
  • Fixed a crash that happened when the fallback drawing engine was used for path blending on a DrawingDevice with format PixelFormat_ARGB32 or PixelFormat_ARGB4444.
  • Fixed a potential crash that could happen when using multi-line StaticText with horizontal alignment and display rotation.
  • Fixed AnimatedSpriteDirectory to show correctly when display rotation is used.
  • Fixed a crash that happened when Image with a dynamic source property was unloaded.
  • Fixed auto-wrapped text to honor Text.horizontalAlignment.
  • Fixed ARM NEON code in drawhelper.h.
  • Improved performance by preventing duplicate text metrics computation when a Text element has elide or word wrap set.
  • Fixed the Infineon TRAVEO T2G CYT3DL platform to report an error instead of crashing when trying to allocate from an uninitialized HyperRAM.
  • Fixed a crash in the RH850 platform that happened when using Shapes or ArcItem APIs in an ItemLayer with depth set to Bpp32Alpha.
  • Fixed the directory property in files nodes to take file selectors into account when exporting a qmlproject file.
  • Fixed the Layouts module export for qmlprojectexporter.
  • Fixed qmltocpp to prevent rebuilding of all QML files when only a single one changes, by not overwriting existing source files when their contents haven't changed.
  • Fixes to examples and demos:
    • Fixed the missing error code return value from tvii_convert_decoded_buffers for Infineon TRAVEO T2G in the imagedecoder example.
    • Fixed the thermo-benchmark demo by adding a missing compile definition.
  • Loader fixes:
    • Fixed a compiler error with Green Hills 2015.1.7 that happened when Component was used with Loader from QML.
    • Fixed a crash that happened when a Loader with a dynamic source or source component property got destroyed.
  • SwipeView fixes:
    • Fixed SwipeView animations to always finish at target index when manually setting currentIndex, or using SwipeView.incrementCurrentIndex() or SwipeView.decrementCurrentIndex().
    • Fixed SwipeView setCurrentIndex() to work correctly with MouseArea.
  • Text cache fixes:
    • Fixed single-glyph Text items to be cached correctly when the text cache is enabled using the Monotype Spark font engine.
    • Improved performance by freeing old text cache entries to make space for new ones to fully utilize the text cache.

Qt for MCUs v2.8.1

  • Fixed screen flickering artifacts on the STM32F769I-DISCOVERY and STM32H750B-DISCOVERY boards caused by LTDC underruns if the FMC controller is blocked.
  • Fixed qulrcc to estimate correct resource cache size for sprite animations.
  • Fixed error using certain TrueType fonts with the Spark font engine.
  • Fixed potential compile error about incomplete type when sub-classing PaintedItemDelegate.
  • 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 the platform port for Infineon TRAVEO™ T2G, to avoid delaying layer animation if refresh intervals is too high.
  • Fixed animation logic to avoid restarting running animations on calling start().
  • qmltocpp fixes:
    • Use the same convention as lupdate to extract the context name for translatable units in the *.ui.qml files.
    • Generate correct C++ code for ScriptAction instances within the scope of a Loader or lRepeater.
    • Remove unnecessary call to update() while generating code for StaticText instances.
  • qmlprojectexporter fixes:
    • Add --parallel and -j command-line options to parallel process the QML files. You can also define the no. of parallel jobs using the CMAKE_BUILD_PARALLEL_LEVEL environment variable.
    • Fix crash due to resourceCompression enabled in a module qmlproject file and not in the main qmlproject file.

Qt for MCUs v2.8.0

  • Fixes to the fontcompiler:
    • Generate quality glyph alphamaps on both Linux and Windows hosts.
    • Reduce QulFontResourceData size slightly.
  • Fixes to qmltocpp:
    • Fix crash on accessing object aliases from other QML files.
    • Improve anchor binding inside the inline component when it is used as a sourceComponent for Loader.
    • Check if a custom property of type Component is used as a binding for Loader::{souceComponent} to avoid a crash.
    • Make parent property available to the inline component declaration object to avoid a crash.
    • Qualify type with its module name when using it outside its module.
    • Avoid using uninitialized values when generating anchors.
  • Fixed error loading the QtQuick.Controls module with generateQmltypes enabled. If qmlprojectexporter can't find such modules, use the --qml-mappings-dir argument to provide more information.
  • Fixed compilation errors in the interface files when using C++ features from the chosen C++ standard for the project. For example, if CMAKE_CXX_STANDARD is set to 17, it should also be forwarded to qmlprojectexporter.
  • Reduced the stack memory usage for blending the transformed images. The intermediate buffers are now allocated on the heap when needed.
  • Fixed layer positioning when display rotation angle is set to 90 or 270.
  • Wait for interrupts instead of busy looping exec() to sync with the GPU.
  • qmlprojectexporter fixes:
    • Fixed the order of include paths passed to qmltocpp.
    • Include the Shapes, Timeline, StudioComponents module in the default search path.
  • Fixed off by one error when allocating block size for images.
  • Fixed transformation support to not ignore ItemBuffers.
  • Fixes to examples and demos:
    • Fixed the watch demo (debug build) crash on STM32F769NI when built using the IAR toolchain.
    • Fixed linking errors when building the image_cache example for Renesas RH850 on AUTOSAR.
  • Fixed image decoder to avoid a crash on STM when images are smaller than the input buffer.
  • Fixed stack overflow with a debug build using the IAR toolchain.

New APIs

APIs for application development

New QML Types

New QML Enumeration Types

(since Qt Quick Ultralite 2.8) AlignmentFlag

APIs for platform development

Changes in Previous Versions

Available under certain Qt licenses.
Find out more.