Qt Status on QNX: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
=Qt Status on <span class="caps">QNX</span> Neutrino OS=


Covering Qt5 only and so not mentioning “5”, just “Qt”.
==Supported Modules==
The following modules are currently known to work on the <span class="caps">QNX</span> Neutrino OS platform and are used for regular builds and unit testing. Please note that this list is under constant change (for now).
{| class="infotable line"
|- style="background: #00BB00"
! Qt essential modules
! state
| notes
|-
| Qt Core
| supported
|
|-
| Qt Declarative
| not supported
|
|-
| Qt <span class="caps">GUI</span>
| supported
|
|-
| Qt Multimedia
| supported
| not supported on x86, a few known issues
|-
| Qt Multimedia Widgets
| supported
| not supported on x86, a few known issues; no platformstyle
|-
| Qt Network
| supported
|
|-
| Qt <span class="caps">QML</span>
| supported
|
|-
| Qt Quick
| supported
|
|-
| Qt Quick Controls
| supported
| No platform style
|-
| Qt Quick Dialogs
| supported
| Some native styles only
|-
| Qt Quick Layouts
| supported
|
|-
| Qt <span class="caps">SQL</span>
| supported
|
|-
| Qt Test
| supported
|
|-
| Qt WebKit <span class="caps">QML</span>
| not supported
| Depends on Qt Declarative
|-
| Qt WebKit Widgets
| not supported
| Compiles and runs, but is not officially supported in 5.4
|-
| Qt Widgets
| supported
| No platform style
|}
{| class="infotable line"
|- style="background: #00BB00"
! Qt add ons
! state
| notes
|-
| Active Qt
| not applicable
|
|-
| Enginio
| not supported
|
|-
| Qt Android Extras
| not applicable
|
|-
| Qt Bluetooth
| not supported
| no OS backed defined yet
|-
| Qt Concurrent
| supported
|
|-
| Qt D-Bus
| not applicable
|
|-
| Qt Graphical Effects
| supported
|
|-
| Qt Image Formats
| supported
|
|-
| Qt Mac Extras
| not applicable
|
|-
| Qt <span class="caps">NFC</span>
| not supported
| no OS backed defined yet
|-
| Qt OpenGL
|
| Only OpenGL ES 2
|-
| Qt Positioning
| not supported
| no OS backed defined yet
|-
| Qt Print Support
| supported
| only printing to pdf
|-
| Qt Quick1
| not supported
| might work
|-
| Qt Script
| supported
|
|-
| Qt Tools
| supported
|
|-
| Qt Sensors
| not supported
| no OS backed defined yet
|-
| Qt Serial Port
| not supported
| a backend is available; a candidate for a future release
|-
| Qt <span class="caps">SVG</span>
| supported
|
|-
| Qt WebSockets
| not supported
|
|-
| Qt Windows Extras
| not applicable
|
|-
| Qt X11 Extras
| not applicable
|
|-
| Qt <span class="caps">XML</span>
| supported
|
|-
| Qt <span class="caps">XML</span> Patterns
| partly supported
| XPath functionality supported, <span class="caps">XML</span> schema validation not supported
|}
“supported” modules are provided in the binary Qt installers for <span class="caps">QNX</span>.
==Key development works and fixes related to the Qt on the <span class="caps">QNX</span> platforms==
===Tentative plan for Qt 5.4===
* A more broad support of Bluetooth (all platforms)
* An experimental support for DBus
* Improvements in QtMultimedia
* Extensions and integration with new <span class="caps">QNX</span> platform releases
===In Qt 5.3.0===
====<span class="caps">QPA</span> for <span class="caps">QNX</span>====
* Improved focus handling
** Properly honor “libscreen” keyboard focus
** Platform windows can now be activated (receive keyboard focus) by the application
** Fixed bugs related to libscreen focus handling
* Fixed timing issues when creating <span class="caps">EGL</span> surfaces
* Refactoring (screen error handling, remove dead code, etc.)
* Populate touch event properties
* Fixed resizing windows (buffers are destroyed and re-created)
* Creation of parent-less windows
* Fixed window re-parenting, positioning and opacity
====QtBase====
* Added support for the <span class="caps">SPDY</span> protocol (version 3.0) (all platforms)
* Added support for the Next Protocol Negotiation (<span class="caps">NPN</span>) <span class="caps">TLS</span> extension (all platforms)
* Fixed ComboBoxes and Popup dialogs (<span class="caps">QNX</span> and BlackBerry 10)
* Fix application font removal when using Fontconfig (all platforms)
* Fixed evaluation of font width for selected FreeType fonts (all platforms)
* Fixed dlclose “Shared objects still referenced” error (<span class="caps">QNX</span> and BlackBerry 10)
====QtMultimedia====
* Performance improvements for video playback (<span class="caps">QNX</span> and BlackBerry 10)
* Fix re-play of media. mm-renderer buffer status is now roperly evaluated. (<span class="caps">QNX</span> and BlackBerry 10)
====QtDeclarative====
* Fix stack order and focus when using <span class="caps">QML</span> Window <span class="caps">API</span> (all platforms)
====QtLocation====
* Switch tile server for <span class="caps">OSM</span> by MapQuest (all platforms)
* Prepare the <span class="caps">QML</span> Mapping <span class="caps">API</span> for the <span class="caps">API</span> freeze (all platforms)
==Known issues==
===Qt 5.3.0===
====Fixed in Qt 5.3.1====
* QQuickItem size will not follow window size [https://codereview.qt.io/84008]
* Qt Quick Controls FileDialog crashes [https://codereview.qt.io/83408] and which perceived by the user as not appearing on the screen.
* QDir might report directories twice [https://codereview.qt.io/83529] on some folders
* QFileSystemWatcher::addPath doesn’t handle adding a path more than once correctly [https://codereview.qt.io/83215]
* Instead of slog2info, Qt debugging and logging output can be forced to go to stderr if the QT_LOGGING_TO_CONSOLE environment variable has been set [https://codereview.qt.io/82914]
====Other issues and aspects affecting the use of Qt on <span class="caps">QNX</span>====
* Qt Quick animations are running slower than expected if the actual frame rate is less than 60fps on a give target. If an application can not maintain a constant frame rate of 60fps the <span class="caps">QSG</span>_FIXED_ANIMATION_STEP environment variable should be set to “no” to improve the animation speed.
* Fontconfig is not available in the <span class="caps">QNX</span> <span class="caps">SDP</span> 6.6 release. Qt compiled for <span class="caps">QNX</span> <span class="caps">SDP</span> 6.6 falls back to the internal font database. You need to set QT_QPA_FONTDIR pointing to the location of Qt fonts on target (typically in the ./lib/fonts)
* <span class="caps">QNX</span> <span class="caps">SDK</span> for Apps and Media 1.0 does not provide Fontconfig for the x86 target. Qt compiled for this target falls back to the internal font database. See the previous point for a workaround. A patch from <span class="caps">QNX</span> is in the work to resolve this issue and will be published on http://qnx.com
* Even though cmake files for Qt are provided in a Qt build for <span class="caps">QNX</span> Neutrino OS by default, their use is not supported, since <span class="caps">QNX</span> <span class="caps">SDP</span> 6.6 does not supply a toolchain file for cmake. It is still possible to provide a custom toolchain file and use cmake with Qt on <span class="caps">QNX</span>. * On-screen virtual keyboard is not provided by <span class="caps">QNX</span> <span class="caps">SDP</span> 6.6, nor by the <span class="caps">QNX</span> <span class="caps">SDK</span> for Apps and Media 1.0. An external hardware keyboard should be used or an own virtual keyboard implementation has to be configured.
* Qt widgets and Qt Quick controls use the default style when started on a <span class="caps">QNX</span> target. This style is a very basic implementation with a very limited visual appearance. A complete style should be implemented to follow all look-n-feel requirements of a specific project.
* QClipboard is currently not supported
* QCursor is currently not not fully supported due to limitations in the <span class="caps">QNX</span> Screen Graphics Subsystem
===Qt 5.2.x and earlier===
See the [[Qt5 Status on BlackBerry10|list of know issues for BlackBerry 10]] for now. Most of them are applicable. More details will be provided by time of the Qt 5.3.0 final release.
==Where and how report issues==
Please use the the [https://bugreports.qt.io/browse/QTBUG/component/20920 QtPorts: <span class="caps">QNX</span>] ''[bugreports.qt.io]'' component for <span class="caps">QNX</span> specific issues and other components for Qt generic issues even if you found them on <span class="caps">QNX</span> Neutrino OS.
==Access the status of the Qt CI system for <span class="caps">QNX</span> Neutrino OS==
BlackBerry and <span class="caps">QNX</span> run a Jenkins based CI system which conducts build and on-device unit tests: http://qtlab.blackberry.com/
===Categories:===
* [[:Category:QNX|QNX]]

Revision as of 07:17, 24 February 2015