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.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 Properties

QML Type Qt:

AlignmentFlag : enumeration

APIs for platform development

Changes in Previous Versions

What's New in 1.1

Changes in v1.1.0

What's New in 1.2

Changes in v1.2.0

What's New in 1.3

Changes in v1.3.0

What's New in 1.4

Changes in v1.4.0

What's New in 1.5

Changes in v1.5.0

What's New in 1.6

Changes in v1.6.0

What's New in 1.7

Changes in v1.7.0

What's New in 1.8

Changes in v1.8.0

What's New in 1.9

Changes in v1.9.0

What's New in 2.0

Changes in v2.0.0

What's New in 2.1

Changes in v2.1

What's New in 2.2

Changes in v2.2

What's New in 2.3

Changes in v2.3

What's New in 2.4

Changes in v2.4.0

What's New in 2.5

Changes in v2.5

What's New in 2.6

Changes in v2.6.0

What's New in 2.7

Changes in v2.7.0

Available under certain Qt licenses.
Find out more.